centos libstdc源上怎么没有 libstdc++

centos 源上怎么没有 libstdc++_百度知道
centos 源上怎么没有 libstdc++
这个需求比较奇怪,单独的libstdc++-static包做什么用。libstdc++.a的静态库本身是gcc-c++这个包的一部分不存在libstdc++-static这样的包(for CentOS)
知道智能回答机器人
我是知道站内的人工智能,可高效智能地为您解答问题。很高兴为您服务。
其他类似问题
为您推荐:
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁当前位置:&>&&>&
64位CentOS 6.5系统如何安装GCC4.8.2+Qt5.2.1开发环境
时间: 12:32:01    来源:服务器之家    投稿:root
截至目前,Qt的最新版本为5.2.1,CentOS的版本为6.5,GCC的版本为4.8.2,经过一番尝试,终于将Qt开发环境安装到了CentOS(64
bit)中,整个过程中有几个需要注意的地方,在这里整理一下,供大家参考。
1、升级GCC
CentOS6.5内置的GCC版本为4.4,而Qt5.2.1则需要4.8.2的支持(支持C++
11特性),因此,必须先升级GCC。
GCC的源码包下载地址:http://ftp.tsukuba.wide.ad.jp/software/gcc/releases/gcc-4.8.2/gcc-4.8.2.tar.bz2(82M)
下载完成后,解压:
# tar -zxvf gcc-4.8.2.tar.bz2
# cd gcc-4.8.2
GCC有三个依赖包(/contrib/download_prerequisites文件中可以看到):
MPFR=mpfr-2.4.2
GMP=gmp-4.3.2
MPC=mpc-0.8.1
如果你是断网环境下安装的话,请严格按照版本号下载并按顺序编译这三个依赖包,否则可能会导致GCC
make失败。如果是联网的环境,则可以直接在GCC目录下执行:./contrib/download_prerequisites,脚本会自动wget到这几个依赖包并编译。
当依赖包编译安装后,就可以开始编译GCC了,在configure前,有几个编译参数需要理解一下:
gcc 编译参数说明:
--prefix //默认 gcc 的安装目录,CentOS-6.5 下面最好安装到 /usr 下,不然可能会有问题
--enable-languages //指定 gcc 能编译哪些语言的文件,每种语言用逗号分隔, 例如 c,c++,java
--disable-multilib //默认gcc
能在32位系统上将代码编译成64位程序,或者在64位系统上编译成32位程序,如果加上这个编译选项则表示关闭这个gcc的交叉编译功能。
理解了上面的参数意义,就能明白下边编译命令的含义了:
./configure --enable-checking=release --enable-languages=c,c++
--disable-multilib
make -j4 //这个过程需要30-120分钟的时间,依据电脑配置而定。j4,是四个作业一块运行,从而提升编译效率。
make install
经过漫长的等待后,GCC4.8.2应该就可以安装到你的CentOS下了,检验一下:
gcc --version
可以看到系统返回了gcc的版本和版权信息:
gcc (GCC) 4.8.2
Copyright (C) 2013 Free Software Foundation, Inc.
T see the source for copying conditions. There
not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
这中间有几点需要注意:
GCC的编译需要依赖GCC,听着挺矛盾,意思就是,系统中必须有一个GCC版本,才能编译新版本的GCC。就好像安装一个打包在RAR压缩包里的RAR安装文件~
当gmp、mpfr、mpc编译的时候是自定义指定的安装路径,在编译GCC时需要加上下面的选项:
--with-mpc=MPC的安装目录
--with-mpfr=MPFR的安装目录
--with-gmp=GMP的安装目录
截至目前,只是把GCC
4.8.2编译安装了,还没有替换系统的链接库:/usr/lib64/libstdc++.so.6,继续看下边…
Qt for Linux
64-bit可以从官网下载,下载后,直接在终端下执行安装文件即可进入图形化界面按向导进行安装,这个过程极其简单,无需赘述。关键在于,安装好之后,Qt一定是启动失败的!终端中提示如下:
Failed to load core:
/opt/Qt5.2.1/Tools/QtCreator/lib/qtcreator/plugins/QtProject/libCore.so:
Cannot load library
/opt/Qt5.2.1/Tools/QtCreator/lib/qtcreator/plugins/QtProject/libCore.so:
(/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found
(required by
/opt/Qt5.2.1/Tools/QtCreator/lib/qtcreator/plugins/QtProject/../.././libQt5CLucene.so.5))
可以看出,CentOS默认的GCC的链接库还没有替换,因此,会报链接库的版本错误。建议按照下面的步骤来完成替换:
updatedb,先建立文件索引,这样可以快速地搜索到CentOS中的所有文件。
libstdc++.so.6,检索CentOS中libstdc++.so.6文件,可以看到终端列出了很多同名或类似的文件目录,这样就清楚文件目录了。
mv /usr/lib64/libstdc++.so.6
/usr/lib64/libstdc++.so.6.bak,先备份原有的链接库。
mv /usr/local/lib64/libstdc++.so.6.0.18
/usr/lib64/libstdc++.so.6,替换即可。
文件替换后,再启动Qt:
cd /opt/Qt5.2.1/Tools/QtCreator/bin/
./qtcreator.sh
OK,大功告成!
转载请注明原文地址:解决CentOS缺少共享库:libstdc++.so.6
解决CentOS缺少共享库:libstdc++.so.6
  当在CentOS 6.2下执行某些命令时,有缺少共享库的报错:&error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory
  解决办法:&1、执行命令: yum whatprovides libstdc++.so.6&然后会提示哪个安装包有这个库文件如下:&[root@localhost ~]# yum whatprovides libstdc++.so.6&Loaded plugins: aliases, changelog, downloadonly, fastestmirror, kabi, presto, refresh-packagekit, security, tmprepo, verify,& & & & & & &
: versionlock&Loading support for CentOS kernel ABI&Loading mirror speeds from cached hostfile& * base: cento& * centosplus: cento& * contrib: cento& * extras: cento& * updates: cento&libstdc++-4.4.7-3.el6.i686 : GNU Standard C++ Library&Repo& & & & : base&Matched from:&Other& & &
: libstdc++.so.6
  2、然后执行:&yum install libstdc++-4.4.7-3.el6.i686
  搞定!
H3C认证Java认证Oracle认证
基础英语软考英语项目管理英语职场英语
.NETPowerBuilderWeb开发游戏开发Perl
二级模拟试题一级模拟试题一级考试经验四级考试资料
港口与航道工程建设工程法规及相关知识建设工程经济考试大纲矿业工程市政公用工程通信与广电工程
操作系统汇编语言计算机系统结构人工智能数据库系统微机与接口
软件测试软件外包系统分析与建模敏捷开发
法律法规历年试题软考英语网络管理员系统架构设计师信息系统监理师
高级通信工程师考试大纲设备环境综合能力
路由技术网络存储无线网络网络设备
CPMP考试prince2认证项目范围管理项目配置管理项目管理案例项目经理项目干系人管理
Powerpoint教程WPS教程
电子政务客户关系管理首席信息官办公自动化大数据
职称考试题目
就业指导签约违约职业测评
招生信息考研政治
网络安全安全设置工具使用手机安全
3DMax教程Flash教程CorelDraw教程Director教程
Dreamwaver教程HTML教程网站策划网站运营Frontpage教程
生物识别传感器物联网传输层物联网前沿技术物联网案例分析
互联网电信IT业界IT生活
Java核心技术J2ME教程
Linux系统管理Linux编程Linux安全AIX教程
Windows系统管理Windows教程Windows网络管理Windows故障
组织运营财务资本
视频播放文件压缩杀毒软件输入法微博
数据库开发Sybase数据库Informix数据库
&&&&&&&&&&&&&&&
希赛网 版权所有 & &&如何安装compat-libstdc++和openmotif - Redhat/Fedora/CentOS -
红联Linux论坛
UID59313&帖子90&积分174&现金1466 圆&魅力44 点&阅读权限70&注册时间&
如何安装compat-libstdc++和openmotif
$rpm -q gcc make binutils openmotif setarch compat-db compat-gcc compat-gcc-c++ compat-libstdc++ compat-libstdc++-devel
gcc-4.1.1-52.el5
make-3.81-1.1
binutils-2.17.50.0.6-2.el5
package openmotif is not installed
setarch-2.0-1.1
package compat-db is not installed
package compat-gcc is not installed
package compat-gcc-c++ is not installed
package compat-libstdc++ is not installed
package compat-libstdc++-devel is not installed
请问如何安装compat-libstdc++和openmotif,以及其它缺失的软件包?为何我在安装系统时把所有的软件包都选上,也没有这些东西?
[Hl.y]成员
UID75576&帖子1732&积分2432&现金25163 圆&魅力513 点&阅读权限150&注册时间&
试试yum安装看看,在装系统的时候一定要选择“定制软件包”
yum install compat-libstdc++ openmotif
&Genius is one percent inspiration and 99 percent perspiration& --- Thomas Alva Edison.
UID59313&帖子90&积分174&现金1466 圆&魅力44 点&阅读权限70&注册时间&
原帖由 gxf 于
23:52 发表
试试yum安装看看,在装系统的时候一定要选择“定制软件包”
yum install compat-libstdc++ openmotif
我装系统时选了“定制软件包”,而且把每一项里所有的软件都选了,但系统装完后还是没有这几个包,不知什么原因。另外我试了yum,可惜不是注册用户,没法安装,还有其它办法吗?
UID147738&帖子354&积分482&现金4940 圆&魅力61 点&阅读权限100&注册时间&
唉&&现在我也正在受这个问题的困挠啊。。
我的YUM也是不能用。。
我装GCC也装不上。。
[root@localhost 下载]# rpm -ivh compat-gcc-c++-7.3-2.96.122.i386.rpm
warning: compat-gcc-c++-7.3-2.96.122.i386.rpm: Header V3 DSA signature: NOKEY, key ID 73307de6
error: Failed dependencies:
& & & & compat-gcc = 7.3-2.96.122 is needed by compat-gcc-c++-7.3-2.96.122.i386
& & & & compat-libstdc++ = 7.3 is needed by compat-gcc-c++-7.3-2.96.122.i386
& & & & compat-libstdc++-devel = 7.3 is needed by compat-gcc-c++-7.3-2.96.122.i386
新手,还望各位多多指教! 河南郑州的!
MSN E-mail:chang_
UID147738&帖子354&积分482&现金4940 圆&魅力61 点&阅读权限100&注册时间&
刚刚找到了这个的下载地址……
不过。。。
[root@localhost 下载]# rpm -ivh compat-gcc-c++-7.3-2.96.122.i386.rpm
warning: compat-gcc-c++-7.3-2.96.122.i386.rpm: Header V3 DSA signature: NOKEY, key ID 73307de6
error: Failed dependencies:
& && &&&compat-gcc = 7.3-2.96.122 is needed by compat-gcc-c++-7.3-2.96.122.i386
& && &&&compat-libstdc++-devel = 7.3 is needed by compat-gcc-c++-7.3-2.96.122.i386
只少了一行。。。!
[ 本帖最后由 anj 于
13:09 编辑 ]
新手,还望各位多多指教! 河南郑州的!
MSN E-mail:chang_
UID337089&帖子2&积分4&现金34 圆&魅力1 点&阅读权限20&注册时间&
[root@localhost tools]# rpm -i compat-libstdc++-7.3-2.96.126.i386.rpm
警告:compat-libstdc++-7.3-2.96.126.i386.rpm: V3 DSA ???NOKEY, key ID 9b3c94f4
& && &/usr/lib/libstdc++-2-libc6.1-1-2.9.0.so 有所冲突 ,在试图安装compat-libstdc++-7.3-2.96.126时(来自套件compat-libstdc++-296-2.96-132.7.2)
& && &/usr/lib/libstdc++-3-libc6.2-2-2.10.0.so 有所冲突 ,在试图安装 compat-libstdc++-7.3-2.96.126 时(来自套件 compat-libstdc++-296-2.96-132.7.2)
不懂。yum安装时有条件的Linux安装aapt问题之libstdc++-4.4.7-16.el6.i686 != libstdc++-4.4.7-11.el6.x86_64
最近先把业余的ROR放一放,手头上有些工作要处理。以前在windows中获取过apk信息,最近打算在Linux获取apk信息,使工作更加智能化。
之前看《The linux command line》的时候以为了解一些基本指令就可以了,可事实上当你要用到这个系统的时候,需要的不止这些。后面要回去学习下脚本。
现在的当务之急是先把aapt跑出来。
1、安装aapt工具。
工具包,没梯子的自己下载到这个包后再自己传到服务器吧。
$ wget http://android-/files/apktool-install-linux-r04-brut1.tar.bz2
$ tar -jxvf apktool-install-linux-r04-brut1.tar.bz2
$ mv aapt /usr/bin
$ mv apktool /usr/bin
输入aapt命令,控制台输出
-bash: /usr/bin/aapt: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory
原因是64位系统中安装了32位程序,apktool是32位。
2、查看linux版本信息和系统位数。
那我自己也需要清楚我的机子装的是linux哪个版本还有位数。
$ cat /etc/issue
CentOS release ,可以知道是CentOS发行版
$ file /sbin/init
/sbin/init: ELF 64-bit LSB shared object, x86-64,为64位。
32-bit即为32位。
3、安装包和问题的出现
刚开始安装我是参考这个来的:/blog/1881576
$ yum install -y glibc-2.12-1.107.el6.i686
本来照着装这个,却报了这样的错误。
No package glibc-2.12-1.107.el6.i686 available.
网上搜了一下,换了个版本的包。
$ yum install -y glibc-2.12-1.166.el6.i686
感觉上一个链接写的介绍有点坑,所以按照另外一个进行安装:
/view/25283,centos 64位linux系统下安装appt命令的apktool工具包的笔记
-bash: /usr/bin/aapt: /lib/ld-linux.so.2: bad ELF interpreter: 没有那个文件或目录
$ yum install glibc.i686
安装完后,继续执行
aapt: error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or directory
继续安装包
$ yum install zlib.i686
安装完后,继续执行
aapt: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory
继续安装包
$ sudo yum install libstdc++.i686
问题出现了:
安装过程中报错:
Error: Protected multilib versions: libstdc++-4.4.7-16.el6.i686 != libstdc++-4.4.7-11.el6.x86_64
进行更新,注意更新的版本是将上面的.i686部分更新为x86_64
$yum update libstdc++-4.4.7-16.el6.x86_64
aapt: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory
回到原来的那步:
$ yum install libstdc++.i686
这次安装成功。
aapt正常执行
Asset Packaging Tool
aapt l[ist] [-v] [-a] file.{zip,jar,apk}
问题应该是包的版本和位数问题,虽然不是太了解,但是照着那个思路,根据控制台的输出版本还有网上有的版本,修改一下还是可以调通的。
网上一篇文章抄来抄去,一字不改,也不注明原出处,也是乱。
(window.slotbydup=window.slotbydup || []).push({
id: '2467140',
container: s,
size: '1000,90',
display: 'inlay-fix'
(window.slotbydup=window.slotbydup || []).push({
id: '2467141',
container: s,
size: '1000,90',
display: 'inlay-fix'
(window.slotbydup=window.slotbydup || []).push({
id: '2467142',
container: s,
size: '1000,90',
display: 'inlay-fix'
(window.slotbydup=window.slotbydup || []).push({
id: '2467143',
container: s,
size: '1000,90',
display: 'inlay-fix'
(window.slotbydup=window.slotbydup || []).push({
id: '2467148',
container: s,
size: '1000,90',
display: 'inlay-fix'

我要回帖

更多关于 libstdc 源码 的文章

 

随机推荐