2017-11-20 285 views
0

CMakeを使用してgstreamerでC++アプリケーションを構築しようとしています。私のCMakeLists.txtファイルでは、gstreamerのは、次の行に含まれています:致命的なエラー:gst/gst.h:そのようなファイルやディレクトリはありません(CMakeを使用)

find_package(PkgConfig REQUIRED) 

pkg_search_module(GST REQUIRED gstreamer-1.0>=1.4 
    gstreamer-sdp-1.0>=1.4 
    gstreamer-video-1.0>=1.4 
    gstreamer-app-1.0>=1.4) 

私はエラーなしcmakeを実行することができますが、make次のエラー得られます

fatal error: gst/gst.h: No such file or directory

のGStreamerがインストールされているが、私は持っていますgst.hファイルが/usr/include/gstreamer-1.0/gst/gst.hと他のgstreamerヘッダーファイルにあることを確認しました。

次の環境変数が設定されています。私もPKG-config設定からの出力をチェックしました

export PKG_CONFIG_PATH=/opt/qt-5.9.1/lib/pkgconfig 
export LD_LIBRARY_PATH=/opt/qt-5.9.1/lib 
export GST_PLUGIN_PATH=/usr/include/gstreamer-1.0 

、同様の問題を別のポストで提案:

$ pkg-config --cflags gstreamer-1.0 
-pthread -I/usr/include/gstreamer-1.0 -I/usr/lib/x86_64-linux-gnu/gstreamer-1.0/include -I/usr/include/glib-2.0 -I/usr/x86_64-linux-gnu/glib-2.0/include 

なぜ」することができますgstreamerヘッダファイルが見つかりましたか?

は(私がのgstreamerとCMakeの両方に新たなんだ)

+1

'変数を設定しますpkg_search_module'このディレクトリには、ライブラリに関するディレクトリやその他のものが含まれています。 'CMakeLists.txt'でこれらの変数を使用しましたか? pkg-configの使用方法については、[その記事(https://stackoverflow.com/questions/35457533/findpkgconfig-with-set-target-properties-is-unusable-for-setting-cflags-ldflags/35476270#35476270)を参照してください。 CMakeの設定変数 – Tsyvarev

答えて

2

私が実際にアプリケーションにライブラリをリンクしませんでしたが判明します。 CMakeLists.txtに次の2行のエラーを修正(場合には他の誰が私と同じ過ちを作る)追加:

target_include_directories(videoDemo PRIVATE ${GST_INCLUDE_DIRS}) 
target_link_libraries(videoDemo ${GST_LIBRARIES}) 

を(videoDemoは、アプリケーションの名前です)

関連する問題