私はDebianテストでcmakeバージョン3.23.2を実行しています。入れたら -
$cmake .
出力を生成しますが、読み込みには速すぎます。私が次のようなことをするなら -
cmake . > cmake-build.txt
ビルドの最後の5行だけが生成されます。報告するバグ、警告などがあるかどうかはわかりません。
更新されました、これは私が得たものです -
Platform: Linux
Touchscreen input: No (Enable by param -DENABLE_TOUCHSCREEN=ON)
Metaserver: No (Enable by param -DENABLE_METASERVER=ON)
Doxygen documentation: No (Enable by param -DENABLE_DOC=ON)
Game development files: No (Enable by param -DENABLE_DEV=ON)
Upx packer: No (Enable by param -DENABLE_UPX=ON)
X11: Found and enabled (Disable by param -DWITH_X11=OFF)
==================================
-- Configuring done
-- Generating done
-- Build files have been written to: /home/shirish/games/Wyrmgus-master
私がしたことを共有してみましょう -
~/games/Wyrmgus-master$ mkdir build
~/games/Wyrmgus-master$ cd build/
~/games/Wyrmgus-master/build$ cmake ../ | less
3つ目はコアコマンドだと思います。ここでは一部しか提供していませんが、すべてではありません。以前は何かあったかのように、少なくとも何かが落ちた。
-- The C compiler identification is GNU 11.3.0
-- The CXX compiler identification is GNU 11.3.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
前の行もキャプチャしたいです:(
答え1
勉強を少なくすべき!
program | less
出力program
を通して渡されます。携帯用小型無線ポケットベルless
余暇にスクロールできるように呼び出されます。
使い方の一言cmake
:cmake .
ツリー内のビルドを実行していることを示します。これは実際にはビルド結果が原因でソースコードが複雑になるため、常に悪い考えです。実際、多くのソフトウェアがこのように構築されることを拒否します!
より良いもの:
mkdir build
cd build
cmake .. | less
そして:同じディレクトリでcmakeを2回実行すると、何もしません。ソフトウェアビルドプロセスは、最初の後に設定されます。
答え2
ログファイルにないメッセージは次のとおりです。通知する、CMakeはこれを標準エラーとして出力します。
stdoutとstderrをキャプチャする必要があります。
cmake .. |& less
いずれにせよ、ビルドを実行するときは、標準出力とともに標準エラーを記録する必要があります。実際のエラーメッセージも標準エラーとして送信され、これが実際に見たいメッセージです。