为C ++添加Boost到Eclipse - 包括路径问题

时间:2011-04-14 15:53:56

标签: c++ eclipse include-path

我对Windows开发,GNU和C ++很有经验,但我是Eclipse的新手。我正在尝试将Boost添加到我的Eclipse项目中,该项目使用GNU工具链在Windows上构建(但对于嵌入式处理器)。

我在这里添加了Boost:C:\ altera \ 10.1 \ quartus \ bin \ cygwin \ usr \ include \ boost_1_46_1

我已将该目录添加到我的Eclipse包含路径(项目属性| C / C ++一般|路径和符号|包含| GNU C ++),其中我看到C:\ altera \ 10.1 \ quartus \ bin \ cygwin \ usr \ include显示为内置目录。

我可以在Eclipse Project Explorer下浏览这些目录和文件,并从Outline中打开它们。然而,当我把它们包括在内时,它不起作用。

我的代码包含:

#include <boost/property_tree/ptree.hpp>
#include <boost/property_tree/xml_parser.hpp>

Eclipse生成的构建字符串如下所示(注意缺少上面提到的两个目录):

nios2-elf-gcc -xc++ -MP -MMD -c -I../NiosIITestSpin_bsp/UCOSII/inc -I../NiosIITestSpin_bsp/HAL/inc -I../NiosIITestSpin_bsp -I../NiosIITestSpin_bsp/drivers/inc  -DSYSTEM_BUS_WIDTH=32 -pipe -D__hal__ -DALT_NO_INSTRUCTION_EMULATION -D__ucosii__      -O0 -g -Wall   -EL -mhw-div -mcustom-fpu-cfg=60-1 -mhw-mul -mhw-mulx  -o obj/Test.o Test.cpp

Test.cpp:12:41: warning: boost/property_tree/ptree.hpp: No such file or directory
Test.cpp:13:46: warning: boost/property_tree/xml_parser.hpp: No such file or directory

我清理,重新生成makefile,然后重建,但我无法让编译器看到这个新的include目录。

如果我更改代码以包含完整路径,它会更进一步,因为它可以打开这些文件,但它仍然无法打开它们包含的Boost文件。

我用Google搜索并搜索了StackOverflow和Eclipse无济于事。有很多类似的问题,但没有什么是完全相同或对我有用。

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

试试这样:

#include "boost/property_tree/ptree.hpp"
#include "boost/property_tree/xml_parser.hpp"

#include&lt;&gt;和#include“”的处理方式不同。第一个意味着“系统”包括路径,而第二个意味着“用户”包括路径。

答案 1 :(得分:0)

我遇到了同样的问题并跳过了同样的箍(甚至试过了“”而不是&lt;&gt;)。事实证明这个解决方案确实很愚蠢。这是一台Windows机器;请记住,他们以不同的方式处理文件路径。

从原帖:

  

C:\ Altera的\ 10.1 \的Quartus \ BIN \ cygwin的\ USR \包括\ boost_1_46_1

更改斜杠方向,使其显示为:

  

C:/altera/10.1/quartus/bin/cygwin/usr/include/boost_1_46_1

(编辑包含路径;在项目属性| C / C ++一般|路径和符号|包含| GNU C ++)下

这解决了我的问题。