

`myapp`プロジェクトを[ここ](https://developer.sony.com/ja/develop/spresense/developer-
tools/get-started-using-nuttx/nuttx-developer-
guide#_spresense_sdk%E3%83%87%E3%82%A3%E3%83%AC%E3%82%AF%E3%83%88%E3%83%AA%E4%BB%A5%E5%A4%96%E3%81%AE%E5%A0%B4%E6%89%80%E3%81%B8%E3%81%AE%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%AE%E7%99%BB%E9%8C%B2)を参考に追加して`nuttx`をビルドしました。最後のリンク時に以下のようなエラーが出ます。  
どうもRAMサイズオーバーと言っているようですが、わたしはてっきりFlash8MBにfirmwareは書き込まれると思っていました。回避方法はありますか？

Spresense-nuttx: v1.5.0  
Spresense SDK: v1.5.0  
Host OS: WSL1.0 on Windows10  
Toolchain: arm-none-eabi-gcc (GNU Tools for Arm Embedded Processors
7-2018-q2-update) 7.3.1 20180622 (release) [ARM/embedded-7-branch revision
261907]

エラー個所のみ抜粋:

[code]

    echo "LD: nuttx"
    LD: nuttx
    arm-none-eabi-ld --entry=__start -nostartfiles -nodefaultlibs -g -Map=/home/norio/ws/firmware/spresense/sdk/nuttx.map --cref --defsym __stack=_vectors+1572864 -T/home/norio/ws/firmware/spresense/sdk/bsp/scripts/ramconfig.ld -L"/home/norio/ws/firmware/spresense/sdk/lib" -L"/home/norio/ws/firmware/spresense/sdk/bsp/board"  \
            -o "/home/norio/ws/firmware/spresense/sdk/nuttx"   \
            --start-group -lbsp -lsystem -lextdrivers -lexamples -lmyapps -lsched -ldrivers -lconfigs -lc -lmm -larch -lcxx -lapps -lnet -lfs -lbinfmt -lgraphics -lnx -lcxx -lboard "/usr/local/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv4-sp/hard/libm.a"  "/usr/local/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv4-sp/hard/libgcc.a" --end-group
    arm-none-eabi-ld: /home/norio/ws/firmware/spresense/sdk/nuttx section `.bss' will not fit in region `ram'
    arm-none-eabi-ld: region `ram' overflowed by 31052 bytes
    Makefile:188: recipe for target 'nuttx' failed
    make[1]: *** [nuttx] Error 1
    make[1]: Leaving directory '/home/norio/ws/firmware/spresense/sdk/bsp'
    Makefile:182: recipe for target 'nuttx' failed
    make: *** [nuttx] Error 2
    
[/code]


CC BY-SA 4.0
2020-06-02T12:12:24.033
67231
2020-06-02T15:04:05.353
40448
question
spresense
Spresense SDK: nuttxリンク時に section `.bss' will not fit in region `ram'エラーで失敗する


google翻訳  
セクション `.bss 'は領域` ram'に適合しません

bssというセクションは初期化しない変数が配置されるセクションです  
おそらく、これらの変数エリアが肥大化して、RAMのエリアを超えてしまったんでしょう。  
これらのサイズを縮小するか、セクションの配置／割当を変えて、超えないようにする必要があります。

Flashメモリは、特別の手順でしか書き換えることができないメモリです。  
変数はこのエリアには配置できません。


CC BY-SA 4.0
2020-06-02T15:04:05.353
67237
2020-06-02T15:04:05.353
27481
67231
answer