Создайте общую библиотеку * .dll, используя / include * .a Статическую библиотеку - PullRequest
0 голосов
/ 14 мая 2018

Я хочу создать общую библиотеку * .dll, используя * .a Статическую библиотеку

Ниже приведен мой файл CMakeLists.txt

cmake_minimum_required(VERSION 3.10)
project(Projects)

set(CMAKE_CXX_STANDARD 11)

include_directories(../msys64/mingw64/include)
include_directories("../Program Files/Java/jdk1.8.0_151/include" "../Program Files/Java/jdk1.8.0_151/include/win32")
add_library(Projects1 SHARED main.cpp HelloWorld.cpp )

add_library(libgdal STATIC IMPORTED)
set_target_properties(libgdal PROPERTIES IMPORTED_LOCATION ../msys64/mingw64/lib/libgdal.a)
target_link_libraries(Projects1 A libgdal C )

, который выдает ошибку ниже:

*** No rule to make target '../msys64/mingw64/lib/libgdal.a', needed by 'libProjects1.dll'.  Stop.

хотя, когда я пытаюсь создать Static Lib с изменением, как показано ниже, он работает нормально.

 add_library(Projects1 STATIC main.cpp HelloWorld.cpp )

Я не уверен, как создать общую библиотеку с использованием статической библиотеки

Заранее благодарен за помощь

...