まず、Qtをダウンロードします。
ここからダウンロードすれば、会社名などを入力する手間がないです。
そしたらインストーラーをお好みで進めてください。
srcフォルダーを作ったらその中身にソースコードを入れてください。
次はCMakeListsです。
cmake_minimum_required(VERSION 3.16)
list(APPEND CMAKE_PREFIX_PATH "C:/Qt/6.8.1/mingw_64/lib/cmake")
project(Philia VERSION 0.1 LANGUAGES CXX)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
find_package(Qt6 REQUIRED COMPONENTS Core Widgets)
qt_standard_project_setup()
add_subdirectory(src)
target_link_libraries(Philia PRIVATE Qt6::Widgets)
set_target_properties(Philia PROPERTIES
WIN32_EXECUTABLE ON
MACOSX_BUNDLE ON
)
まず、CMAKE_PREFIX_PATHが必要です。
CMAKE_PREFIX_PATH
は、qtのインストール先の
lib/cmake
です。
次にパッケージを探します。
find_package(Qt6 REQUIRED COMPONENTS Core Widgets)
Core
は必須です。
次にqt_standard_project_setup()
を実行します。
最後にtarget_link_libraries(Philia PRIVATE Qt6::Widgets)
を追加します。
次にbatファイルを作ります。
set QT_PATH=C:/Qt/6.8.1/mingw_64
set QT_TOOL_PATH=C:/Qt/Tools
%QT_TOOL_PATH%\CMake_64\bin\cmake.exe . -G "Ninja" -B Build "-DQT_QMAKE_EXECUTABLE:FILEPATH=%QT_PATH%/bin/qmake.exe" "-DCMAKE_PREFIX_PATH:FILEPATH=%QT_PATH%/mingw_64" "-DCMAKE_C_COMPILER:FILEPATH=C:/Qt/Tools/mingw1310_64/bin/gcc.exe" "-DCMAKE_CXX_COMPILER:FILEPATH=%QT_TOOL_PATH%/mingw1310_64/bin/g++.exe" "-DCMAKE_GENERATOR:STRING=Ninja"
cd Build
ninja
%QT_PATH%/bin/windeployqt.exe .
pause
こんな感じで作ります。
ここはもうコピペでも良いです。
ここの、QT_PATH
とQT_TOOL_PATH
は、各自のパスにすればよいです。
流れを説明すると、Qt内のcmakeをNinjaで行うようにし、Buildフォルダー内に中身を入れるようにしています。その後に、Qt独自のフラグを設定しています。
その後、Buildフォルダーに行きninjaを直接実行し、windeployqt.exeをしようしてdll類をコピーしています。