常见库或开源软件的编译方法

如无特殊说明,默认为在Windows Vista + Microsoft Visual Studio 2005环境编译

1 Openssl编译方法

  1. www.openssl.org下载最新源码
  2. www.activestate.com下载并安装ActivePerl
  3. 进入Visual Studio 2005命令行
  4. cd /d [openssl解压目录]
  5. perl Configure VC-WIN32
  6. ms\do_ms.bat
  7. nmake -f ms\ntdll.mak
  8. 如无意外,在[openssl解压目录]\out32dll目录下将生成DLL和对应的LIB文件

2 curl

2.1 VC编译

  1. 到curl.haxx.se下载最新版本的curl源码包
  2. 将打开[curl解压目录]\lib目录下的所有文件名为curllib.*改成libcurl.*
  3. 使用UE替换[curl解压目录]\lib目录下所有文件中的字符串curllib为libcurl
  4. 打开libcurl工程文件
  5. 加入USE_SSLEAY USE_OPENSSL CURL_DISABLE_LDAP HAVE_ZLIB_H HAVE_LIBZ预定义
  6. 为了后期直接通过替换DLL文件升级,将curllib改成dll编译方式
  7. 定义openssl头文件目录和库文件目录
  8. 定义zlib头文件目录和库文件目录
  9. 加入附加库ws2_32.lib ssleay32.lib libeay32.lib winmm.lib zlib1.lib
  10. 编译。如果你人口不至于很差的话,应该会生成dll和lib库文件。
  11. 进入Visual Studio 2005命令行
  12. cd /d [curl解压目录]\src
  13. nmake -f Makefile.vc8
  14. 恭喜,这里应该就生成了curl.exe文件

2.2 BC编译

  1. 到[openssl解压目录]\out32dll目录下执行:
    implib -a libeay32_bcb.lib libeay32.dll
    implib -a ssleay32_bcb.lib ssleay32.dll
    或者
    coff2omf -lib:ms ssleay32.lib ssleay32_bcb.lib
    coff2omf -lib:ms libeay32.lib libeay32_bcb.lib
  2. cd /d [curl解压目录]\lib
  3. make -f Makefile.b32

3 Wireshark

  1. www.wireshark.org上下载最新版本
  2. 安装cygwin,注意一定要安装Devel下面的flex,bison; 还要安装Perl, Archive下面的upzip以及Web下面的wget
  3. 找到config.nmake
    将WIRESHARK_LIBS=c:\wireshark-libs-1.0改成你存放lib的目录
    将CYGWIN_PATH=c:\cygwin\bin改成你的目录
    将MSVC_VARIANT改成你当前使用的版本
  4. 下载wireshark需要的库文件
    nmake -f Makefile.nmake setup
  5. nmake -f Makefile.nmake all
  6. 提示ascend-scanner.c和k12text.c和scanner.c中ascendwrap和K12Text_wrap宏定义参数不对,直接使用UE替换wireshark源代码目录下的所有
    wrap(n) 1为
    wrap()
  7. scanner.c有符号和无符号不匹配,使用UE替换wireshark源代码目录下的所有
    (yy_n_chars), (size_t) num_to_read );为
    (yy_n_chars),  num_to_read );
  8. lemonflex-tail.inc提示47行什么const相关的错误,直接将TEXT_FUNC (const char *text)去掉const,改成:
    TEXT_FUNC (char *text)
  9. packet-e212.c和packet-h264.c提示编码问题
    使用UE保存为UTF8格式即可

4 SQLite

  1. http://www.sqlite.org/download.html下载最新版本,注意是sqlite-source-*_*_*.zip这样的文件名,不是整个源代码包
  2. 解压
  3. 新建工程文件,添加除了tcpsqlite.c之外的所有C文件
  4. 预定义中加入NO_TCL
  5. 加入sqlite3.def模块定义文件
  6. 编译

发表新评论

此内容将保密,不会被其他人看见。

快速链接

JSky
Pangolin
Pangolin帮助手册
渗透测试

投票

赞助

NOSEC所有开发的安全工具和资源都是免费的,以后也都会免费。如果您认为这些工具和资源对您有所帮助的话,您可以考虑进行一些赞助。您的支持将加快开发进度以及版本更新的速度,同时也能够让我们有动力开发更多的安全工具来支持您的工作 ;)
赞助你们我有什么好处?

用户登录