0

git から GStreamer に対して何かを構築しようとしています。彼らはpkg-config幸せになる魔法のプロセスをいくつか持っていますが、それを実行すると、.laファイルが得られます。

$ pkg-config --libs gstreamer-1.0
/home/blong/gst/head/gstreamer/gst/libgstreamer-1.0.la -lgobject-2.0 -lglib-2.0

そして、それは GCC に問題を引き起こします:

g++ -o example switchtrackexample.cpp `pkg-config --libs --cflags gstreamer-1.0`
# comes out as: g++ -o example switchtrackexample.cpp -pthread -I/home/blong/gst/head/gstreamer -I/home/blong/gst/head/gstreamer/libs -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include /home/blong/gst/head/gstreamer/gst/libgstreamer-1.0.la -lgobject-2.0 -lglib-2.0
/usr/bin/ld: error: /home/blong/gst/head/gstreamer/gst/libgstreamer-1.0.la:8:8: invalid character
/usr/bin/ld: error: /home/blong/gst/head/gstreamer/gst/libgstreamer-1.0.la:8:8: syntax error, unexpected $end
/usr/bin/ld: error: /home/blong/gst/head/gstreamer/gst/libgstreamer-1.0.la: not an object or archive
# lots of undefined references here

これを使用してコンパイルできるはずだということをいくつか読んだことがありますがlibtool、その方法がわかりません。.laこのファイルをどうすればよいですか?

4

1 に答える 1

0

これを尋ねた直後に、Julien Moutte によるこの回答を見つけました。

ビルド コマンドの前に
libtool --mode=linkを追加します。

そのアドバイスに従って、私はこれを取得します。

libtool --mode=link g++ -o example switchtrackexample.cpp `pkg-config --cflags --libs gstreamer-1.0`
于 2012-12-18T18:31:30.877 に答える