CMake链接gcrypt错误,未定义引用

时间:2019-11-24 13:59:27

标签: c++ c linux cmake

我试图在cmake中建立到gcrypt lib的静态链接。 我的cmake看起来像这样:

cmake_minimum_required(VERSION 3.15)
set(CMAKE_TRY_COMPILE_TARGET_TYPE "STATIC_LIBRARY")
set(CMAKE_C_COMPILER /usr/bin/gcc)
set(CMAKE_CXX_COMPILER /usr/bin/g++)
project(testin)

set(CMAKE_CXX_STANDARD 14)

file(GLOB test
        "*.h"
        "*.cpp"
        "*.c"
        "./include/*.h"
        "./src/*.c"
        )

add_executable(testin ${test})

ADD_LIBRARY(libgcrypt STATIC IMPORTED)
SET_TARGET_PROPERTIES(libgcrypt PROPERTIES IMPORTED_LOCATION /usr/lib/x86_64-linux-gnu/libgcrypt.a)
target_link_libraries(testin libgcrypt)

我遇到以下错误:

/usr/lib/x86_64-linux-gnu/libgcrypt.a(libgcrypt_la-visibility.o): In function  `gcry_err_make_from_errno':
(.text+0x46): undefined reference to `gpg_err_code_from_errno'
/usr/lib/x86_64-linux-gnu/libgcrypt.a(libgcrypt_la-visibility.o): In function `gcry_error_from_errno':
(.text+0x75): undefined reference to `gpg_err_code_from_errno'
/usr/lib/x86_64-linux-gnu/libgcrypt.a(libgcrypt_la-visibility.o): In function `gcry_strerror':
(.text+0x1): undefined reference to `gpg_strerror'
/usr/lib/x86_64-linux-gnu/libgcrypt.a(libgcrypt_la-visibility.o): In function `gcry_strsource':
(.text+0x11): undefined reference to `gpg_strsource'

..... etc.

我试图在Stack上找到我做错了什么,但未能解决此问题。如果重要,我正在使用Clion。有人可以帮我解决这个问题吗?预先感谢您的帮助。

0 个答案:

没有答案