首页 > 代码库 > centos6.4 案子code::blocks

centos6.4 案子code::blocks

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

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

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

wxWidgets安装

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

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

解压缩:

tar zxf wxGTK-2.8.12.tar.gzcd wxGTK-2.8.12

安装:

mkdir build_gtk2_shared_monolithic_unicodecd build_gtk2_shared_monolithic_unicode../configure --prefix=/opt/wx/2.8        --enable-xrc        --enable-monolithic        --enable-unicodemakesumake installexit

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

设置环境变量:

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

然后运行如下命令:

ldconfigsource /etc/profile

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

安装Code::Blocks

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

yum install gcc-c++

注意:不是yum install g++,我一开始想当然了。

下载Code::Blocks:在这里。我下的是tar包。

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

bootstrap

./bootstrap

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

./bootstrap: libtoolize: not found

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

yum install libtool

重新运行

./bootstrap

 可能会报错

[root@localhost codeblocks-13.12]# ./bootstrap Found revision: ‘0‘ ‘‘libtoolize: putting auxiliary files in `.‘.libtoolize: copying file `./ltmain.sh‘libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4‘.libtoolize: copying file `m4/libtool.m4‘libtoolize: copying file `m4/ltoptions.m4‘libtoolize: copying file `m4/ltsugar.m4‘libtoolize: copying file `m4/ltversion.m4‘libtoolize: copying file `m4/lt~obsolete.m4‘configure.ac:86: warning: macro `AM_OPTIONS_WXCONFIG‘ not found in libraryconfigure.ac:87: warning: macro `AM_PATH_WXCONFIG‘ not found in libraryconfigure.ac:86: error: possibly undefined macro: AM_OPTIONS_WXCONFIG      If this token and others are legitimate, please use m4_pattern_allow.      See the Autoconf documentation.configure.ac:87: error: possibly undefined macro: AM_PATH_WXCONFIG

  解决方法:

cp ../wxWidgets-2.8.12/wxwin.m4 /usr/share/aclocal

configure

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

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

接下来安装等待即可:

makemake install

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

我刚启动时,会出现的错误是:

之后我用命令启动codeblocks出现如下错误提示:codeblocks: relocation error: codeblocks: symbol _Z23wxHandleFatalExceptionsb, version WXU_2.8 not defined in file libwx_baseu-2.8.so.0 with link time reference

这个错误没找到原因,不过我重启电脑之后,这个错误就消失了,然后就会出现下面的错误,按照下面的步骤解决就可以使用了。

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

 

意思是找不到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