CentOS6.3编译fibjs

CentOS6.3编译fibjs

下载 fibjs

开始编译

有一点需要说明一下,你看清楚编译环境的要求了么!!!!

  GCC 4.6 or newer
  CMake 2.6 or newer
  GNU Make 3.81 or newer
  libexecinfo (FreeBSD and OpenBSD only)

没有特殊情况下你一定会在开始v8编译的时候就会报错,报语法错误,原因是CentOS的gcc的版本肯定<4.6,哈哈^_^,重头戏在后面,升级gcc

下面重点说下升级gcc

由于fibjs是基于v8的,编译v8目前已经要求gcc的版本是4.6或者以上的了

  1. 下载源码包

    wget http://ftp.gnu.org/gnu/gcc/gcc-4.8.0/gcc-4.8.0.tar.bz2 
    解压:tar -jxvf gcc-4.8.0.tar.bz2

  2. 下载编译所需依赖库

     cd gcc-4.8.0
     ./contrib/download_prerequisites 
     cd ..
  3. 建立编译输出目录

     mkdir gcc-build-4.8.0
  4. 进入此目录,执行以下命令,生成makefile文件

     cd  gcc-build-4.8.0
     ../gcc-4.8.0/configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
  5. 编译 make -j4 #简单的可以使用make,参数j是配置资源使用情况的
    时间会比较长的,我用了一个小时,没办法,机器差,大学买的本本。

  6. 安装

     sudo make install
  7. 切换GCC到新版 确定新安装的GCC的路径,一般默认在/usr/local/bin下。
    添加新GCC到可选项,倒数第三个是名字,倒数第二个参数为新GCC路径,最后一个参数40为优先级,设大一些之后就自动使用新版了

         update-alternatives --install /usr/bin/gcc gcc /usr/local/bin/i686-pc-linux-gnu-gcc 40
  8. 执行完地7步,重新开个shell,看看 gcc -v输出什么是不是版本已经修改过了成我们刚刚编译好的了。

  9. 通过我的错误日志可以看出编译fibjs使用了/usr/bin/cc,/usr/bin/c++两个编译程序

     cd /usr/bin
     ./cc -v
     ./c++ -v

    看下是不是已经更改为最新的版本了,如果已经是最新的版本那么下面的就不用看了,去编译fibjs喽。

  10. 看到这里一定是/usr/bin目录中的指向还没有修改为新的版本,下面开始修改

    cd /usr/bin
    #rm cc gcc c++ g++ #不建议删除,原因是有可能那天需要降低gcc的版本
    mv cc cc.bak #其实这步可以不错,cc连接到gcc
    mv gcc gcc.bak
    mv c++ c++.bak
    mv g++ g++.bak
    ln -s /usr/local/bin/gcc-4.8 cc
    ln -s /usr/local/bin/gcc-4.8 gcc
    ln -s /usr/local/bin/c++-4.8 c++
    ln -s /usr/local/bin/g++-4.8 g++
  11. 结束,搞完,终于可以在CentOS上搞fibjs啦。。。。。

参考资料


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章