无法在 Xcode 中使用 Boost,不断收到"Undefined symbols for architecture"错误
Unable to use Boost in Xcode, keep getting "Undefined symbols for architecture" errors
我正在尝试将Boost包括在我的Xcode Project中,无论我做什么项目,该项目都不想编译。
我每次都会遇到此错误:
架构的未定义符号x86_64:
"boost::log::v2s_mt_posix::record_view::public_data::destroy(boost::log::v2s_mt_posix::record_view::public_data const*)", referenced from:
boost::log::v2s_mt_posix::record::reset() in Logger.o
"boost::log::v2s_mt_posix::attribute_set::insert(boost::log::v2s_mt_posix::attribute_name, boost::log::v2s_mt_posix::attribute const&)", referenced from:
boost::log::v2s_mt_posix::sources::basic_logger<char, boost::log::v2s_mt_posix::sources::severity_logger<boost::log::v2s_mt_posix::trivial::severity_level>, boost::log::v2s_mt_posix::sources::single_thread_model>::add_attribute_unlocked(boost::log::v2s_mt_posix::attribute_name const&, boost::log::v2s_mt_posix::attribute const&) in Logger.o
(与其他一堆完全108个错误一起。)
我已经尝试了很多解决此问题的方法,并在与此相关的stackoverflow上阅读了几乎所有问题。
i am 将其链接在"与项目的链接二进制"中,我有libboost_serialization.a
和libboost_system.a
(该列表中的仅有的东西)。
使用./b2
命令手动安装Boost后,我将两个文件拖到了边栏中。因此,这些文件与我的.xcodeproj
处于相同的目录。
在 Library Search Paths
下,我有 $(PROJECT_DIR)
,所以应该能够找到它们。
我是用错误的旗帜或其他东西编译它吗?
这为我解决了问题:
而不是在"构建阶段"选项卡下的"链接二进制"部分中添加 libboost_log-mt.*
,而是在 Archive File (即.a
; Dynamic Library不起作用)添加路径)在"构建设置"选项卡下的"其他链接标志"中:
构建设置下的其他链接标志
我没有解释为什么这有效;但是我注意到过去,这种技术也对我有用,而其他库也"不链接"。
相关文章:
- 与卡特琳娜一起卷曲C++失败并得到"Undefined symbols for architecture x86_64"
- "Undefined symbols for architecture x86_64" 在 SDL 2 (macOS) 中
- 编译 OpenBLAS C++项目会产生错误"Undefined symbols for architecture x86_64"
- 使用多个文件时出现"Undefined symbols for architecture x86_64"错误
- 静态库链接 已定义符号的问题"Undefined symbols"
- 无法在 Xcode 中使用 Boost,不断收到"Undefined symbols for architecture"错误
- "Undefined Symbols"但定义和声明了函数,没有错别字
- 将某些功能与 main.cpp 分离时出现"undefined symbols for architecture"错误,该怎么办?
- XCode 错误"Undefined symbols for architecture x86_64" C++
- 了解"Undefined symbols for architecture"错误
- 在单独的 c++ 文件中初始化矢量时出现"undefined symbols for architecture"错误
- 有错误"Undefined symbols for architecture x86_64"和"ld: symbol(s) not found for architecture x86_64"
- "Undefined symbols for Architecture x86_64 "未使用模板,可能存在语法错误
- Xcode 6 上针对目标 C 的错误'Undefined symbols for architecture x86_64 '
- "Undefined symbols for architecture x86_64"尝试包含另一个文件中的功能
- Visual Studio "object file does not define any previously undefined symbols"
- XCode 构建失败"undefined Symbols for architecture x86_64"
- 为什么我会被虚拟和具体的课程"Undefined symbols ... typeinfo ... vtable"?
- C++:使用"std"时出错"Undefined symbols for architecture x86_64"
- osx 上的编译错误"Undefined symbols"