首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安装libssh2时未创建libssh2_config.h

安装libssh2时未创建libssh2_config.h
EN

Stack Overflow用户
提问于 2013-10-10 14:08:50
回答 3查看 2K关注 0票数 4

标题或多或少描述了我在Ubuntu机器上遇到的问题。我按照说明中给出的步骤安装了libssh2:

./configure make make check (所有3个测试都通过了) sudo make install (由于权限,我必须使用sudo )

然后,我尝试使用libssh2页面中给出的一些示例,它们都具有以下内容:

代码语言:javascript
复制
#include "libssh2_config.h"

却找不到。在usr/local/include中创建以下3个文件:

代码语言:javascript
复制
libssh2.h
libssh2_publickey.h
libssh2_sftp.h

我有什么地方做错了吗?

谢谢!

EN

回答 3

Stack Overflow用户

发布于 2013-10-10 17:13:54

我仍然不明白为什么没有创建这个文件,但这并不是真正必要的,因为删除了以下#ifdefs:

代码语言:javascript
复制
#ifdef HAVE_WINDOWS_H
#include <windows.h>
#endif
#ifdef HAVE_WINSOCK2_H
#include <winsock2.h>
#endif
#ifdef HAVE_SYS_SOCKET_H
#include <sys/socket.h>
#endif
#ifdef HAVE_NETINET_IN_H
#include <netinet/in.h>
#endif
#ifdef HAVE_UNISTD_H
#include <unistd.h>
#endif
#ifdef HAVE_ARPA_INET_H
#include <arpa/inet.h>
#endif

并简单地将(在linux上)替换为:

代码语言:javascript
复制
#include <sys/socket.h>
#include <netinet/in.h>
#include <unistd.h>
#include <arpa/inet.h>

除了删除代码中#ifdefs的其余部分之外,还解决了这个问题。

票数 2
EN

Stack Overflow用户

发布于 2014-02-24 16:45:34

libssh2_config.h在example目录中,您需要复制到您的项目中。

票数 1
EN

Stack Overflow用户

发布于 2021-04-13 19:37:15

在win32目录、vms目录和os400目录中有libssh2_config.h文件。您需要将其中一个复制到您的项目中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19288277

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档