cmake 报错 libcurl not found,但是安装了 libcurl4
cmake error libcurl not found, but libcurl4 is installed
我正在尝试从开源游戏 TA-Spring 编译 Springlobby 版本 268 客户端。然而,最新版本 (271) 编译得很好。但是当我尝试编译版本 268 时,我得到了 CMake-error:
CMake Error at /usr/share/cmake-3.18/Modules/FindCURL.cmake:163 (message):
CURL: Required feature libcurl is not found
Call Stack (most recent call first):
src/CMakeLists.txt:127 (FIND_PACKAGE)
我正在编译 Debian 测试并尝试了库 libcurl4-openssl-dev
、libcurl-gnutls-dev
和 libcurl4-nss-dev
都没有成功。
游戏:https://springrts.com
大厅 0.271:https://github.com/springlobby/springlobby
大厅 0.268:https://github.com/springlobby/springlobby/tree/0.268
从源安装:https://github.com/springlobby/springlobby/wiki/Installfromsource
从 git 回购构建大厅:
git clone --recursive https://github.com/springlobby/springlobby.git
cd springlobby
cmake .
make
make install
Spring大厅版本 271 使用 libcurl4-openssl-dev
,但版本 268 似乎链接到较旧的 libcurl。
版本 268 错误调用 find_package
(src/CMakeLists.txt:127):
FIND_PACKAGE( CURL REQUIRED libcurl )
最后一个参数libcurl
被解释(根据find_package documentation) as the element of COMPONENTS
list, and in case of FindCURL.cmake它被视为PROTOCOL/FEATURE规范。显然,libcurl
既不是协议也不是特征。
提交 https://github.com/springlobby/springlobby/commit/252c4cb156c1442ed9b4faec3f26265bc7c295ff 修复了对
的调用
FIND_PACKAGE(CURL REQUIRED)
Springlobby 0.268 支持拥有大多数玩家的旧大厅服务器以及较新的大厅服务器。
所以如果你想编译和使用旧的 0.268 Springlobby,你必须像我已经写的那样 git 克隆当前版本,然后通过以下方式挑选旧版本:
git checkout 0.268
应用 Tsyvarev 在第 127 行 src/CMakeLists.txt
中发布的修复程序。但您还必须添加:
#include <string>
到文件 src/battlelist.h
和 src/utils/sortutil.h
下面的 include 在这些文件的顶部。
我正在尝试从开源游戏 TA-Spring 编译 Springlobby 版本 268 客户端。然而,最新版本 (271) 编译得很好。但是当我尝试编译版本 268 时,我得到了 CMake-error:
CMake Error at /usr/share/cmake-3.18/Modules/FindCURL.cmake:163 (message):
CURL: Required feature libcurl is not found
Call Stack (most recent call first):
src/CMakeLists.txt:127 (FIND_PACKAGE)
我正在编译 Debian 测试并尝试了库 libcurl4-openssl-dev
、libcurl-gnutls-dev
和 libcurl4-nss-dev
都没有成功。
游戏:https://springrts.com
大厅 0.271:https://github.com/springlobby/springlobby
大厅 0.268:https://github.com/springlobby/springlobby/tree/0.268
从源安装:https://github.com/springlobby/springlobby/wiki/Installfromsource
从 git 回购构建大厅:
git clone --recursive https://github.com/springlobby/springlobby.git
cd springlobby
cmake .
make
make install
Spring大厅版本 271 使用 libcurl4-openssl-dev
,但版本 268 似乎链接到较旧的 libcurl。
版本 268 错误调用 find_package
(src/CMakeLists.txt:127):
FIND_PACKAGE( CURL REQUIRED libcurl )
最后一个参数libcurl
被解释(根据find_package documentation) as the element of COMPONENTS
list, and in case of FindCURL.cmake它被视为PROTOCOL/FEATURE规范。显然,libcurl
既不是协议也不是特征。
提交 https://github.com/springlobby/springlobby/commit/252c4cb156c1442ed9b4faec3f26265bc7c295ff 修复了对
的调用FIND_PACKAGE(CURL REQUIRED)
Springlobby 0.268 支持拥有大多数玩家的旧大厅服务器以及较新的大厅服务器。
所以如果你想编译和使用旧的 0.268 Springlobby,你必须像我已经写的那样 git 克隆当前版本,然后通过以下方式挑选旧版本:
git checkout 0.268
应用 Tsyvarev 在第 127 行 src/CMakeLists.txt
中发布的修复程序。但您还必须添加:
#include <string>
到文件 src/battlelist.h
和 src/utils/sortutil.h
下面的 include 在这些文件的顶部。