linux + eclipse + cdt 报错undefined reference......好麻烦的,这位大牛给出的方法可行,特此MARK!!!!
时间:2014-05-08 21:57:50
收藏:0
阅读:432
http://bbs.csdn.net/topics/390239632
|
楼主
发表于: 2012-10-11 12:00:51
我现在的做法就只能是ctrl+c|ctrl+v 一旦工具函数发生变化,还需要在用到这些函数的工程中更新,比较麻烦。 看到eclipse工程属性设置中有Project References,但是一直不会用。 那位好心人能说说怎样实现我的需求。 |
|
#1得分:0
回复于: 2012-10-11 18:28:24
仔细弄了一下过程如下: 1.右键需要引入tools工程的工程→Project References→勾选tools工程。 2.C/C++ General→Paths and Symbols→Include→加入需要引入文件的路径。 3.在工程中使用tools的源文件中加入include语句#include <tools.h> 4.编译工程时提示undefined reference to `stringLower(std::string const&)‘ (stringLower是tools中定义的一个函数) 5.试着加入#include <tools.cpp>,编译通过。 6.删除#include <tools.h>,仍然编译通过。 总感觉是eclipse cdt的bug,按道理#include <tools.h>以后就应该可以了,还要加#include <tools.cpp>这么奇怪的语句。 |
|
#2得分:0
回复于: 2012-10-12 11:18:35
我对eclipse的使用还不熟悉,昨天又捣鼓了一下,暂时就先这样吧。 操作过程如下: 1.打开tools工程。 2.右键需要引入tools工程的工程→Project References→勾选tools工程。 3.C/C++ General→Paths and Symbols→Include→加入需要引入文件的路径。 4.在工程中使用tools的源文件中加入include语句#include <tools.h> 5.ctrl+鼠标左键单击tools工程中的tools.h和tools.cpp,然后按住ctrl把其拖放至调用tools的工程中。 此时系统会显示文件操作对话框,选择Link to file在工厂中放一个文件的连接。 6.编写使用tools的代码,此时可以正常编译成功。 如果需要对tools中的函数进行修改,那么不管操作本工程中的文件连接,还是操作tools工程中的源文件,都是同样的效果,这样就不会导致文件不同步的问题。 |
|
3 |
#3得分:40
回复于: 2012-10-14 13:18:26
|
linux + eclipse + cdt 报错undefined reference......好麻烦的,这位大牛给出的方法可行,特此MARK!!!!,布布扣,bubuko.com
评论(0)