Keil uVision (Keil ARM Compiler を使用) から CooCox CoIDE (GCC ARM Embedded コンパイラを使用) に STM32 マイクロコントローラー プロジェクトを移植しました。
問題は、GCC を使用して CoIDE でコンパイルすると、コード サイズが Keil uVision の 2 倍になることです。
どうすればいいの?私に何ができる?
Keil のコード サイズ: 54632b (.text) CoIDE のコード サイズ: 100844b (.text)
GCC コンパイラ フラグ:
arm-none-eabi-gcc -mcpu=cortex-m3 -mthumb -g2 -Wl,-Map=project.map -Os
-Wl,--gc-sections -Wl,-TC:\arm-gcc-link.ld -g -o project.elf -L -lm
私は CoIDE と GCC がプロジェクトに存在する多くの関数とファイルをコンパイルするのではないかと疑っていますが、(まだ) 使用されていません。そこにある20個の関数のうち1個しか使用しない場合でも、ファイル全体をコンパイルすることは可能ですか? (私は-Oを持っていますが)..