C++eclipse链接器错误



所以我正在努力让我的eclipse IDE继续运行,这样我就可以在eclipse中开发我的arduino uno了。我的C++很弱,所以这可能是我的一个核心错误。

我有一个blink程序,它查找我从arduino IDE的库编译的arduino库。我的代码指向头文件,我的代码发现它很好;意味着我可以点击:

#include <arduino.h>

并查看标题

this:"C:\programs/arduino-1.0/hardware/arduino/cores/328p_lib/libuno_library.a"是有效路径。。。但我得到以下错误:

>****** Build of configuration Debug for project project1 ****
>make all 
>Building target: project1.elf
>Invoking: AVR C++ Linker
>avr-g++ -Wl,-Map,project1.map,--cref -L"C:programsarduino->1.0hardwarearduinocores328p_lib" -mmcu=atmega328p -o "project1.elf"  ./code/code1.o   >-l"C:/programs/arduino-1.0/hardware/arduino/cores/328p_lib/libuno_library.a"
>c:/programs/winavr/bin/../lib/gcc/avr/4.3.3/../../../../avr/bin/ld.exe: cannot find ->lC:/programs/arduino-1.0/hardware/arduino/cores/328p_lib/libuno_library.a
>make: *** [project1.elf] Error 1
>**** Build Finished ******

在浪费了大约两天的有趣时间之后,我终于发现了问题。

http://sourceforge.net/projects/avr-eclipse/forums/forum/664382/topic/4640554

将静态库添加到链接器时,必须删除lib前缀和.a后缀。不知道那是怎么回事。

右键单击项目>单击C/C++BUild>Settings>GCC C++Linker>Libraries

单击第一个图标添加>添加库名称(没有.a后缀,后缀将自动添加)

这将确保将库添加到项目中。

如果库是另一个项目的一部分>转到GCC C编译器>目录>添加目录

这将确保库在那里完成编译。

最新更新