2016-11-02 8 views
0

私は、KODO線形ネットワークコーディングを含むgstreamerプラグインを開発しようとしています。 KodoはバイナリファイルC++として提供されています。 autogen.sh makeとsudo makeの作成時に、installはエラーを検出しません。私は、GST-検査を実行するとmykodoenc結果は次のとおりです。gstreamerプラグインにC++バイナリを組み込む方法は?

のGStreamer-WARNING **は:プラグイン のロードに失敗しました '/usr/local/lib/gstreamer-1.0/libgstmykodoenc.so': は/ usr/local /lib/gstreamer-1.0/libgstmykodoenc.so:未定義のシンボル: _ZTVN10__cxxabiv117__class_type_infoE

私のGStreamerプラグインのC++バイナリモジュールを含むことができ、どのよう

答えて

0

gst-inspectを実行すると、バイナリは実行時に必要なC++シンボルを見つけることができないため、libstdC++共有ライブラリを指すようにLD_LIBRARY_PATHを設定する必要があります。

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/path/to/libstdc++.so.6 

また、libstdC++のバージョンは、前述のkodoバイナリファイルで想定されているものと同じである必要があります。あなたは、私がメイクファイル内の正しい場所に-lstdC++を追加する解決

ldd /usr/local/lib/gstreamer-1.0/libgstmykodoenc.so 
0

を使用してください他の行方不明の依存関係を確認するためにも

ldd <kodo_binary> 

を使用してそれを確認することができます。

libgstmykododec_la_SOURCES = gstmykododec.c gstmykododec.h kodoc.h 

libgstmykododec_la_CFLAGS = $(GST_CFLAGS)-I./kodolib/include

libgstmykododec_la_LIBADD = $(GST_LIBS)-L./kodolib -lkodoc_static -lfifi -lcpuid -lstdC++

libgstmykododec_la_LDFLAGS = $ (GST_PLUGIN_LDFLAGS)-Wl、-Bdynamic -lm

libgstmykododec_la_LIBTOOLFLAGS = --tag =無効静的

関連する問題