Исправлена статья fltk-msys2-cmake
This commit is contained in:
parent
36fcf08557
commit
671617dd43
@ -34,18 +34,6 @@ project(fltk-app)
|
|||||||
|
|
||||||
option(STATIC_BUILD "Enable static build" ON)
|
option(STATIC_BUILD "Enable static build" ON)
|
||||||
|
|
||||||
if(MINGW)
|
|
||||||
# Конфигурируем статическую сборку
|
|
||||||
if(STATIC_BUILD)
|
|
||||||
set(BUILD_SHARED_LIBS OFF)
|
|
||||||
set(CMAKE_FIND_LIBRARY_SUFFIXES ".a")
|
|
||||||
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -static")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Отключаем окно команд
|
|
||||||
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -mwindows")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Ищем библиотеку fltk в системе
|
# Ищем библиотеку fltk в системе
|
||||||
# При успешном поиске станут доступны переменные, описанные здесь:
|
# При успешном поиске станут доступны переменные, описанные здесь:
|
||||||
# https://cmake.org/cmake/help/latest/module/FindFLTK.html
|
# https://cmake.org/cmake/help/latest/module/FindFLTK.html
|
||||||
@ -54,12 +42,25 @@ find_package(FLTK REQUIRED)
|
|||||||
# Указываем исходные файлы проекта
|
# Указываем исходные файлы проекта
|
||||||
add_executable(fltk-app main.cpp)
|
add_executable(fltk-app main.cpp)
|
||||||
|
|
||||||
|
if(MINGW)
|
||||||
|
# Конфигурируем статическую сборку
|
||||||
|
if(STATIC_BUILD)
|
||||||
|
set(BUILD_SHARED_LIBS OFF)
|
||||||
|
set_target_properties(fltk-app PROPERTIES LINK_SEARCH_START_STATIC 1)
|
||||||
|
set_target_properties(fltk-app PROPERTIES LINK_SEARCH_END_STATIC 1)
|
||||||
|
set(CMAKE_FIND_LIBRARY_SUFFIXES ".a")
|
||||||
|
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -static")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# Отключаем окно команд
|
||||||
|
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -mwindows")
|
||||||
|
endif()
|
||||||
|
|
||||||
# Добавляем путь к заготовкам fltk для компиляции (в случаях, когда они находятся в произвольном месте)
|
# Добавляем путь к заготовкам fltk для компиляции (в случаях, когда они находятся в произвольном месте)
|
||||||
target_include_directories(fltk-app PUBLIC ${FLTK_INCLUDE_DIRS})
|
target_include_directories(fltk-app PUBLIC ${FLTK_INCLUDE_DIRS})
|
||||||
|
|
||||||
# Подключаем библиотеки
|
# Подключаем библиотеки
|
||||||
# Правильнее было бы использовать ${FLTK_BASE_LIBRARY}, но у меня при статической сборке оставались зависимости
|
target_link_libraries(fltk-app ${FLTK_BASE_LIBRARY})
|
||||||
target_link_libraries(fltk-app fltk)
|
|
||||||
|
|
||||||
# Также добавляем необходимые библиотеки при сборке на windows
|
# Также добавляем необходимые библиотеки при сборке на windows
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
|
Loading…
Reference in New Issue
Block a user