最近几天,我一直试图用STM32F4xx Ubuntu14.04LTS、Eclipse插件编译一个项目。现在它说nano.specs不见了。这是我的构建日志:
14:39:35 **** Incremental Build of configuration Release for project F4Test ****
make all
Building target: F4Test.elf
Invoking: Cross ARM C++ Linker
arm-none-eabi-g++ -mcpu=cortex-m4 -mthumb -mfloat-abi=soft -Os -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -Wall -Wextra -g -T mem.ld -T libs.ld -T sections.ld -nostartfiles -Xlinker --gc-sections -L"../ldscripts" -Wl,-Map,"F4Test.map" --specs=nano.specs -o "F4Test.elf" ./system/src/stm32f4-hal/stm32f4xx_hal.o ./system/src/stm32f4-hal/stm32f4xx_hal_cortex.o ./system/src/stm32f4-hal/stm32f4xx_hal_flash.o ./system/src/stm32f4-hal/stm32f4xx_hal_flash_ex.o ./system/src/stm32f4-hal/stm32f4xx_hal_flash_ramfunc.o ./system/src/stm32f4-hal/stm32f4xx_hal_gpio.o ./system/src/stm32f4-hal/stm32f4xx_hal_iwdg.o ./system/src/stm32f4-hal/stm32f4xx_hal_pcd_ex.o ./system/src/stm32f4-hal/stm32f4xx_hal_pwr.o ./system/src/stm32f4-hal/stm32f4xx_hal_pwr_ex.o ./system/src/stm32f4-hal/stm32f4xx_hal_rcc.o ./system/src/stm32f4-hal/stm32f4xx_hal_rcc_ex.o ./system/src/newlib/_cxx.o ./system/src/newlib/_exit.o ./system/src/newlib/_sbrk.o ./system/src/newlib/_startup.o ./system/src/newlib/_syscalls.o ./system/src/newlib/_write.o ./system/src/newlib/assert.o ./system/src/diag/Trace.o ./system/src/diag/trace_impl.o ./system/src/cortexm/_initialize_hardware.o ./system/src/cortexm/_reset_hardware.o ./system/src/cortexm/exception_handlers.o ./system/src/cmsis/system_stm32f4xx.o ./system/src/cmsis/vectors_stm32f4xx.o ./src/BlinkLed.o ./src/Timer.o ./src/_initialize_hardware.o ./src/main.o
arm-none-eabi-g++: error: nano.specs: No such file or directory
make: *** [F4Test.elf] Error 1
14:39:35 Build Finished (took 65ms)我在电脑上找到了一些nano.specs文件。我该怎么办?只需移除链接器标志(我实际上不能这样做,因为我不知道如何在Eclipse中这样做)或其他什么东西?谢谢你的帮忙!
发布于 2014-11-15 12:46:02
我解决了问题。我只是使用Ubuntu提供的arm-none-eabi-xxx包,而不是原始的包--这就是问题所在。您只需从工具链网站下载软件包并安装它们即可。他们工作得很好!
发布于 2016-06-20 07:45:20
可选步骤
如果您已经从Ubuntu的存储库中安装了捆绑工具链--将它们清除掉:
$ sudo apt-get remove gcc-arm-none-eabi推荐安装方法
插件的页面描述了这一点:
http://gnuarmeclipse.github.io/toolchain/install/
->,详细描述了您的特定版本所需的包(本例中为14.04LTS,x64 )。
首先,安装32位依赖库:
$ sudo apt-get -y install lib32z1 lib32ncurses5 lib32bz2-1.0(15.04 -及以后?-只需要lib32ncurses5,而老Ubuntus - 12.04 e.a.-拥有ia32-libs)
然后从这里下载一个预编译的工具链包:
https://launchpad.net/gcc-arm-embedded/+download
(在撰写本报告时,他们推荐gcc 4.9,但最好采用最新版本gcc 5.3 )。
推荐安装位置
最后,将包解压缩到/usr/local中--这样Eclipse就可以找到它,而无需在Eclipse中配置工具链或修改$PATH变量。
$ cd /usr/local
$ sudo tar xf ~/Downloads/gcc-arm-none-eabi-*-linux.tar.bz2发布于 2016-07-06 17:25:05
如果您正在为ARM Cortex-M或Cortex-R编译,请尝试使用apt-get而不是gcc-arm-none-eabi安装软件包gcc-arm-none-eabi。这对我有用,建议来自Arm的"Yotta“构建工具:http://yottadocs.mbed.com/#linux-cross-compile的文档。
https://stackoverflow.com/questions/26931979
复制相似问题