【发布时间】:2013-03-28 21:52:06
【问题描述】:
在尝试了几种解决方案后,我想我需要一些帮助来了解如何为 Mac OSX Lion 正确构建 Boost,在 XCode 4 上构建跨平台应用程序但没有成功 =s
我已遵循this 指南。并依次执行以下命令:
cd /Users/me/Documents/boost_1_53_0
./bootstrap.sh --prefix=installation
cd /Users/me/Documents/boost_1_53_0/tools/build/v2
./bootstrap.sh
./b2 install --prefix=installation
export PATH=$PATH:installation/bin
cd /Users/me/Documents/boost_1_53_0
./b2 --build-dir=installation toolset=darwin cxxflags="-arch i386" address-model=32 architecture=x86 stage
在尝试在 XCode 上编译应用程序后,我收到了问题标题中的错误,并进行了以下编辑:
将这些库添加到“Build Phases”下的“Link Binary With Libraries”中:
libboost_filesystem.dylib
libboost_system.dylib
并在标头和库搜索路径中添加了“$(SRCROOT)/../boost_1_53_0”。
在 Stackoverflow 上查看其他一些问题,很多人似乎使用 makefile 构建提升,并在 makefile 中传递诸如 LDFLAGS=-L/opt/local/lib 之类的东西;
在哪里可以找到构建 boost 的好教程或示例?我没有制作自己的 makefile 的经验,尽管我在这里和那里进行了一些简单的编辑。
【问题讨论】:
-
你想用
cxxflags="-arch i386"做什么? -
您发布的步骤用于构建 Boost,而标题似乎是尝试使用 Boost 库的链接器错误。那么你的问题是什么?您在构建或使用 Boost 库时遇到问题吗?
-
@Praetorian 那是我使用这些选项构建的 boost 导致的错误,我想知道构建 boost 并将其与 Xcode 一起使用的通用过程是什么样的。
-
@SamMiller 在查看了这里的其他几个问题之后,我尝试使用该标志进行构建,我是否走错了路? =s
-
很难说你走错了路,你的问题不清楚。如果您正在尝试构建 32 位版本的 boost 库,那么您所做的是正确的。