如何使用Eclipse CDT在当前项目中使用外部.h和.o文件

时间:2013-04-15 15:53:24

标签: c++ eclipse linker

我有三个文件来测试我的项目:Test1.cpp SignalMasker.hSignalMasker.oTest1.cpp包含SignalMasker.h文件和我项目中的文件时。将两者放在源文件夹中将返回未定义的引用,例如:

error: undefined reference to 'SignalMasker::~SignalMasker()'

我尝试使用项目首选项并将.o文件添加到其中。在GCC C++ Linker-> Miscellaneous -> other objects下。选择文件时,它将新记录插入:

"${workspace_loc:/${ProjName}/source/SignalMasker.o}"

构建它似乎无法解决问题,因此我添加到Linker flags -l标记并获得:

Invoking: GCC C++ Linker
g++ -l -o "uthreads"  ./source/Scheduler.o ./source/SchedulerStarter.o ./source/Test1.o ./source/Thread.o ./source/main.o ./source/uthreads.o  /home/tom/workspace/uthreads/source/SignalMasker.o 
g++: error: uthreads: No such file or directory
make: *** [uthreads] Error 1

所以我回到other objects并将自动生成的变量替换为:

./source/SignalMasker.o

建筑给了我:

make: *** No rule to make target `source/SignalMasker.o', needed by `uthreads'.  Stop.

这些都是我在SO中找到的所有解决方案,似乎没有任何工作,包括创建一个库并尝试包含它。请帮忙。

编辑uthreads也是项目的名称。

0 个答案:

没有答案