• CentOS安装Code::Blocks


    今天下午闲着没事尝试在自己的PC中的CentOS上装一个Code::Blocks,因为是Linux菜鸟折腾了一下午才基本算搞定但依然有疑惑:

    在网上各种谷哥度娘最后才发现还是官方的文档最靠谱:看这里

    上面讲的比较详细,下面简单总结一下安装的步骤:

    wxWidgets安装

    先安装GTK+

    yum install gtk+*

    Code::Blocks的界面依赖于wxWidgets,所以需要先安装它,至于wxWidgets是什么可以百度一下,具体我也不清楚。只知道wxWidgets是一个跨平台的GUI库,而在Linux上它依赖于GDK+,GDK+就相当于函数库,所以不用担心它在你的系统中肯定是有的。事实上C::B真正使用的wxWidgets是wxGDK,所以我们首先需要安装的其实是wxGDK库,版本要求大于2.8.0,官方文档说libwxGDK-2.8.3有点问题,所以不推荐。

    下载wxGDK:到这里。注意选择wxGTK,我下的是wxGTK-2.8.12.tar.gz

    解压缩:

    tar zxf wxGTK-2.8.12.tar.gz
    cd wxGTK-2.8.12

    安装:

    mkdir build_gtk2_shared_monolithic_unicode
    cd build_gtk2_shared_monolithic_unicode
    ../configure --prefix=/opt/wx/2.8 \
           --enable-xrc \
           --enable-monolithic \
           --enable-unicode
    make
    su
    make install
    exit

    安装的路径是/opt/wx/2.8/

    设置环境变量:

    export PATH=/usr/bin:/opt/wx/2.8/bin:$PATH

    然后运行如下命令:

    ldconfig
    source /etc/profile

     ldconfig命令的作用是让动态链接库为系统所共享,source命令的作用简单来说就是使得配置文件的修改立即生效而不需要重启。

    安装Code::Blocks

    在安装之前还需要先确定一下有没有安装gcc编译器,如果没有yum安装一下,很简单:

    yum install gcc-c++

    注意:不是yum install g++,我一开始想当然了。下载Code::Blocks(12.11):在这里。我下的是tar包。

    解压缩然后依次执行下面的命令:

    bootstrap

    ./bootstrap

    bootstrap命令的作用是设置configure脚本及其依赖关系,这个命令只需要执行一次,运行这个命令如果出现下面的错误:

    ./bootstrap: libtoolize: not found

    说明机子上没有安装“libtool”,yum安装下即可:

    yum install libtool

    可能还会报错:

    configure.in:79: warning: macro `AM_OPTIONS_WXCONFIG' not found in library
    configure.in:80: warning: macro `AM_PATH_WXCONFIG' not found in library
    configure.in:79: error: possibly undefined macro: AM_OPTIONS_WXCONFIG
          If this token and others are legitimate, please use m4_pattern_allow.
          See the Autoconf documentation.
    configure.in:80: error: possibly undefined macro: AM_PATH_WXCONFIG

    将wxGTK-2.8.12下的wxwin.m4复制到/usr/share/aclocal

    cp ../wxwin.m4 /usr/share/aclocal

    configure

    ./configure --with-wx-config=/opt/wx/2.8/bin/wx-config

    注意:如果如果wxGDK不是安装在默认的路径这里需要--with-wx-config指定,否则make过程中会提示有error。

    接下来安装等待即可:

    make
    make install

    等安装完成后,就可以在Application中找到C::B的图标了。

    但是我安装后点它却发现启动不起来,通过终端命令启动发现错误信息如下:

     

    意思是找不到libwx_gtk2u-2.8.s0.0这个动态链接库,解决方法是设置LD_LIBRARY_PATH变量:

    export LD_LIBRARY_PATH =/opt/wx/2.8/lib/

    这种方式是临时的设置环境变量,关闭shell就会失效,需要永久的设置环境变量参看这里这里,修改/etc/profile文件,加入下面这行:

    export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/opt/wx/2.8/lib"
    source /etc/profile

    LD_LIBRARY_PATH这个环境变量的作用是让其他程序找到第三方的动态连接库。设置后就没可以通过命令行启动C::B了。

    疑问:但是奇怪的是上面这个命令我是在root权限下进行的,按照这里所说这种配置方法是对所有用户都生效的,但是我的实际情况是必须切换到root权限下才能启动C::B而且必须通过su -来进行切换(关于su和su-的区别看这http://www.ha97.com/4001.html。)不知道哪位同学知道能告知一下,我再去学习学习。

    纠错:上面的疑惑我重启下电脑都没了,实在不好意思(竟然发到首页去了,本打算多请教请教),但是通过一下午折腾对linux命令又多熟悉了点,比如su和su-的区别(这里)以前还真没注意过。

    作者:zhanjindong
    出处:http://www.cnblogs.com/zhanjindong
    个人博客:http://zhanjindong.com
    关于:一个程序员而已
    说明:目前的技术水平有限,博客定位于学习心得和总结。
  • 相关阅读:
    适用于IE的自适应大小并且自动居中的对话框页面(javaScript)
    ASP.net后台动态加载JS文件
    分层就是分工与协作
    用Response.Filter生成静态页[要注意并发问题]
    新旧身份证合法性验证及验证算法
    子窗口刷新父窗口的问题
    获取字符串的真实长度
    子窗口刷新父窗口然后关闭
    datalist的数据绑定事件收藏
    通过Response.Filter属性实现网站内容的动态GZIP压缩
  • 原文地址:https://www.cnblogs.com/zhanjindong/p/3061108.html
Copyright © 2020-2023  润新知