0

私は C++ で Json のパーサーとして JsonCPP を使用しています。問題は、 var を宣言するときですJson::Value root;。そのコンパイルは非常にうまくいきますが、それを使用するとプログラムがクラッシュし、この msg: が表示されundefined symbol: _ZN4Json5ValueD1Evます。私は何が欠けていますか?

これはリンカの問題だと思ったので、ライブラリlibjson_linux-gcc-4.1.2_libmt.so/usr/libandに入れ、コードでライブラリを呼び出すときに/usr/lib64.h を入れました。/usr/include/json#include <json/json.h>

非常にうまくコンパイルできるので、すべて問題ありません。しかし、私は同じクラッシュを受け取ります。

リンクするのに欠けているパスはありますか?

皆さん、ありがとうございました!

PD: 私は g++ でコンパイルしているのではなく、makefile でコンパイルしていると言うのを忘れています

4

2 に答える 2

1

ヘッダー ファイルをインクルードするだけでなく、ライブラリにもリンクする必要があります。

リンク段階で、引数を追加します-ljson_linux-gcc-4.1.2_libmt

于 2011-10-28T11:21:50.517 に答える
0

これは私にとってはうまくいき、libjson_linux-gcc-4.1.2_libmt.soを実行時にあるプログラムの同じディレクトリに配置します。

于 2016-05-10T08:34:58.010 に答える