

コンパイルが通りません。別のパソコンでは通ったのですが、同じ設定で動かすとコンパイルが通らなくなりました。エラーを読みましたが、よくわからず質問した次第です。  
環境

OS：ubuntu18.04  
IDE:VScode  
動作確認している環境も同じものです。

当方、spresense初心者でして、理解及ばぬところあるかと思いますが、ご指導いただけると幸いです。

[code]

    LD: nuttx 
    arm-none-eabi-ld: /home/hogehoge/spresense/nuttx/staging/libapps.a(symtab_apps.o):(.rodata.g_exports+0x2cc): undefined reference to `system' 
    Makefile:155: recipe for target 'nuttx' failed 
    make[2]: *** [nuttx] Error 1 
    make[2]: ディレクトリ '/home/hogehoge/spresense/nuttx/arch/arm/src' から出ます 
    tools/Makefile.unix:420: recipe for target 'nuttx' 
    failed make[1]: *** [nuttx] Error 2 
    make[1]: ディレクトリ '/home/hogehoge/spresense/nuttx' から出ます
    Makefile:113: recipe for target 'all' failed 
    make: *** [all] Error 2 
    
[/code]


CC BY-SA 4.0
2022-11-26T06:43:04.490
92442
2022-11-30T00:25:23.150
2022-11-26T07:51:11.683
55585
55585
question
c++ spresense
コンパイルエラーの内容及び解決方法について。


リンクエラーの内容から推察するに、`System
Command`を有効にしていない状態で`system()`関数を使用したローダブルELFアプリケーションをビルドしているのではないかと思います。

`menuconfig`で以下の`System Commmand (CONFIG_SYSTEM_SYSTEM)`を有効にしてからビルドしてみてください。

[code]

    -> Application Configuration
     -> System Libraries and NSH Add-Ons
      [*] System Command
    
[/code]

予想を外してたらすみません。


CC BY-SA 4.0
2022-11-28T02:57:35.760
92468
2022-11-28T02:57:35.760
31378
92442
answer


利用コードはzip解凍のものでなく、gitで落としたものですか？  
コマンドでgit submoduleで表示される情報は、両方同じになっていますかね？

もし異なっていればエラー出ている側のnuttxのコードが更新されていない可能性もあります。  
その場合は、spresense.gitを落としたフォルダ以下で、以下のコマンドを打って、submoduleコードを更新してみてください。

[code]

    $git submodule update --init 
    
[/code]


CC BY-SA 4.0
2022-11-30T00:25:23.150
92504
2022-11-30T00:25:23.150
49022
92442
answer