腹针引气归元:MinGW与编译libcurl(附加openssl,zlib,libssh)
来源:百度文库 编辑:九乡新闻网 时间:2024/05/15 09:58:00
一、MinGW的安装与配置
到http://sourceforge.net/projects/mingw/ 手动去下载最新的MinGW,或使用MinGW-5.1.4.exe,自动下载。但后者往往不能下载到最新的稳定包。
1、手动下载说明,参见:http://www.mingw.org/wiki/HOWTO_Install_the_MinGW_GCC_Compiler_Suite
可从:http://sourceforge.net/projects/mingw/ 选择包下载。
2、运行 MinGW-5.1.4.exe 的话,选择 Candidate,一般会下载最新的包,选择如下几项:
MinGW base tools
g++ compiler
MingGW Make
默认路径C:\MinGW,我装在 D:\cplusplus\mingw
根据:http://wiki.codeblocks.org/index.php?title=MinGW_installation,需要下载如下必要的包:
* http://prdownloads.sf.net/mingw/gcc-core-3.4.5-20060117-1.tar.gz
* http://prdownloads.sf.net/mingw/gcc-g++-3.4.5-20060117-1.tar.gz
* http://prdownloads.sf.net/mingw/mingw-runtime-3.9.tar.gz
* http://prdownloads.sf.net/mingw/mingw-utils-0.3.tar.gz
* http://prdownloads.sf.net/mingw/w32api-3.6.tar.gz
* http://prdownloads.sf.net/mingw/binutils-2.17.50-20060824-1.tar.gz
* http://prdownloads.sf.net/mingw/mingw32-make-3.81-1.tar.gz
另外一个是调试器:
* http://prdownloads.sf.net/mingw/gdb-6.3-2.exe
安装完后就配置环境变量吧。
控制面板--〉系统--〉系统详细设置--〉环境变量
MINGW_PATH=D:\cplusplus\mingw
C_INCLUDE_PATH=%MINGW_PATH%\include;%MINGW_PATH%\lib\gcc\mingw32\3.4.5\include
CPLUS_INCLUDE_PATH=%MINGW_PATH%\include\c++\3.4.5;%MINGW_PATH%\include\c++\3.4.5\mingw32;%MINGW_PATH%\include\c++\3.4.5\backward;%C_INCLUDE_PATH%
LIBRARY_PATH=%MINGW_PATH%\lib;%MINGW_PATH%\lib\gcc\mingw32\3.4.5
PATH=%MINGW_PATH%\bin;%MINGW_PATH%\libexec\gcc\mingw32\3.4.5
注意:上面的很多3.4.5这个是gcc的版本号,要以真实的文件夹为准。
现在开一个CMD吧
输入g++ --version
看到以下信息的话就成功一半了。
g++ (GCC) 3.4.5 (mingw special)
Copyright (C) 2004 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
继续新建一个test.cpp文件
内容如下
#include
using namespace std;
int main(int argc, char** argv)
{
cout << "Yeah, MinGW!" << endl;
return 0;
}
在cmd下面输入编译命令
g++ -o test test.cpp
这次是什么都没看到就是成功了。
接着输入test.exe
看见以下的信息了么
Yeah, MinGW!
现在,可以在XP下面编写你的C或者C++程序了。
二、编译libcurl(附加openssl,zlib,libssh)
1
openssl-0.9.8m目录把out32dll复制一份改名为out,并把ssleay32.lib/dll改名为ssl32.lib/dll
libssh2-1.2.4把win32\Release_dll里的libssh2.lib和libssh2.dll复制一份到win32目录
zlib-1.2.4把projects\visualc6\Win32_DLL_Release里的zlib1.lib和zlib1.dll复制一份到zlib-1.2.4目录并改名为z.lib和z.dll
2代码改错
libssh2-1.2.4\src\session.c中添加typedef int socklen_t;
libssh2-1.2.4\src\misc.c中把unsigned long long改为unsigned long,并把10ULL改为10
curl-7.20.0.gz\lib\ssh.c中把#ifdef HAVE_LIBSSH2_KNOWNHOST_API - #endif屏蔽
3
打开DOS,进入curl-7.20.0.gz\lib目录
set ZLIB_PATH=C:\zlib-1.2.4
set OPENSSL_PATH=C:\openssl-0.9.8m
set LIBSSH2_PATH=C:\libssh2-1.2.4
mingw32-make -f Makefile.m32 SSL=1 SSH2=1 ZLIB=1
编译Demo的Release版本时要在setting->link->General->generate debug info 或者 link incrementally前面打勾。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/long458/archive/2010/03/22/5402888.aspx
到http://sourceforge.net/projects/mingw/ 手动去下载最新的MinGW,或使用MinGW-5.1.4.exe,自动下载。但后者往往不能下载到最新的稳定包。
1、手动下载说明,参见:http://www.mingw.org/wiki/HOWTO_Install_the_MinGW_GCC_Compiler_Suite
可从:http://sourceforge.net/projects/mingw/ 选择包下载。
2、运行 MinGW-5.1.4.exe 的话,选择 Candidate,一般会下载最新的包,选择如下几项:
MinGW base tools
g++ compiler
MingGW Make
默认路径C:\MinGW,我装在 D:\cplusplus\mingw
根据:http://wiki.codeblocks.org/index.php?title=MinGW_installation,需要下载如下必要的包:
* http://prdownloads.sf.net/mingw/gcc-core-3.4.5-20060117-1.tar.gz
* http://prdownloads.sf.net/mingw/gcc-g++-3.4.5-20060117-1.tar.gz
* http://prdownloads.sf.net/mingw/mingw-runtime-3.9.tar.gz
* http://prdownloads.sf.net/mingw/mingw-utils-0.3.tar.gz
* http://prdownloads.sf.net/mingw/w32api-3.6.tar.gz
* http://prdownloads.sf.net/mingw/binutils-2.17.50-20060824-1.tar.gz
* http://prdownloads.sf.net/mingw/mingw32-make-3.81-1.tar.gz
另外一个是调试器:
* http://prdownloads.sf.net/mingw/gdb-6.3-2.exe
安装完后就配置环境变量吧。
控制面板--〉系统--〉系统详细设置--〉环境变量
MINGW_PATH=D:\cplusplus\mingw
C_INCLUDE_PATH=%MINGW_PATH%\include;%MINGW_PATH%\lib\gcc\mingw32\3.4.5\include
CPLUS_INCLUDE_PATH=%MINGW_PATH%\include\c++\3.4.5;%MINGW_PATH%\include\c++\3.4.5\mingw32;%MINGW_PATH%\include\c++\3.4.5\backward;%C_INCLUDE_PATH%
LIBRARY_PATH=%MINGW_PATH%\lib;%MINGW_PATH%\lib\gcc\mingw32\3.4.5
PATH=%MINGW_PATH%\bin;%MINGW_PATH%\libexec\gcc\mingw32\3.4.5
注意:上面的很多3.4.5这个是gcc的版本号,要以真实的文件夹为准。
现在开一个CMD吧
输入g++ --version
看到以下信息的话就成功一半了。
g++ (GCC) 3.4.5 (mingw special)
Copyright (C) 2004 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
继续新建一个test.cpp文件
内容如下
#include
using namespace std;
int main(int argc, char** argv)
{
cout << "Yeah, MinGW!" << endl;
return 0;
}
在cmd下面输入编译命令
g++ -o test test.cpp
这次是什么都没看到就是成功了。
接着输入test.exe
看见以下的信息了么
Yeah, MinGW!
现在,可以在XP下面编写你的C或者C++程序了。
二、编译libcurl(附加openssl,zlib,libssh)
1
openssl-0.9.8m目录把out32dll复制一份改名为out,并把ssleay32.lib/dll改名为ssl32.lib/dll
libssh2-1.2.4把win32\Release_dll里的libssh2.lib和libssh2.dll复制一份到win32目录
zlib-1.2.4把projects\visualc6\Win32_DLL_Release里的zlib1.lib和zlib1.dll复制一份到zlib-1.2.4目录并改名为z.lib和z.dll
2代码改错
libssh2-1.2.4\src\session.c中添加typedef int socklen_t;
libssh2-1.2.4\src\misc.c中把unsigned long long改为unsigned long,并把10ULL改为10
curl-7.20.0.gz\lib\ssh.c中把#ifdef HAVE_LIBSSH2_KNOWNHOST_API - #endif屏蔽
3
打开DOS,进入curl-7.20.0.gz\lib目录
set ZLIB_PATH=C:\zlib-1.2.4
set OPENSSL_PATH=C:\openssl-0.9.8m
set LIBSSH2_PATH=C:\libssh2-1.2.4
mingw32-make -f Makefile.m32 SSL=1 SSH2=1 ZLIB=1
编译Demo的Release版本时要在setting->link->General->generate debug info 或者 link incrementally前面打勾。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/long458/archive/2010/03/22/5402888.aspx
MinGW与编译libcurl(附加openssl,zlib,libssh)
zlib
比较MingW与Cygwin(搜集) - 姚中凯的日志 - 网易博客
地方教育附加与教育费附加的异同
SQL Server2000数据库分离与附加-图形
SQL Server 2000 数据库分离与附加-命令行方式
Apache的静态编译与动态编译详解 - 小灰灰的专栏 - CSDN博客
openssl简易文档
OpenSSL使用指南2
附加扣除
AIX 上 openssl 版本冲突
《openssl 编程》之 RSA(转载)
编译 运行
sersync 编译
编译原理
COM 组件设计与应用(七)——编译、注册、调用
VC知识库文章 - COM 组件设计与应用(七)——编译、注册
中央编译局-理论研究-政府创新研究 渐进政治改革与民主的政治转型
使用ant进行android开源voip工程sipdroid的编译与apk生成
用openssl编写SSL,TLS程序
OpenSSL 常用函数——证书操作
使用 OpenSSL API 进行安全编程 2
SDL游戏开发教程01(环境准备 mingw eclipse)
生命密码附加说明