0

boost と pcre lib を使用して、wxwidgets に基づいたアプリケーションを作成しています。メイクファイル内では、通常、CXXFLAGS 変数などを使用して、コンパイラとリンカーのパスを配置する必要があります。

私はこれを書きました:

CXXFLAGS := -I. -I/path/boost/prod -I/path/pcre/include $(shell path/wxWidgets/bin/wx-config  --unicode=yes --static=yes --cxxflags) -DPCRE_STATIC -O3

CPPFLAGS := -I. -I/path/boost/prod -I/path/pcre/include $(shell path/wxWidgets/bin/wx-config --unicode=yes --static=yes --cppflags) -DPCRE_STATIC -O3

LDFLAGS := -L. -L/path/pcre/lib -L/path/wxWidgets/lib $(shell $path/wxWidgets/bin/wx-config --unicode=yes --static=yes --optional-libs html,aui,stc,xml,adv,core,base) -lpcre -O3
    EXEC_POST

私が今考えていることから、wx-config は必要なライブラリーを教えてくれます。

コンパイルしたファイルをリンクしようとすると、リンカは、wx-config で指定されているライブラリの 1 つであるライブラリ「gio-2.0」などを検出できないというエラーを表示します。見つからないライブラリをすべて手動でインストールして動作するようになりましたが、通常、この要求されたライブラリはすべて wxwidgets の一部である必要があります.... 上記の makefile 構成のパーツを台無しにしたと思います。どう思いますか?

4

1 に答える 1

1

--libsの代わりに使用する必要があり--optional-libsます。

また、明示的な は必要ありません。-L/path/wxWidgets/libこれは既に によって出力されていますwx-config

于 2013-11-14T14:43:24.490 に答える