安装libssh include libsshpp.hpp 我用LIPSSH编写C++程序,所以我四处看看来安装库。首先,我通过sudo apt get install libssh dev安装,但是/usr/include/libssh中没有libsshpp.hpp

安装libssh include libsshpp.hpp 我用LIPSSH编写C++程序,所以我四处看看来安装库。首先,我通过sudo apt get install libssh dev安装,但是/usr/include/libssh中没有libsshpp.hpp,c++,libssh,C++,Libssh,然后我克隆git://git.libssh.org/projects/libssh.git libssh在~directory中运行/build/build\u make.sh,它在~/libssh/include中有libsshpp.hpp,但不在/usr/include/libssh中 我想这是因为它们的版本不同,更新的版本有libsshpp.hpp,然后我尝试将libsshpp.hpp文件复制到/usr/include/libssh,但在examples文件夹中编译示例libsshpp.c

然后我克隆
git://git.libssh.org/projects/libssh.git libssh
在~directory中运行
/build/build\u make.sh
,它在
~/libssh/include
中有libsshpp.hpp,但不在
/usr/include/libssh

我想这是因为它们的版本不同,更新的版本有libsshpp.hpp,然后我尝试将libsshpp.hpp文件复制到
/usr/include/libssh
,但在examples文件夹中编译示例libsshpp.cpp时出现了很多错误,所以我认为这不是解决方案


我的问题是如何安装最新版本的libssh,并将头自动添加到
/usr/include/libssh
中,而不仅仅是在它自己的安装文件夹中

如果您确实想这样做,可以修改include/libssh/CMakeLists.txt并添加

libsshpp.hpp

libssh\u HDRS变量。由于默认情况下未安装,因此可能不受正式支持。

您最好不要使用git存储库中的代码,因为这些头与系统上实际安装的
libssh
的代码不匹配

因此,我建议您撤销您所做的更改(删除您复制或创建的文件或符号链接),而是使用
apt
安装开发部件。通过执行以下操作,可以找出安装了哪些头文件:

rpm -ql libssh-dev
在我的系统(Fedora)上,这个包实际上被称为
libssh-devel
。当我跑的时候

rpm -ql libssh-devel
我得到以下输出(部分)

如您所见,
libssh.h
头位于
libssh
目录中,因此您可以从代码中使用

#include <libssh/libssh.h>

祝你好运。

在Ubuntu上,你可以用

apt-get install libssh-dev
然后,如果您正在手动编译,请使用
-lssh
链接库

gcc -lssh ssh-program.c
请在我们以后安装头文件时打开一个bug!谢谢
0.6.3 (c) 2003-2014 Aris Adamantiadis, Andreas Schneider, and libssh contributors. Distributed under the LGPL, please refer to COPYING file for information about your rights
apt-get install libssh-dev
gcc -lssh ssh-program.c