centos aclocal,centos sudo权限
SUSE Linux 11下glibc依赖问题
0.以下在系统CentOS 6.3 x86_64上操作
1.试图运行程序,提示"libc.so.6: version `GLIBC_2.14' not found",原因是系统的glibc版本太低,软件编译时使用了较高版本的glibc引起的:
[cpp]view plaincopy
[ghui@StuOSbin]$pwd
/var/VMdisks/cross/mingw32/bin
[ghui@StuOSbin]$ls
lreleaseQtCore4.dllQtNetwork4.dllQtSql4.dllQtXml4.dll
mocQtDeclarative4.dllQtOpenGL4.dllQtSvg4.dllrcc
phonon4.dllQtGui4.dllQtScript4.dllQtTest4.dlluic
qmakeQtMultimedia4.dllQtScriptTools4.dllQtWebKit4.dll
[ghui@StuOSbin]$./qmake
./qmake:/lib64/libc.so.6:version`GLIBC_2.14'notfound(requiredby./qmake)
2.查看系统glibc支持的版本:
[cpp]view plaincopy
[ghui@StuOSbin]$strings/lib64/libc.so.6|grepGLIBC_
GLIBC_2.2.5
GLIBC_2.2.6
GLIBC_2.3
GLIBC_2.3.2
GLIBC_2.3.3
GLIBC_2.3.4
GLIBC_2.4
GLIBC_2.5
GLIBC_2.6
GLIBC_2.7
GLIBC_2.8
GLIBC_2.9
GLIBC_2.10
GLIBC_2.11
GLIBC_2.12
GLIBC_PRIVATE
[cpp]view plaincopy
[ghui@StuOSbin]$rpm-qa|grepglibc
glibc-static-2.12-1.80.el6_3.6.x86_64
glibc-headers-2.12-1.80.el6_3.6.x86_64
glibc-common-2.12-1.80.el6_3.6.x86_64
glibc-devel-2.12-1.80.el6_3.6.x86_64
glibc-static-2.12-1.80.el6_3.6.i686
glibc-devel-2.12-1.80.el6_3.6.i686
glibc-2.12-1.80.el6_3.6.i686
glibc-2.12-1.80.el6_3.6.x86_64
3.可以看到最高只支持2.12版本,所以考虑编译解决这个问题:
a.到下载最新版本,我这里下载了glibc-2.14.tar.xz这个版本,解压到任意目录准备编译
b.这里解压到/var/VMdisks/glibc-2.14/
[cpp]view plaincopy
[ghui@StuOSbin]$cd/var/VMdisks/glibc-2.14/
[ghui@StuOSglibc-2.14]$pwd
/var/VMdisks/glibc-2.14
[ghui@StuOSglibc-2.14]$ls
abilistconfig.h.inintlREADME.libm
abi-tagsconfig.logioresolv
aclocal.m4config.make.inlibc-abisresource
aoutconfigurelibidnrt
argpconfigure.inlibioRules
assertconformLICENSESscripts
autom4te.cacheCONFORMANCElocalesetjmp
bitsCOPYINGlocaledatashadow
BUGSCOPYING.LIBloginshlib-versions
buildcppflags-iterator.mkmachsignal
CANCEL-FCT-WAIVEcryptMakeconfigsocket
CANCEL-FILE-WAIVEcsuMakefilesoft-fp
catgetsctypeMakefile.instdio-common
ChangeLogdebugMakerulesstdlib
ChangeLog.1direntmallocstreams
ChangeLog.10dlfcnmanualstring
ChangeLog.11elfmathsunrpc
ChangeLog.12extra-lib.mkmiscsysdeps
ChangeLog.13extra-modules.mkNAMESPACEsysvipc
ChangeLog.14FAQNEWStermios
ChangeLog.15FAQ.innistest-skeleton.c
ChangeLog.16gmonNOTEStime
ChangeLog.17gnulibnptltimezone
ChangeLog.2grpnptl_dbtls.make.c
ChangeLog.3gshadownscdversion.h
ChangeLog.4hesiodnssVersions.def
ChangeLog.5hurdo-iterator.mkwcsmbs
ChangeLog.6iconvpowctype
ChangeLog.7iconvdataposixWUR-REPORT
ChangeLog.8includePROJECTS
ChangeLog.9inetpwd
confINSTALLREADME
c.在glibc源码目录建立构建目录,并cd进入构建目录
[cpp]view plaincopy
[ghui@StuOSglibc-2.14]$mkdirbuild
[cpp]view plaincopy
[ghui@StuOSglibc-2.14]$cdbuild
d.运行configure配置,make&& sudo make install
[cpp]view plaincopy
[ghui@StuOSbuild]$../configure--prefix=/opt/glibc-2.14
[ghui@StuOSbuild]$make-j4
[ghui@StuOSbuild]$sudomakeinstall
[sudo]passwordforghui:
4.临时修改环境变量
[cpp]view plaincopy
[ghui@StuOSbin]$exportLD_LIBRARY_PATH=/opt/glibc-2.14/lib:$LD_LIBRARY_PATH
[cpp]view plaincopy
[ghui@StuOSglibc-2.14]$cd/var/VMdisks/cross/mingw32/bin/
[cpp]view plaincopy
[ghui@StuOSbin]$./qmake
Usage:./qmake[mode][options][files]
QMakehastwomodes,onemodeforgeneratingprojectfilesbasedon
someheuristics,andtheotherforgeneratingmakefiles.Normallyyou
shouldn'tneedtospecifyamode,asmakefilegenerationisthedefault
modeforqmake,butyoumayusethistotestqmakeonanexistingproject
...
此时运行正常,问题解决。
By ghui
iomato.dev@Gmail.com
00:10- 2013-01-04
CentOS下如何安装CodeBlocksCentOS下安装CodeBlocks图文详解
一.安装平台说明:
CentOs6.4-i686 gcc-4.4.7
二.下载最新源码:
在此安装的是最新版:Code::Blocks 16.01
三.阅读官方安装说明文档:
通过阅读官方安装说明文档可以获取如下信息:
安装CodeBlocks有如下依赖关系:
Code::Blocks-> xwWidget(> libwxGTK2.8)-> GTK+(> libgtk-x11-2.0)->X
也就是说先要安装X系统,也就是桌面吧,然后安装libgtk-x11-2.0,然后安装libwxGTK2.8,最后再开始源码安装Code::Blocks。
四.按照以上的依赖关系开始依次安装:
1.建立一个目录:
mkdir~/devel//在家目录创建devel目录,此目录名可以随便指定
2.安装GTK+(libgtk-x11-20)库:
yum install gtk+*
3.源码安装wxGTK(libwxGTK2.8)库:
下载wxGTK源码:
注意选择如下源码包,别选错了:
将下载到的源码拷贝到前面创建的目录:~/devel/,然后解压缩:
1 mv./Desktop/wxGTK-2.8.12.tar.gz devel///将桌面wxGTK源码包拷贝到之前建立的工作目录devel
2 cd devel///进入devel目录
3 tar zxvf wxGTK-2.8.12.tar.gz//解压缩源码包
进入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//执行configure脚本文件
make//开始编译
su//切换到root
make install//开始安装
安装过程如下:
执行以上步骤,可以看到Makefile已经生成,此时就可以make编译了:
make//开始编译
编译完成,开始安装make install:
su root//切换到root用户
make install//开始安装
出现如下信息表示wxGTK库安装完成:
4.以上所有准备工作做完了,现在开始安装Code::Blocks:
同样先将CB源码拷贝到我们之前创建的工作目录:~/devel,然后进入源码目录:
mv../Desktop/codeblocks-16.01.release/.///将codeblocks源码包拷贝到当前目录(devel/)
cd codeblocks.16.01.release///进入源码目录
将wxGTK-2.8.12下的wxwin.m4复制到/usr/share/aclocal:
cp wxwin.m4/usr/share/aclocal//将wxGTK-2.8.12下的wxwin.m4拷贝到/usr/share/aclocal
进入CodeBlocks源码目录,执行./bootstrap:
./bootstrap
开始执行configure脚本:
//注意此处/opt/wx/2.8/bin/wx-config的路径应该是你安装wxGTK的路径
./configure-with-wx-config=/opt/wx/2.8/bin/wx-config
开始编译:make
make//开始编译
切换到root安装:
su root//切换到root用户
make install//开始安装
此时可以看到CodeBlocks已经安装完毕:
五.启动CodeBlocks:
1.通过命令行启动:
以上所有步骤把CodeBlocks安装到了linux系统,但是我们直接启动会出现问题:
原因是找不到libwx_gtk2u-2.8.so.0这个动态链接库。
解决如下:
vim/etc/profile
//加入如下环境变量,加到文件末尾:
//注意此处/opt/wx/2.8/lib的路径应该是你安装wxGTK的路径
export LD_LIBRARY_PATH=”$LD_LIBRARY_PATH:/opt/wx/2.8/lib
保存后执行:source/etc/profile让配置文件马上生效。
最后命令行启动CodeBlocks成功:
2.通过桌面图标来启动:
默认安装后桌面没有图标,也就无法通过双击启动。此时我们需要创建启动器:
在桌面右键–>CreateLaucher:
填入如下信息,然后点击OK:
此时桌面会产生codeblocks图标,双击即可启动(注意:如果双击启动不了,需重启下系统即可):
六.新建工程测试是否能正常运行:
此时我们编译能成功,但是运行时无法弹出控制台窗口:
原因是CB默认启动用的是xterm,而不是gnome控制台,解决方法如下:Setings–>Environment
此时点击执行按钮时一切正常:
centos6.5安装wps提示缺libc.so.6(GLIBC_2.15)(64bit),怎办
1.试图运行程序,提示"libc.so.6: version `GLIBC_2.14' not found",原因是系统的glibc版本太低,软件编译时使用了较高版本的glibc引起的:
[ghui@StuOS bin]$ pwd
/var/VMdisks/cross/mingw32/bin
[ghui@StuOS bin]$ ls
lrelease QtCore4.dll QtNetwork4.dll QtSql4.dll QtXml4.dll
moc QtDeclarative4.dll QtOpenGL4.dll QtSvg4.dll rcc
phonon4.dll QtGui4.dll QtScript4.dll QtTest4.dll uic
qmake QtMultimedia4.dll QtScriptTools4.dll QtWebKit4.dll
[ghui@StuOS bin]$./qmake
./qmake:/lib64/libc.so.6: version `GLIBC_2.14' not found(required by./qmake)
2.查看系统glibc支持的版本:
[ghui@StuOS bin]$ strings/lib64/libc.so.6|grep GLIBC_
GLIBC_2.2.5
GLIBC_2.2.6
GLIBC_2.3
GLIBC_2.3.2
GLIBC_2.3.3
GLIBC_2.3.4
GLIBC_2.4
GLIBC_2.5
GLIBC_2.6
GLIBC_2.7
GLIBC_2.8
GLIBC_2.9
GLIBC_2.10
GLIBC_2.11
GLIBC_2.12
GLIBC_PRIVATE
[ghui@StuOS bin]$ rpm-qa|grep glibc
glibc-static-2.12-1.80.el6_3.6.x86_64
glibc-headers-2.12-1.80.el6_3.6.x86_64
glibc-common-2.12-1.80.el6_3.6.x86_64
glibc-devel-2.12-1.80.el6_3.6.x86_64
glibc-static-2.12-1.80.el6_3.6.i686
glibc-devel-2.12-1.80.el6_3.6.i686
glibc-2.12-1.80.el6_3.6.i686
glibc-2.12-1.80.el6_3.6.x86_64
3.可以看到最高只支持2.12版本,所以考虑编译解决这个问题:
a.到下载最新版本,我这里下载了glibc-2.14.tar.xz这个版本,解压到任意目录准备编译
b.这里解压到/var/VMdisks/glibc-2.14/
[ghui@StuOS bin]$ cd/var/VMdisks/glibc-2.14/
[ghui@StuOS glibc-2.14]$ pwd
/var/VMdisks/glibc-2.14
[ghui@StuOS glibc-2.14]$ ls
abilist config.h.in intl README.libm
abi-tags config.log io resolv
aclocal.m4 config.make.in libc-abis resource
aout configure libidn rt
argp configure.in libio Rules
assert conform LICENSES scripts
autom4te.cache CONFORMANCE locale setjmp
bits COPYING localedata shadow
BUGS COPYING.LIB login shlib-versions
build cppflags-iterator.mk mach signal
CANCEL-FCT-WAIVE crypt Makeconfig socket
CANCEL-FILE-WAIVE csu Makefile soft-fp
catgets ctype Makefile.in stdio-common
ChangeLog debug Makerules stdlib
ChangeLog.1 dirent malloc streams
ChangeLog.10 dlfcn manual string
ChangeLog.11 elf math sunrpc
ChangeLog.12 extra-lib.mk misc sysdeps
ChangeLog.13 extra-modules.mk NAMESPACE sysvipc
ChangeLog.14 FAQ NEWS termios
ChangeLog.15 FAQ.in nis test-skeleton.c
ChangeLog.16 gmon NOTES time
ChangeLog.17 gnulib nptl timezone
ChangeLog.2 grp nptl_db tls.make.c
ChangeLog.3 gshadow nscd version.h
ChangeLog.4 hesiod nss Versions.def
ChangeLog.5 hurd o-iterator.mk wcsmbs
ChangeLog.6 iconv po wctype
ChangeLog.7 iconvdata posix WUR-REPORT
ChangeLog.8 include PROJECTS
ChangeLog.9 inet pwd
conf INSTALL README
c.在glibc源码目录建立构建目录,并cd进入构建目录
[ghui@StuOS glibc-2.14]$ mkdir build
[ghui@StuOS glibc-2.14]$ cd build
d.运行configure配置,make&& sudo make install
[ghui@StuOS build]$../configure--prefix=/opt/glibc-2.14
[ghui@StuOS build]$ make-j4
[ghui@StuOS build]$ sudo make install
[sudo] password for ghui:
4.临时修改环境变量
[ghui@StuOS bin]$ export LD_LIBRARY_PATH=/opt/glibc-2.14/lib:$LD_LIBRARY_PATH
[ghui@StuOS glibc-2.14]$ cd/var/VMdisks/cross/mingw32/bin/
[ghui@StuOS bin]$./qmake
Usage:./qmake [mode] [options] [files]
QMake has two modes, one mode for generating project files based on
some heuristics, and the other for generating makefiles. Normally you
shouldn't need to specify a mode, as makefile generation is the default
mode for qmake, but you may use this to test qmake on an existing project
...