相关疑难解决方法(0)

ExternalProject_Add何时构建?

我想建立openssl并将我的项目链接到它.在我的项目中,我有一个名为net的库,它是使用openssl的部分.所以在我的net\CMakeList中,我补充道

include_directories(
    ../
  + ../../../ext/openssl/inc32/
)
add_library(net STATIC ${sources})
+ ADD_DEPENDENCIES(net openssl)
Run Code Online (Sandbox Code Playgroud)

在我用于组织所有外部库的ext文件夹中,我在名为openssl的文件夹中有一个全新的解压缩openssl源代码.然后我编辑了ext\CmakeList

message(STATUS "Configuring OpenSSL")
set(openssl_dir openssl)
if (CMAKE_CL_64)
include(ExternalProject)

set(OPENSSL_CONFIGURE perl\ Configure\ VC-WIN64A)
set(OPENSSL_MAKE  ms\\do_win64a\ &&\ nmake\ -f\ ms\\ntdll.mak)

ExternalProject_Add(openssl
    PREFIX openssl
    #-- Download Step ----------
    SOURCE_DIR ${CMAKE_SOURCE_DIR}/ext/openssl
    #--Configure step ----------
        CONFIGURE_COMMAND ${OPENSSL_CONFIGURE}
    #--Build Step ----------
    BUILD_COMMAND ${OPENSSL_MAKE}
    BUILD_IN_SOURCE 1
    #--install Step ----------
    INSTALL_COMMAND ""} 
)

endif()
Run Code Online (Sandbox Code Playgroud)

当我构建时,编译器抱怨它无法找到包含文件,并且根本没有构建openssl源代码,因为没有out32dll和inc32.

我的问题是:ExternalProject_Add何时实际构建项目?如果我根据openssl创建我的网库,这是否意味着当我构建网络时,它需要先检查并构建openssl?

windows 64-bit openssl cmake external-project

5
推荐指数
2
解决办法
4434
查看次数

标签 统计

64-bit ×1

cmake ×1

external-project ×1

openssl ×1

windows ×1