3

Intel Mac に初めて boost をインストールしましたが、boost のヘッダー ファイルのみを使用する限り、通常は問題なく動作します。

しかし、ライブラリ (私の場合は正規表現ライブラリ) を使用しようとすると、アプリがリンクして正常に起動しますが、すぐに正規表現関連のデストラクタでクラッシュします。

これは、 boost.org の unix インストール ページで提供されている簡単なテスト プログラムでも発生します。

もちろん、検索パスを設定して正規表現ライブラリを含める以外に、特別なコンパイル/リンク オプションを設定する必要があるのでしょうか (C++ ツールのデフォルトを使用しました)。

(ところで、システムのデフォルトのコンパイラが実際にgcc 4.01であることを確認しました。これは、XCodeのテストプロジェクトで使用しているものと同じです)

4

2 に答える 2

1

自己への答え:

この問題の原因はまだ明らかではありませんが、回避策があります。

Boostインストーラープロセスが構築するlibを使用する代わりに、libのソースコード(boost-main-folder / libs / libname / src /内)をXcodeプロジェクトに追加し、Xcodeにソースをコンパイルさせます。

于 2008-12-20T11:32:52.870 に答える
1

このスレッドが古いことは知っていますが、Boost 1.53 でもこれはまだ発生しています。別の後のスレッドで回答がありました.Googleまたは他の検索で誰かがこれを見つけた場合に備えて、クロスリンク.

C++11 オプションを指定して再コンパイルするとうまくいきます。どうやらそれはclangのデフォルトではありません。

于 2013-06-20T15:16:11.533 に答える