web-dev-qa-db-ja.com

コンパイラがlibxml / parser.hを見つけられません

私はDebian 8(Jessie)、64ビットを使用しています。 libxml2-devにインストールされた/usr/include/libxml2/libxmlをインストールしました。

しかし、私がするとき(libxml docsが言うように)

#include <libxml/parser.h>

gccを使用して)コンパイルするときにのみ取得します

fatal error: libxml/parser.h: no such file or directory

注意:古い64ビットSuseを使用する別のマシンでは、libxml2-devがまったく同じパスにあり、新しいDebianと比較して他の環境変数が設定されていないため、問題なく動作します。まったく同じメイクファイルを使用して、あるコンピュータから別のコンピュータに移行中に問題が発生しました。 All移行後に(文書化された-devを使用して)必要なその他の#include <path>ライブラリ(すべてapt-getと共にインストールされました)、コンパイル時にlibxml2-devのみが見つかりません。

libxml2-devを表示するために他に何かする必要がありますか?

13
Foo Bar

明示的なインクルードでコンパイルして、parser.hファイルは次のようになります。

g++ -I/usr/include/libxml2/


以下の環境変数は、ヘッダーファイルの検索にも使用できます。

CPATH
C_INCLUDE_PATH
CPLUS_INCLUDE_PATH
OBJC_INCLUDE_PATH

詳細はこちら こちら

8
deimus

インストールした場合:Sudo apt-get install libxml2-dev libxml2-doc に入る /usr/include/libxml2およびそのフォルダのすべてのコンテンツを下のレベルにコピーまたは移動します:cp -R libxml/ ../この後、私にとってはうまくいきます。

8
Vlad

パラメータをコンパイラに渡すには、pkg-configを使用する必要があります。このような

g++ `pkg-config --cflags libxml-2.0` example.c -o example.o

そしてリンカーへ:

g++ `pkg-config --libs libxml-2.0` example.o -o example
0
BЈовић