GNU/Linux >> Linux の 問題 >  >> Linux

C++ Boost:boost::system::generic_category() への未定義の参照

libboost_system にリンクする必要があります 図書館。コードブロックについてはよくわかりませんが、プラットフォームの g++ コマンドライン オプションは

<ブロック引用>

-lboost_system


ブースト バージョンに応じて、libboost-system には、ライブラリのマルチスレッド機能を示す -mt サフィックスが付いています。

-lboost_system の場合 リンカが見つからない -lboost_system-mt を試す .


リンカーの問題です。プロジェクトに静的ライブラリ パスを含めます。

Qt Creator の場合、プロジェクト ファイル .pro を開きます 次の行を追加します:

LIBS += -L<path for boost libraries in the system> -lboost_system

私の場合、Ubuntu x86_64:

LIBS += -L/usr/lib/x86_64-linux-gnu -lboost_system

コードブロックについては、Settings->Compiler...->Linker を開きます 設定タブに追加:

boost_system

リンク ライブラリ テキスト ウィジェットに移動し、OK を押します ボタン。


Linux
  1. MPIコンパイルエラー: `sqrt'への未定義の参照–解決済み

  2. C で sqrtf() を使用する:`sqrtf' への未定義参照

  3. x =os.system(..) の戻り値

  1. Linuxシステムのファイアウォールにセキュリティを強化する

  2. シンボル「[email protected]@GLIBC_2.4」への未定義の参照

  3. C/C++ 開発用の Ubuntu Linux でのライブラリとヘッダー ファイルのインストール

  1. Linux 3Dグラフィックライブラリ?

  2. 64ビットシステムに32ビットライブラリをインストールすることは可能ですか?

  3. オペレーティング システムに基づく C++ での条件付きコンパイル