zoukankan      html  css  js  c++  java
  • GCC安装

    1. 下载 H2+b3y-1a] 
    WTJ/u001E{ /u001BM$ 
    在GCC网站上(http://gcc.gnu.org/)或者通过网上搜索可以查找到下载资源。目前GCC的最新版本为 3.4.0。可供下载的文件一般有两种形式:gcc-3.4.0.tar.gz和gcc-3.4.0.tar.bz2,只是压缩格式不一样,内容完全一致,下载其中一种即可。 Xb/u001CB/u001F(</0+ 
    b5LToy:/u0003/u0016/u0007 
    2. 解压缩 eNK[/u0014P=/u001C- 
    Y/u0019E~IO5 /u0015/u0017 
    根据压缩格式,选择下面相应的一种方式解包(以下的“%”表示命令行提示符): 5/u001A@m ,*n&[ 
    /+%~7Bi]z 
    % tar xzvf gcc-3.4.0.tar.gz ^EX"f/u0018RwNi 
    或者 UJ/u0012I2L-;Ul 
    % bzcat gcc-3.4.0.tar.bz2 | tar xvf - u/u001A]IbT/u001AJ'/u0001 
    /u0008I/u0017k/u00130g(-d 
    新生成的gcc-3.4.0这个目录被称为源目录,用  ${srcdir}表示它。以后在出现  ${srcdir}的地方,应该用真实的路径来替换它。用pwd命令可以查看当前路径。 /u000E/u001BE/u001D/u0011n/u0002/u0001M/u001E 
    /u0016Z>9@/u0008)/u000Fwo 
    在  ${srcdir}/INSTALL目录下有详细的GCC安装说明,可用浏览器打开index.html阅读。 $H/u001D)^/u001Do!/u0019/u0010 
    W;vNmg/u000E}mn 
    3. 建立目标目录 /u00150/u001B p/u0012/u0007ZvW 
    g/u001E/u0005>l/u001AZ/u0017s 
    目标目录(用  ${objdir}表示)是用来存放编译结果的地方。GCC建议编译后的文件不要放在源目录  ${srcdir}中(虽然这样做也可以),最好单独存放在另外一个目录中,而且不能是  ${srcdir}的子目录。 ,/u000FBk5 ( /u0010e 
    $/u0003dL..QH^K 
    例如,可以这样建立一个叫 gcc-build 的目标目录(与源目录  ${srcdir}是同级目录): B8@mL-/u0003Z-; 
    /u001A/nl(tU/u000E#j 
    % mkdir gcc-build vW+6_41/u0011ZM 
    % cd gcc-build "hI/u0006Yf7r## 
    c{q+h/u0013/u001A V= 
    以下的操作主要是在目标目录   ${objdir} 下进行。 /u0008Liq/u0004o)/u001Bm/u0015 
    9{Hs1/u0019 MD[ 
    4. 配置 u8f//u0002/u0003/u000F)m/u000E 
    /u0006e/u0019!/u001Cu/u0016]l/u0004 
    配置的目的是决定将GCC编译器安装到什么地方(  ${destdir}),支持什么语言以及指定其它一些选项等。其中,  ${destdir}不能与  ${objdir}或  ${srcdir}目录相同。 sI,cX#h&Y 
    ./u0011@/u0006/u001CH:/u001AP 
    配置是通过执行  ${srcdir}下的configure来完成的。其命令格式为(记得用你的真实路径替换  ${destdir}): z/u00105@/u000FX/u0007FaQ 
    '/u0001| /u0014H+5# 
    %   ${srcdir}/configure --prefix=  ${destdir} [其它选项] /u0017f/u001F/u000F-~/u001AY/u0006/u0007 
    UytMnJ/u001D8/u001C8 
    例如,如果想将GCC 3.4.0安装到/usr/local/gcc-3.4.0目录下,则  ${destdir}就表示这个路径。 e)sR$]i:v 
    z0[/u0005@O)Sj 
    在我的机器上,我是这样配置的: 6/u0011?a/u0006`'&/u001D/u0014 
    /u0007_,drOF|e/u0012 
    % ../gcc-3.4.0/configure --prefix=/usr/local/gcc-3.4.0 --enable-threads=posix --disable-checking --enable--long-long --host=i386-redhat-linux --with-system-zlib --enable-languages=c,c++,java /u0005t/,Y<9{/u001Cw 
    6*Z7J/u0019iQ 0 
    将GCC安装在/usr/local/gcc-3.4.0目录下,支持C/C++和JAVA语言,其它选项参见GCC提供的帮助说明。 -/u0019/u001C/u0008lo?16w 
    f/ P0/u0010%/u001E/u0013/u001A 
    5. 编译 /u0014s~7/u0019a-/u0014J/u001D 
    S/u0016qa9+/u000E' [ 
    % make /u0003x+Yo#u22/u0013 
    )/u0016R/u000Fa/u0014: s> 
    这是一个漫长的过程。在我的机器上(P4-1.6),这个过程用了50多分钟。 CW/u0001eQv9h]X 
    Z/u001F=/u00038&/u0012`/u0008 
    6. 安装 {*/u001D;/u001B8`+R& 
    W/u000E!H/u0005j/u0010/u0003O; 
    执行下面的命令将编译好的库文件等拷贝到  ${destdir}目录中(根据你设定的路径,可能需要管理员的权限): 5@l5exuG*m 
    w &YUb,{Y 
    % make install ,(oolx"X/u001Aa 
    b`%u}^B { 
    至此,GCC 3.4.0安装过程就完成了。 ,y"vf^B/u0017E. 
    /u0015/u001BnG/u0014/u0008TGX/u0013 
    7. 其它设置 +(`/u001CD'5EB( 
    &B/u0015 :L/u00149^/u0002 
    GCC 3.4.0的所有文件,包括命令文件(如gcc、g++)、库文件等都在  ${destdir}目录下分别存放,如命令文件放在bin目录下、库文件在lib下、头文件在include下等。由于命令文件和库文件所在的目录还没有包含在相应的搜索路径内,所以必须要作适当的设置之后编译器才能顺利地找到并使用它们。 Iu/u0015Fr:/u00153(/u0005 
    r/u00024K/u001E_/u001AW/u001Ep 
    7.1 gcc、g++、gcj的设置 /u00101X/u0013h/u0012@x/u0002/u0011 
    M/u0014/u0002E)='/u0018~E 
    要想使用GCC 3.4.0的gcc等命令,简单的方法就是把它的路径  ${destdir}/bin放在环境变量PATH T/u0014Z/u0004n5s ~t 
    ;$/u001F]a.9 - 
    中。我不用这种方式,而是用符号连接的方式实现,这样做的好处是我仍然可以使用系统上原来的旧版本的GCC编译器。 @QYCoEU8J/u0007 
    P $r/u001A!/u0014u%W 
    首先,查看原来的gcc所在的路径: /u001B/u0006od!s5f! 
    b/u0003$*G&/u0002/u0003d5 
    % which gcc ILHn~d IC 
    h}+Gz/u0014={Q^ 
    在我的系统上,上述命令显示:/usr/bin/gcc。因此,原来的gcc命令在/usr/bin目录下。我们可以把GCC 3.4.0中的gcc、g++、gcj等命令在/usr/bin目录下分别做一个符号连接: /u0003/u0010)9!J $q 
    EOGz;/u0011/u0018:b& 
    % cd /usr/bin /@7 4/u0003I/u0018/u00167 
    % ln -s   ${destdir}/bin/gcc gcc34 /u000F/u001A2Aj/u0007P/u00112/u0016 
    % ln -s   ${destdir}/bin/g++ g++34 [i]%PV/u000FGW 
    % ln -s   ${destdir}/bin/gcj gcj34 ; 5!8LmZ0# 
    SQf.R%cg$/u0010 
    这样,就可以分别使用gcc34、g++34、gcj34来调用GCC 3.4.0的gcc、g++、gcj完成对C、C++、JAVA程序的编译了。同时,仍然能够使用旧版本的GCC编译器中的gcc、g++等命令。 #4?:/u00124Im#/u0004 
    /u0016v/u000F 1Jg8L= 
    7.2 库路径的设置 *"/u0013, B/u0011P]] 
    5%(xZ /u001E 6 
    将  ${destdir}/lib路径添加到环境变量LD_LIBRARY_PATH中,最好添加到系统的配置文件中,这样就不必要每次都设置这个环境变量了。 /u0001W/I D8+:i 
    b'~IF/u0017Nt*^ 
    例如,如果GCC 3.4.0安装在/usr/local/gcc-3.4.0目录下,在RH Linux下可以直接在命令行上执行或者在文件/etc/profile中添加下面一句: i#y3QCNqf^ 
    /u0011/u0011]t/u0012VXao/u001D 
    setenv LD_LIBRARY_PATH /usr/local/gcc-3.4.0/lib:  $LD_LIBRARY_PATH r/u000E?=7#/] 
    /u00065Y&s+/u0015| /u001A 
    8. 测试 /u0005;U|^Tsuc` 
    /u0017Q H%{/u0013r/u00064 
    用新的编译命令(gcc34、g++34等)编译你以前的C、C++程序,检验新安装的GCC编译器是否能正常工作。 t/u0019?v/u00180yl/u0001N 
    L/u0012/u001Ev/u0016/u0006c*L6 
    9. 根据需要,可以删除或者保留  ${srcdir}和  ${objdir}目录。

  • 相关阅读:
    angularjs的$on、$emit、$broadcast
    angularjs中的路由介绍详解 ui-route(转)
    ionic入门教程-ionic路由详解(state、route、resolve)(转)
    Cocos Creator 加载使用protobuf第三方库,因为加载顺序报错
    Cocos Creator 计时器错误 cc.Scheduler: Illegal target which doesn't have uuid or instanceId.
    Cocos Creator 构造函数传参警告 Can not instantiate CCClass 'Test' with arguments.
    Cocos Creator 对象池NodePool
    Cocos Creator 坐标系 (convertToWorldSpaceAR、convertToNodeSpaceAR)
    Cocos Creator 常驻节点addPersistRootNode
    Cocos Creator 配合Tiled地图的使用
  • 原文地址:https://www.cnblogs.com/buffer/p/1598417.html
Copyright © 2011-2022 走看看