go语言编译环境gccgo的搭建过程
gcc新版本编译gccgo
前提条件:
GNU Multiple Precision Library (GMP) version 4.3.2 (or later)
Necessary to build GCC. If a GMP source distribution is found in a subdirectory of your GCC sources named gmp, it will be built together with GCC. Alternatively, if GMP is already installed but it is not in your library search path, you will have to configure with the --with-gmp configure option. See also --with-gmp-lib and --with-gmp-include.
MPFR Library version 2.4.2 (or later)
Necessary to build GCC. It can be downloaded from http://www.mpfr.org/. If an MPFR source distribution is found in a subdirectory of your GCC sources named mpfr, it will be built together with GCC. Alternatively, if MPFR is already installed but it is not in your default library search path, the --with-mpfr configure option should be used. See also --with-mpfr-lib and --with-mpfr-include.
MPC Library version 0.8.1 (or later)
Necessary to build GCC. It can be downloaded from http://www.multiprecision.org/. If an MPC source distribution is found in a subdirectory of your GCC sources named mpc, it will be built together with GCC. Alternatively, if MPC is already installed but it is not in your default library search path, the --with-mpc configure option should be used. See also --with-mpc-lib and --with-mpc-include.
一个一个顺序安装后,
a) 安装gmp
make
make check
make install
b) 安装MPFR
c) 安装mpc
需要提前在linux中或者windows中安装svn软件。
linux中安装subversion windows中安装TortoiseSVN
安装命令(一行一个命令):
svn checkout svn://gcc.gnu.org/svn/gcc/branches/gccgo gccgo
mkdir objdir
cd objdir
../gccgo/configure --enable-languages=c,c++,go
make
make install
make时的错误:
/webapp/project/objdir/x86_64-unknown-linux-gnu/libgcc':
configure: error: cannot compute suffix of object files: cannot compile
解决办法:从stackoverflow中查到的
This issue is caused by dyanmic link library path issue when the test programs try to link against libmpc/libmpfr/libgmp.
Append below environment variable to allow ld link against the correct so file:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/path/to/mpc/lib/
Then try build gcc again.
耗时一个工作日,编译完成。
如此便可在内核版本很低,gcc版本为gcc 版本 4.1.2 20080704 (Red Hat 4.1.2-55)的情况下,通过编译安装新版本的gcc version 5.0.0 20150116 (experimental) (GCC) ,直接编译go语言的源代码文件。编译命令类似c/c++的编译。如果有文件依赖关系,需要import non-standard package,使用如下命令即可:
go build -compiler gccgo main.go
黑河网站建设公司创新互联建站,黑河网站设计制作,有大型网站制作公司丰富经验。已为黑河成百上千家提供企业网站建设服务。企业网站搭建\外贸网站制作要多少钱,请找那个售后服务好的黑河做网站的公司定做!
新闻标题:go语言编译环境gccgo的搭建过程
网址分享:http://scyanting.com/article/gccsoh.html