无法使用任何外部库(Codeblocks)进行编译

时间:2017-01-02 07:58:23

标签: c++ windows compiler-errors codeblocks

我无法在Code :: Blocks上使用外部库编译任何代码。

我尝试使用boost lambda示例:

#include <boost/lambda/lambda.hpp>

#include <iostream>
#include <iterator>
#include <algorithm>

int main()
{
    using namespace boost::lambda;
    typedef std::istream_iterator<int> in;

    std::for_each(
        in(std::cin), in(), std::cout << (_1 * 3) << " " );
}

我为库设置了一个全局环境变量: https://imgur.com/a/maiRC ......我认为我正确设置了构建选项。 https://imgur.com/a/BP0Xk

但是我的构建无法检测到头文件:

||=== Build: Debug in boost test (compiler: GNU GCC Compiler) ===|
C:\Documents and Settings\Charlotte\My Documents\wxTest\boost test\boo.cpp|1|fatal error: boost/lambda/lambda.hpp: No such file or directory|
||=== Build failed: 1 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===|

1 个答案:

答案 0 :(得分:0)

不幸的是,第一张图片中的提升包含路径已被切断。但它看起来像

C:\Boost\include\boost-1_62\boost

右?

这很可能是不正确的。如果你像你一样包含lambda头(这也是包含增强头的常用方法)

#include <boost/lambda/lambda.hpp>

然后需要存在一个名为

的文件
C:\Boost\include\boost-1_62\boost\boost\lambda\lambda.hpp

这不符合正常的Boost目录布局。那里有一个boost太多了。尝试设置您的全局环境提升路径:

C:\Boost\include\boost-1_62