Вот ошибка:
Linking CXX shared library lib2DPrimitive.dll
c:/users/79306/desktop/development-libraries/mingw/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:/Users/79306/Documents/GitHub/2DPrimitiveLib/source/deps/lib/libglfw3.a when searching for -lglfw3
c:/users/79306/desktop/development-libraries/mingw/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:/Users/79306/Documents/GitHub/2DPrimitiveLib/source/deps/lib\libglfw3.a when searching for -lglfw3
c:/users/79306/desktop/development-libraries/mingw/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:/Users/79306/Documents/GitHub/2DPrimitiveLib/source/deps/lib/libglfw3.a when searching for -lglfw3
c:/users/79306/desktop/development-libraries/mingw/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lglfw3: No such file or directory
c:/users/79306/desktop/development-libraries/mingw/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:/Users/79306/Documents/GitHub/2DPrimitiveLib/source/deps/lib/libglfw3.a when searching for -lglfw3
collect2.exe: error: ld returned 1 exit status
mingw32-make[2]: *** [source\CMakeFiles\2DPrimitiveD.dir\build.make:116: source/lib2DPrimitive.dll] Error 1
mingw32-make[1]: *** [CMakeFiles\Makefile2:125: source/CMakeFiles/2DPrimitiveD.dir/all] Error 2
mingw32-make: *** [makefile:100: all] Error 2
Вот source/CmakeLists.txt:
cmake_minimum_required(VERSION 3.2)
set(SOURCES
Point.cpp
Window.cpp)
set(HEADERS
Point.hpp
Window.hpp)
set(EXTERN_LIBS
glad
glfw3)
#Static
add_library(2DPrimitiveS STATIC ${SOURCES} ${HEADERS})
target_link_directories(2DPrimitiveS PRIVATE
deps/lib)
target_include_directories(2DPrimitiveS PRIVATE
deps/include)
target_link_libraries(2DPrimitiveS PRIVATE ${EXTERN_LIBS})
set_target_properties(2DPrimitiveS
PROPERTIES
ARCHIVE_OUTPUT_DIRECTORY "../lib/"
OUTPUT_NAME 2DPrimitive)
#Dynamic
add_library(2DPrimitiveD SHARED ${SOURCES} ${HEADERS})
target_link_directories(2DPrimitiveD PRIVATE
deps/lib)
target_include_directories(2DPrimitiveD PRIVATE
deps/include)
target_link_libraries(2DPrimitiveD PRIVATE ${EXTERN_LIBS})
set_target_properties(2DPrimitiveD
PROPERTIES
ARCHIVE_OUTPUT_DIRECTORY "../lib/"
POSITION_INDEPENDENT_CODE ON
OUTPUT_NAME 2DPrimitive
)
Вот корневной CmakeLusts.txt:
cmake_minimum_required(VERSION 3.2)
project(2DPrimitive CXX)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
add_subdirectory(source)
Структура проекта:
Не собирает динамическую библиотеку.