如何让eclipse在C ++ Existing Makefile项目中确认我的包含文件?

时间:2011-12-12 21:05:20

标签: eclipse eclipse-cdt

简单的问题:我有一个为现有的makefile配置的C ++项目,它编译得很好。但是,IDE一直在抱怨它无法解析我的大多数符号。

如何配置eclipse以使用我的包含?

3 个答案:

答案 0 :(得分:9)

项目 - >属性 - > C / C ++一般 - >路径和符号

添加包含目录的路径。

您可以在屏幕截图中看到我用C ++中的Qt开发的配置。

Screenshot representing Eclipse configuration for Qt Headers

答案 1 :(得分:3)

我在路径和符号中添加了我的包含,但在qt编译期间不添加它们。 对于编译,qt使用这些包含并忽略我添加的内容:

g++ -c -pipe -g -Wall -W -D_REENTRANT -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -Idebug -I. -o debug/bp.o bp.cpp
g++ -c -pipe -g -Wall -W -D_REENTRANT -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -Idebug -I. -o debug/Navigation.o Navigation.cpp
Navigation.cpp:16:22: error: XnOpenNI.h: No such file or directory
Navigation.cpp:17:26: error: XnCppWrapper.h: No such file or directory
Navigation.cpp:18:20: error: XnHash.h: No such file or directory
Navigation.cpp:19:19: error: XnLog.h: No such file or directory
Navigation.cpp:22:16: error: cv.h: No such file or directory
Navigation.cpp:23:18: error: cv.hpp: No such file or directory

我在这里找到答案: QT Eclipse Integration - Adding External Libs

这似乎是CDT和Qt构建器之间的一种冲突,所以即使你在CDT中添加选项,如上面的截图所示,编译器也找不到它们!

您需要将它们添加到xxx.pro文件中,如下所示: http://doc.qt.digia.com/4.5/qmake-variable-reference.html#includepath

答案 2 :(得分:0)

当我使用以下命令导入现有的Makefile项目时遇到了同样的问题:

档案 - >新 - >带有现有代码的Makefile项目

如果您不想配置任何内容,只是希望eclipse能够识别现有(工作)Makefile中的所有路径,只需执行以下操作:

  • 右键点击您的项目 - >清洁项目
  • 右键点击您的项目 - >建设项目
然后,Eclipse Indexer会识别它上面的所有路径,而无需任何其他配置。您只需要Eclipse来执行导入的Makefile并解决所有问题(如果Makefile在Eclipse之外正常工作)。

测试:

Eclipse IDE for C/C++ Developers
Version: Luna Service Release 2 (4.4.2)
Build id: 20150219-0600