【发布时间】:2019-09-04 11:13:32
【问题描述】:
我正在尝试使用 cmake 3.15.2 在 Windows 10 上使用 openssl 编译 restbed。
我按照here提供的说明进行操作
因此安装了openssl,如下:
cd restbed\dependency\openssl
perl Configure shared VC-WIN64A
nmake
nmake test
nmake install
然后我用cmake构建restbed:
cmake -G "Visual Studio 15 2017 Win64" -DBUILD_EXAMPLES=YES -DBUILD_TESTS=YES ..
但我总是以这个错误结束:
CMake Error at cmake/Findopenssl.cmake:23 (message):
Failed to locate OpenSSL dependency. see restbed/dependency/openssl;
./config shared; make all
Call Stack (most recent call first):
CMakeLists.txt:49 (find_package)
尽管在我的配置命令中使用了shared。
我查看了 Findopenssl.cmake,发现大部分搜索到的文件都从我的计算机中丢失了。
find_library( ssl_LIBRARY_STATIC libssl.a ssleay32.lib HINTS "${PROJECT_SOURCE_DIR}/dependency/openssl/out32dll" "${PROJECT_SOURCE_DIR}/dependency/openssl" "/usr/local/opt/openssl/lib" "/usr/lib" "/usr/local/lib" "/opt/local/lib" )
find_library( crypto_LIBRARY_STATIC libcrypto.a libeay32.lib HINTS "${PROJECT_SOURCE_DIR}/dependency/openssl/out32dll" "${PROJECT_SOURCE_DIR}/dependency/openssl" "/usr/local/opt/openssl/lib" "/usr/lib" "/usr/local/lib" "/opt/local/lib" )
find_library( ssl_LIBRARY_SHARED libssl.so libssl.dylib ssleay32.dll HINTS "${PROJECT_SOURCE_DIR}/dependency/openssl/out32dll" "${PROJECT_SOURCE_DIR}/dependency/openssl" "/usr/local/opt/openssl/lib" "/usr/lib" "/usr/local/lib" "/opt/local/lib" )
find_library( crypto_LIBRARY_SHARED libcrypto.so libcrypto.dylib libeay32.dll HINTS "${PROJECT_SOURCE_DIR}/dependency/openssl/out32dll" "${PROJECT_SOURCE_DIR}/dependency/openssl" "/usr/local/opt/openssl/lib" "/usr/lib" "/usr/local/lib" "/opt/local/lib" )
find_path( ssl_INCLUDE openssl/ssl.h HINTS "${PROJECT_SOURCE_DIR}/dependency/openssl/inc32" "${PROJECT_SOURCE_DIR}/dependency/openssl/include" "/usr/local/opt/openssl/include" "/usr/include" "/usr/local/include" "/opt/local/include" )
另外,貌似大部分都是linux路径。
我四处搜索,发现 this question 非常相似,但在 debian 而不是 windows 上工作。 我没有找到我的 openssl 安装中缺少的内容。
知道这里可能缺少什么吗?
谢谢!
【问题讨论】:
标签: windows openssl 64-bit restbed