2016-11-11 102 views
0

我试着用/不用-m64选项,它不工作。我应该如何解决这个问题?在Mac上C++ boost编译错误

Undefined symbols for architecture x86_64: 
    "boost::system::system_category()", referenced from: 
     boost::asio::error::get_system_category() in main-6996c8.o 
     boost::system::error_code::error_code() in main-6996c8.o 
     ___cxx_global_var_init.2 in main-6996c8.o 
    "boost::system::generic_category()", referenced from: 
     ___cxx_global_var_init in main-6996c8.o 
    ___cxx_global_var_init.1 in main-6996c8.o 
ld: symbol(s) not found for architecture x86_64 
+0

你必须显示编译和链接命令 – pm100

+0

我用brew安装了boost。该命令是g ++ -std = C++ 11 main.cpp – ManAtMiddleWaterloo

+0

'main-6996c8.o'的源代码中include语句的外观是什么? – NonCreature0714

回答

0

首先,您是使用Xcode还是使用命令行? 其次,问题可能是包含目录和lib目录没有正确设置。 第三,你可以去/ usr/local/include来检查你是否有boost头文件,并去/ usr/local/lib检查你是否有升级库。

+0

命令行,它们都已正确设置已可以 – ManAtMiddleWaterloo

+1

您可以发布您的命令行提示吗? –

+0

当然不是一个包含问题,它的一个链接/ lib问题 – pm100