本文介绍Mtd的编译方式

1. 首先要有编译好的openssl库,具体编译方式不在此介绍,可以参照:http://blog.csdn.net/haiyan_qi/article/details/23608037

2. zlib库的编译,以zlib-1.2.5为例,在contrib\vstudio文件夹中有vc9和vc10的工程文件,打开编译就行,需要注意的是要把预处理器定义中的ZLIB_WINAPI宏去掉。

3. 将编译好的openssl和zlib的头文件和库文件放到一个统一的库文件夹下,假设是C:\lib,放好后lib的文件目录结构如下:

c:\lib\zlib  (放lib文件)

c:\lib\openssl (放lib文件)

c:\lib\inc\zlib (放头文件)

c:\lib\inc\openssl (放头文件)

4. 开始编译libssh

4.1 环境准备:需要安装activeperl,cmake

4.2 打开vs的命令提示窗口,以vs2008为例,命令提示窗口在 开始菜单->Microsoft Visual Studio 2008->Visual Studio Tools->Visual Studio 2008 命令提示,以下操作都需要在该命令提示窗口中执行

4.3 cd 到libssh的程序目录,mkdir build,cd build

4.4 执行以下命令:

cmake -DCMAKE_INSTALL_PREFIX=c:\lib -DZLIB_INCLUDE_DIR=c:\lib\inc -DZLIB_LIBRARY=c:\lib\zlib -DOPENSSL_LIBRARIES=c:\lib\openssl -DOPENSSL_INCLUDE_DIRS=c:\lib\inc -DCMAKE_BUILD_TYPE=Debug ..

4.5 执行完以上命令后,build文件夹内会生成libssh.sln的工程文件,打开工程文件,编译ssh_shared这个项目,就可以生成libssh的库文件。需要注意的,在预处理器定义中需要加上,HAVE_OPENSSL_AES_H HAVE_OPENSSL_DES_H HAVE_OPENSSL_BLOWFISH_H这三个宏定义,否则libssh找不到对应的加密算法

4.6 生成的库文件在build\src\Debug文件夹下

5.在使用libssh库时,如果使用的是静态库,预处理器定义中需要加上LIBSSH_STATIC

Logo

更多推荐