我正在使用xcode进行c ++项目,我需要使用boost。
所以我用brew下载了提升
然后我用命令安装boost:
brew install boost
在此之后,我发现此处安装了增强功能:
/usr/local/Cellar/
此外,还找到了所有增强头文件的链接文件:
/usr/local/include/
发现了升压的lib文件:
/usr/local/lib/
然后在我的xcode项目中:
构建设置--->搜索路径--->标题搜索路径:/usr/local/include/
构建设置--->搜索路径--->图书馆搜索路径:/usr/local/lib/
在我的项目中,我尝试以下代码:
#include <boost/thread/thread_pool.hpp>
int main(int argc, const char * argv[])
{
return 0;
}
当我编译它时,我得到以下三个错误:
架构x86_64的未定义符号:
&#34; boost :: system :: system_category()&#34;,引自: main_o中的___ cxx_global_var_init.2&#34; boost :: system :: generic_category()&#34;,引自: 在main.o中___cxx_global_var_init ___ cxx_global_var_init.1 in main.o ld:找不到架构x86_64 clang的符号:错误:链接器命令失败并带有退出代码 1(使用-v查看调用)
然后我在这里添加/usr/local/lib/
:
构建设置---&gt;链接---&gt;其他链接器标志。
现在我只收到一个错误:
ld:无法映射文件,errno = 22 file&#39; / usr / local / lib /&#39;对于建筑 x86_64 clang:错误:链接器命令失败,退出代码为1(使用-v to 见调用)
但是,下面的代码效果很好:
#include <iostream>
#include <boost/version.hpp>
int main(int argc, const char * argv[]) {
std::cout << "Using Boost "
<< BOOST_VERSION / 100000 << "." // major version
<< BOOST_VERSION / 100 % 1000 << "." // minor version
<< BOOST_VERSION % 100 // patch level
<< std::endl;
return 0;
}