1

2013 年 10 月 26 日にgithubから最新の OpenCV ソース コードをダウンロードした後、CMake (cmake-gui 2.8.12) を実行して、最初にプロジェクトを「構成」し、次に「生成」しました。ビルド ディレクトリを生成すると、以下で始まる一連のエラーがスローされError in generation process, project files may be invalidます。

エラーのスクリーンショット

無視しても安全だと思う最初のグループは、次のようになります。

apps/haartraining/CMakeLists.txt の CMake 警告 (dev):
ポリシー CMP0022 が設定されていません: INTERFACE_LINK_LIBRARIES はリンク インターフェイスを定義します。ポリシーの詳細については、「cmake --help-policy CMP0022」を実行してください。cmake_policy コマンドを使用してポリシーを設定し、この警告を抑制します。

静的ライブラリ ターゲット「opencv_haartraining_engine」には、
INTERFACE_LINK_LIBRARIES プロパティがあります。これは、このライブラリのリンク インターフェイスのソースとして優先する必要があります。プロパティを無視し、代わりにリンク実装をリンク インターフェイスとして使用します。この警告は、プロジェクト開発者向けです。-Wno-dev を使用して抑制します。

しかし、エラーの最後のリストはもっと心配です。これは何?それらに基づいて行動する必要がありますか?どうすれば修正できますか?

CMake エラー: install(EXPORT "OpenCVModules") に絶対宛先 "/lib" が指定されていますが、エクスポートは、相対宛先 "lib" を持つターゲット "opencv_core" のインストールを参照しています。

CMake エラー: install(EXPORT "OpenCVModules") に絶対宛先 "/lib" が指定されていますが、エクスポートは、相対宛先 "bin" を持つターゲット "opencv_core" のインストールを参照しています。

CMake エラー: install(EXPORT "OpenCVModules") に絶対宛先 "/lib" が指定されていますが、エクスポートは、相対宛先 "lib" を持つターゲット "opencv_flann" のインストールを参照しています。

CMake エラー: install(EXPORT "OpenCVModules") に絶対宛先 "/lib" が指定されていますが、エクスポートは、相対宛先 "bin" を持つターゲット "opencv_flann" のインストールを参照しています。

[...]

CMake エラー: install(EXPORT "OpenCVModules") に絶対宛先 "/lib" が指定されていますが、エクスポートは、相対宛先 "lib" を持つターゲット "opencv_videostab" のインストールを参照しています。

CMake エラー: install(EXPORT "OpenCVModules") に絶対宛先 "/lib" が指定されていますが、エクスポートは、相対宛先 "bin" を持つターゲット "opencv_videostab" のインストールを参照しています。

エラーの cmake-gui スクリーンショット

==========編集===========

ここでの問題はCMAKE_USE_RELATIVE_PATHS、リリース 2.4.6 のコードで CMake を実行すると存在する CMake の値が、最新のコードで CMake を実行すると存在しないことでしょうか。もしそうなら、修正は何ですか?

4

1 に答える 1

0

私はあなたと同じ状況幅を使用しました、cmake 2.8.12、OpenCV 2.4.6、「このプロジェクトのジェネレーターを指定する」ために選択したのはVS10(私はVC10を使用しました)で、その下で「デフォルトのネイティブコンパイラーを使用」を選択しました。しかし、私はついに成功しました。

于 2013-11-01T09:04:03.600 に答える