CMakeでビルドしようとすると,以下のエラーが出ることがある。
これはECM (Extra CMake Modules) というCMakeのモジュールが不足していることが原因だ。最近のCMakeを使ったプロジェクト (fcitxなど) では,ECMを採用していることが増えている。そこで,ECMをインストールする。
インストール情報
項目 | 説明 |
配布元 | |
リポジトリー | |
手順 |
|
依存情報 | |
依存先 (必須) | |
依存先 (任意) | - ドキュメントビルドに必要: Python Sphinx 1.2+, QCollectionGenerator
- テストに必要: Qt5LinguistTools, Qt5Core, Qt5Network, Qt5Qml, Qt5Gui, Qt5Quick
|
依存元 | |
インストール例
日付 | バージョン | OS | 依存関係 |
2018-04-29 | 5.44.0-rc1 | Ubuntu 16.04 |
|
2019-03-27 | 5.56.0 | Ubuntu 18.04 | GNU Make 4.2.1, GCC 7.4.0, CMake 3.10.2 |
なお,v5.56.0, 5.55.0, 5.44.0などではctestで以下の2項目が失敗する。
ctest -v
でエラー内容の詳細を確認して判明したが,これらの2項目はディレクトリーが空になっており,テストが実行できず,make cleanに失敗しているのが原因だった。
あまり,推奨はしないが,ctestでテストを実行しないでインストールすることも考えられるだろう。
おそらく,テストに必要なQt関係の依存関係が不十分のためのエラーだと思われる。Qtを自前でインストールしたら,再挑戦する。
必要に応じて,cmake実行時に以下のようにオプションで必要な機能を無効にして制御する。
cmake -DBUILD_HTML_DOCS=OFF -DBUILD_MAN_DOCS=OFF -DBUILD_TESTING=OFF .
関連
“インストール: ECM (Extra CMake Modules) | モダンなCMakeに必要な追加モジュール” に対して1件のコメントがあります。