cmake の簡単な使い方 / Windows環境(Visual Studio 2022)
Microsoft C++ Build Tools のダウンロード インストール
https://visualstudio.microsoft.com/ja/visual-cpp-build-tools/
zlib-1.3.1をビルドしてみる例
GitHub – madler/zlib: A massively spiffy yet delicately unobtrusive compression library.
インストールとビルド
CMakeのビルドでは、ConfigureとGenerateという2つの作業を行います。Configureはビルドに必要な情報を収集し、Generateはプロジェクトファイルを生成します。
Generate a Project Buildsystem
cmake [<options>] -B <path-to-build> [-S <path-to-source>]
cmake [<options>] <path-to-source | path-to-existing-build>
Build a Project
cmake --build <dir> [<options>] [-- <build-tool-options>]
cmake(1) — CMake 3.29.0-rc1 Documentation
"C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\Build\vcvars64.bat"
git clone https://github.com/madler/zlib
mkdir build
cd build
cmake .. -G "Visual Studio 17 2022" -A x64 -T host=x64 -DCMAKE_BUILD_TYPE=Release
cmake --build . --config Release
フォルダーを自動で作る方法
"C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\Build\vcvars64.bat"
git clone https://github.com/madler/zlib
cmake -G "Visual Studio 17 2022" -A x64 -T host=x64 -DCMAKE_BUILD_TYPE=Release -B build -S .
cmake --build build --config Release
MSBuild を使う方法
"C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\Build\vcvars64.bat"
git clone https://github.com/madler/zlib
cmake -G "Visual Studio 17 2022" -A x64 -T host=x64 -DCMAKE_BUILD_TYPE=Release -B build -S .
MSBuild .\build\zlib.sln /t:build /p:Configuration=Release;Platform="x64"
色々な例
cmake -G "Visual Studio 16 2019" -A x64
cmake --build . --target tools/
cmake -G "Ninja" -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -B build -S .
cmake -G "Visual Studio 17 2022" -A "x64" -DCMAKE_C_COMPILER=cl -DCMAKE_CXX_COMPILER=cl -B build -S .
cmake ..\llvm -G "Visual Studio 17 2022" -A "x64" -DLLVM_ENABLE_PROJECTS=mlir -DLLVM_BUILD_EXAMPLES=ON -DLLVM_TARGETS_TO_BUILD="host" -DCMAKE_BUILD_TYPE=Release -Thost=x64 -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_ASSERTIONS=ON -DZLIB_INCLUDE_DIR="D:\WinPython\content\zlib-1.3.1" -DZLIB_LIBRARY="D:\WinPython\content\zlib-1.3.1\build\Release"
CMakeCache.txt CMakeFiles
Generate a Project Buildsystem の時に作成されます。再作成する時に消す必要があります
–fresh オプションをつけると再作成されます
cmake -G "Visual Studio 16 2019" -A x64 --fresh
CMakeLists.txt
このファイルを元にしてファイルが作成されます
cl : コマンド ライン error D8021: 数値型引数 '/Werror’ は無効です。
cl コンパイラーでは無効なオプションですCMakeLists.txt の行をコメントにして回避します
/w、/W0、/W1、/W2、/W3、/W4、/w1、/w2、/w3、/w4、/Wall、/wd、/we、/wo、/Wv、/WX (警告レベル) | Microsoft Learn
#set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror -Wno-covered-switch-default ")
ディスカッション
コメント一覧
まだ、コメントがありません