2011-01-21 71 views

回答

11

要建立在OSX 10.6 4路通用升压静态二进制文件我执行以下操作:从提升网站

  1. 下载的推动作用。

  2. 将档案文件和cd解压到boost_x_xx_x文件夹(其中x_xx_x是您正在使用的boost版本)。

  3. 运行:

    ./bootstrap.sh然后

    ​​

    # Replace "b2" with "bjam" if you are compiling a version <= 1.46.1

    ./b2 macosx-version=10.6 macosx-version-min=10.4 architecture=combined threading=multi link=static address-model=32_64

这将编译一切,除了Boost.M PI(需要--with-mpi选项)。构建产品里面放入./stage


UPDATE:如果您已经安装了XCode 4,再有就是,你必须执行额外的步骤。 XCode 4没有配备能够定位PowerPC的编译器或库。不幸的是,XCode 4附带的编译器成为Boost使用的默认编译器。要强制使用XCode 3附带的编译器,您必须执行额外的步骤。请注意,如果XCode 3不在您的系统上,则必须安装XCode 3。

运行./bootstrap.sh后,和之前运行b2,开:

./tools/build/v2/user-config.jam 

添加下面一行到该文件。这指示升压使用G ++ - 4.2在Xcode 3:

using darwin : : /Developer-old/usr/bin/g++-4.2 ; 
1

你试图建立哪些库?它说,在这里(http://www.boost.org/doc/libs/1_45_0/more/getting_started/unix-variants.html)认为:

多数Boost库是头只: 它们完全由标题的文件 含有模板和内联 功能,并且不需要单独 编译二进制库 或链接时特殊待遇。

,你需要建立一个的有:

  • Boost.Filesystem的
  • Boost.GraphParallel
  • 了Boost.Iostreams
  • Boost.MPI
  • 加速。 ProgramOptions
  • Boost.Python
  • Boost.Regex
  • Boost.Serialization
  • Boost.Signals
  • Boost.System
  • Boost.Thread
  • Boost.Wave

那么,哪一个是你想建立?

+0

建立他们,我想建立Boost.Filesystem的和Boost.System在3个架构I386 PPC x86_64的 – Rajeshaz09 2011-01-21 06:40:03

0

要建立在我的主目录($HOME)下虎通用二进制代码我创建user-config.jam file

using darwin : : : <compileflags>"-arch ppc -arch i386 -mmacosx-version-min=10.4 -isysroot /Developer/SDKs/MacOSX10.4u.sdk" ; 

然后我是建设加速像往常一样果酱。可能这应该仍然适用于较旧的Mac OS X版本。

另一种方法是使用的MacPorts但在这种情况下,所有升压依赖必须重建作为通用二进制代码,这并不总是可能的(我有这个老虎两次,但没有)。

对于你需要有安装的XCode MacOSX10.4u.sdk两种情况。

[编辑]

要建立三个体系,你最好阅读answer到类似的问题。简而言之,在user-config.jam中构建选项取决于您的和目标Mac OS X版本。所以你最好根据上述答案尝试各种变体。

相关问题