c++获取sftp服务器文件

1,cmd登录

  命令:sftp -P 22 username@127.0.0.1

2,sftp工具:WinSCP

3,从github下载win32平台下的sftp代码https://github.com/chenzhongkun/ftp_sftp

  sftp文件上传下载依赖libssh2,libss2依赖openssl

  libssh2 是一个 C 函数库,用来实现 SSH2 协议

  OpenSSL整个软件包大概可以分成三个主要的功能部分:SSL协议库、应用程序以及密码算法

4,将win32平台下代码转为x64平台下

4.1,编译openssl

        https://github.com/openssl/openssl,选择openssl-OpenSSL_1_0_2-stable分支下载

   这个程序还用到了libeary32.lib,是openssl生成的静态库,这里没有用到动态链接。我编译了openssl,不过后面发现程序里面自带的libeary.lib不用替换也可以。

  openssl编译过程(64位):

  1,安装perl(https://strawberryperl.com/), nasm(https://www.nasm.us/),准备源码(https://github.com/openssl/openssl)

  2,参考官方文档(https://github.com/openssl/openssl/blob/master/NOTES-WINDOWS.md,非常细致)及(https://bbs.csdn.net/topics/392193545?page=1,https://blog.csdn.net/YAOJINGKAO/article/details/53041165?locationNum=10&fps=1)

  3,以管理员身份执行64位vs命令行工具,进入openssl文件夹依次执行一下命令

   a.perl Configure VC-WIN64A

      参数     含义
    debug-VC-WIN32     编译32位debug版本
    VC-WIN32     编译32位release版本
    debug-VC-WIN64A     编译64位debug版本
    VC-WIN64A     编译64位release版本

   b.ms\do_win64a.bat(这里很多博客直接写的ma\do_ms.bat,不对,坑。。。)

         执行这一步之后,在ms目录下会生成nt.mak和ntdll.mak两个编译配置文件

        nt.mak 用于生成静态lib库
        ntdll.mak 用于生成动态dll库

   c.

    【编译openssl静态链接库】 依次执行命令如下:

    nmake -f ms\nt.mak
    nmake -f ms\nt.mak test
    nmake -f ms\nt.mak install

    【编译openssl动态链接库】  依次执行命令如下:

    nmake -f ms\ntdll.mak
    nmake -f ms\ntdll.mak test
    nmake -f ms\ntdll.mak install

  成功则会在C:\openss\win64目录下生成bin、include、lib、ssl四个文件夹,就可以找到libeary32.lib文件了

4.2,编译libssh2

  版本:libssh2-1.8.0,应该是直接使用cmake生成64位vs工程 ?。有报错,不用管。然后用vs打开,进行编译,会在输出目录下看到libssh2.lib

  

 4.3,将ibssh2-1.8.0\buildc\src\Release下libssh2.lib拷贝到sftp\libssh2\下替换。

心得:

LINK开头的错误、未定义标识符的错误,一般都是链接lib库的问题,没有找到对应的lib库或者lib库的版本不对,或者动态库的问题。

配置环境等等先看官方文档,官方文档一般写的很好,而且各种可能会出现的问题都会写到,比起靠百度的运气好很多。cudnn的安装也是。

posted @   cheng4632  阅读(1102)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
· SQL Server 2025 AI相关能力初探
点击右上角即可分享
微信分享提示