4

私は XCode 3.2 を使用しており、MacPorts プロジェクト (リリースとデバッグの両方) を使用してブーストをインストールしましたが、アプリケーションを boost::filesystem とリンクさせるのに途方に暮れています

ライブラリ検索パスを /opt/local/lib に設定しましたが、プロジェクトをリンクするときにまだ未解決の参照が表示されます。

別の投稿で -lboost_system を「その他のリンカー フラグ」に追加することに気付きましたが、これを行うと libboost_system.dylib, file was built for unsupported file format which is not the architecture being linked (i386) が表示されます。

MacPorts は適切なライブラリをインストールしていませんか、それとも他に何か不足していますか?

マーティン

4

2 に答える 2

5

ビルドしているOSのバージョンを示していません。私の推測では、ポートをビルドしてインストールするときの MacPort のデフォルトは x64 です。MacPort から boost をアンインストールしてから、ユニバーサルバリアントで再インストールします。

%% sudo port uninstall boost
%% sudo port install boost +universal
于 2012-03-07T04:37:25.350 に答える
1

ライブラリの名前が正確ではない可能性がありますboost_systemが、おそらくboost_system-mt-mtboostがスレッドセーフでコンパイルされたためです)、または他のサフィックスでさえあります。

確かに、あなたはで名前を調べることができます/opt/local/lib

find /opt/local/lib -name "libboost_system*"
于 2012-03-07T01:59:50.633 に答える