新しいバージョンの libyaml-cpp を使用しようとしていますが、リンカーに問題があります ( undefined reference to 'YAML::LoadFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
)。
私は次のようにライブラリを構築します:
cmake -DBUILD_SHARED_LIBS=ON ..
make
sudo make install
次に、 を含めyaml-cpp/yaml.h
て呼び出しますYAML::LoadFile( some_string );
。私のコンパイル行は次のとおりです。
g++ -L/usr/local/lib -I/usr/local/include -lyaml-cpp -std=c++0x -o $@ $^
そこに正確なファイルを入れてみまし.so
たが、うまくいきませんでした。を使用すると、共有ライブラリに関数nm
が表示されます。LoadFile
どういうわけか間違ったビルド ラインを使用しているのか、ライブラリに問題があるのか 、今はわかりません。