您的位置:首页 > 其它

cygwin下编译安装gcc 4.7.2

2014-06-05 11:08 225 查看
文章转载自知识共产共享

首先我得说一个跟gcc没任何关系,但却是每个cygwin使用者必须知道的东西,那就是rebaseall。

这个跟cygwin在windows上模拟出unix的fork函数的实现有关。在cygwin中安装了新包,或者更新了旧包,都可能导致fork发生问题,而fork在unix血统的程序中又是那么地常用。

一旦出了什么你觉得不该出的问题,在尝试解决之前,首先rebaseall一下,很有可能rebaseall之后一切就正常了。

如何rebaseall呢?

关闭所有的cygwin程序

然后Win+R

输入f:\cygwin\bin\ash.exe回车 (我的cygwin装在了F盘)

然后输入/bin/rebaseall

好啦,这就rebaseall完了。

一定记住了。

===============================================================

为了装gcc 4.7.2,得先装三个gcc所依赖的库,它们分别是:gmp, mprf, mpc

由于这三个库之间也有依赖关系,所以你得按我列出来的顺序依次安装

可于以下这些地方下载这三个库的源码包:
http://gmplib.org/ (我下的是gmp-5.0.5.tar.bz2)
http://mpfr.org/ (我下的是mpfr-3.1.1.tar.bz2)
http://www.multiprecision.org/ (我下的是mpc-1.0.1.tar.gz)

下载下来后用tar -xf解开

修改~/.bash_profile,加入以下三行

export LD_LIBRARY_PATH=/usr/local/lib

export LIBRARY_PATH=/usr/local/lib

export CPATH=/usr/local/include

重启cygwin,让这三行生效。

编译gmp:

./configure --disable-static --enable-shared

make

make install

编译mpfr:

./configure --disable-static --enable-shared

make

make install

编译mpc:

./configure

make

make install

编译gcc 4.7.2

mkdir gcc-4.7.2-objdir

cd gcc-4.7.2-objdir

../gcc-4.7.2/configure --prefix=/usr/local/gcc-4.7.2 --enable-languages=c,c++ --disable-bootstrap

make

make install

最后编辑.bash_profile,将gcc 4.7.2的可执行文件所在目录加入PATH环境变量

PATH="/usr/local/gcc-4.7.2/bin:$PATH"

参考:http://cygwin.wikia.com/wiki/How_to_install_a_newer_version_of_GCC (这里的信息有点老,照搬无用)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: