Qt5.3.2_CentOS6.4_基本编程环境__20160306【勿删,繁琐】
20160306 全程没有f/q
ZC:使用的虚拟机环境是:博客园VMwareSkill 的 “CentOS6.4_x86_120g__20160306.rar”
1、
执行命令“gcc -v”,显示:
“
[root@centos ~]# gcc -v
bash: gcc: command not found
[root@centos ~]#
”
说明没有 c/c++编程环境
2、
安装 Qt5.3.2(qt-opensource-linux-x86-5.3.2.run),安装在默认位置“/opt/Qt5.3.2”,完全安装(源码也装了)。
PS:装好Qt5.3.2后,发现还是没有 gcc ...
3、
安装 C/C++,命令:
yum install gcc-c++
安装完毕后,执行“gcc -v”和“g++ -v”,显示如下信息:
“
[root@centos ~]# gcc -v
使用内建 specs。
目标:i686-redhat-linux
配置为:../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk --disable-dssi --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre --enable-libgcj-multifile --enable-java-maintainer-mode --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib --with-ppl --with-cloog --with-tune=generic --with-arch=i686 --build=i686-redhat-linux
线程模型:posix
gcc 版本 4.4.7 20120313 (Red Hat 4.4.7-16) (GCC)
[root@centos ~]# g++ -v
使用内建 specs。
目标:i686-redhat-linux
配置为:../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk --disable-dssi --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre --enable-libgcj-multifile --enable-java-maintainer-mode --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib --with-ppl --with-cloog --with-tune=generic --with-arch=i686 --build=i686-redhat-linux
线程模型:posix
gcc 版本 4.4.7 20120313 (Red Hat 4.4.7-16) (GCC)
[root@centos ~]#
”
4、
4.1、
此时,运行 qtcreator,有如下错误信息:
“
[root@centos bin]# pwd
/opt/Qt5.3.2/Tools/QtCreator/bin
[root@centos bin]# ./qtcreator
(<unknown>:3324): Gtk-WARNING **: Attempt to load unknown IM context type 'gtk-im-context-none'
核心载入失败: /opt/Qt5.3.2/Tools/QtCreator/lib/qtcreator/plugins/libCore.so: 无法加载库/opt/Qt5.3.2/Tools/QtCreator/lib/qtcreator/plugins/libCore.so:(/usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by /opt/Qt5.3.2/Tools/QtCreator/lib/qtcreator/plugins/libCore.so))
[root@centos bin]#
”
也就是说,需要 版本为GLIBCXX_3.4.14 的 libstdc++.so.6 。
4.2、
执行命令“strings /usr/lib/libstdc++.so.6 | grep GLIBCXX”,显示如下信息:
“
[root@centos ~]# strings /usr/lib/libstdc++.so.6 | grep GLIBCXX
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_FORCE_NEW
GLIBCXX_DEBUG_MESSAGE_LENGTH
[root@centos ~]#
”
可见,本机只有 版本为GLIBCXX_3.4.13 的 libstdc++.so.6 。
4.3、
下载“libstdc++6_4.7.2-5_i386.deb”
解压“libstdc++6_4.7.2-5_i386.deb”,得到 文件夹"libstdc++6_4.7.2-5_i386"(里面的文件为:control.tar.gz、data.tar.gz 和 debian-binary),解压 文件"data.tar.gz" 得到 文件夹"usr",将 这里的"usr/lib/i386-linux-gnu"里面的“libstdc++.so.6”和“libstdc++.so.6.0.17” copy到“/usr/lib/”目录下。提示 需要覆盖文件"libstdc++.so.6",确认覆盖。(这样直接覆盖"libstdc++.so.6"的话,就不需要做网页里面的 软连接的断开和重建 工作了)(或者将原来的文件 改名 或者 剪切到别的地方)
4.4、
此时,已经有 版本为GLIBCXX_3.4.17 的 libstdc++.so.6 。
“
[root@centos ~]# strings /usr/lib/libstdc++.so.6 | grep GLIBCXX
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_3.4.17
GLIBCXX_DEBUG_MESSAGE_LENGTH
[root@centos ~]#
”
5、
编译 程序还需要 libGL:
yum install libGL-devel
6、
此时,再次运行 qtcreator,虽然能够打开qt,但是会有报错:
“
[root@centos bin]# pwd
/opt/Qt5.3.2/Tools/QtCreator/bin
[root@centos bin]# ./qtcreator
(<unknown>:3566): Gtk-WARNING **: Attempt to load unknown IM context type 'gtk-im-context-none'
QString::arg: Argument missing: 无法解析gtk_widget_send_focus_change中的符号“gtk_widget_send_focus_change”:gtk-x11-2.0, (/usr/lib/libgtk-x11-2.0.so.0: undefined symbol: gtk_widget_send_focus_change)
QString::arg: Argument missing: 无法解析gtk_widget_send_focus_change中的符号“gtk_widget_send_focus_change”:gtk-x11-2.0, (/usr/lib/libgtk-x11-2.0.so.0: undefined symbol: gtk_widget_send_focus_change)
QString::arg: Argument missing: 无法解析dbus_connection_can_send_type中的符号“dbus_connection_can_send_type”:dbus-1, (/lib/libdbus-1.so.3: undefined symbol: dbus_connection_can_send_type)
QString::arg: Argument missing: 无法解析gtk_widget_send_focus_change中的符号“gtk_widget_send_focus_change”:gtk-x11-2.0, (/usr/lib/libgtk-x11-2.0.so.0: undefined symbol: gtk_widget_send_focus_change)
QString::arg: Argument missing: 无法解析gtk_widget_send_focus_change中的符号“gtk_widget_send_focus_change”:gtk-x11-2.0, (/usr/lib/libgtk-x11-2.0.so.0: undefined symbol: gtk_widget_send_focus_change)
[root@centos bin]#
”
6.1、
在Qt安装好之后,执行打开目录的操作的时候,Qt都会莫名其妙的自动一闪关闭。
解决:
删掉某一个插件:
“/Opt/Qt5.3.2/Tools/QtCreator/bin/plugins/platformthemes/libqgtk2.so”,将这个插件删掉。(注意,这里是 删掉,将其改名的话,Qt还是会去加载 重名后的插件的。或者 可以将它 剪切到别的地方去)
PS:这样做了之后,上面的报错信息的"gtk-x11-2.0"部分也没有了,值留下了下面的信息:
“
[root@centos bin]# pwd
/opt/Qt5.3.2/Tools/QtCreator/bin
[root@centos bin]# ./qtcreator
QString::arg: Argument missing: 无法解析dbus_connection_can_send_type中的符号“dbus_connection_can_send_type”:dbus-1, (/lib/libdbus-1.so.3: undefined symbol: dbus_connection_can_send_type)
[root@centos bin]#
”
6.2、
"dbus-1" 的问题,是∵ dbus太旧 qt太新 的缘故。
6.2.1、
dbus 又需要 expat,如果不先装 expat 的话,在 dbus 执行"configure"的过程中会报错:
“configure error explicitly requested expat but expat not found”
于是,安装 expat,使用如下命令:
yum install expat expat-devel
6.2.2、
到 http://dbus.freedesktop.org/releases/dbus/ 下载dbus的最新版本,我这里下载的是“dbus-1.10.6.tar.gz”。
解压后,得到目录“dbus-1.10.6”,进入目录“dbus-1.10.6”,执行命令:
./configure --prefix=/
make install
ZC-1: 如果 configure命令 是像上面那样("./configure --prefix=/"),那么"make install"之后,在 目录"/lib"下 新增了一些文件(如"libdbus-1.so.3.14.6","libdbus-1.so"等) 原来的文件"libdbus-1.so.3"也给修改了(现在指向了文件"libdbus-1.so.3.14.6")
ZC-2: 如果上面的 configure命令 写成这样:"./configure --prefix=/usr",那么新增的那些文件就会出现在 目录"/usr/lib"中。然后 在目录"/lib"中 删除libdbus-1.so和libdbus-1.so.3 两个文件(如果有的话),再在libdubs-1.so.3.8.3上鼠标右键创建连接创建两个文件,文件名是:libdbus-1.so和libdbus-1.so.3 。
6.2.3、
ZC:现在 dbus安装完毕了,那么上面解压出来的 目录"dbus-1.10.6" 能否删掉?现在没有把它删掉,待以后测试...
7、
到这里,基本的 程序可以创建起来了,也可以顺利的编译运行了。
ZC:此时,在命令行敲入"./qtcreator",不会有 错误/警告信息 被打印出来。
8、
问题:
发现 安装了 dbus之后,CentOS6.4 就关不了机了... 用虚拟机强制关机后再开机 也会有一些"FAILED"并且卡在某个模块的加载的地方...
我是在关机的时候,发现卡在那里,然后等了很久还是一直卡着,然后通过 CTRL+ALT+F1~F6 切换到命令行登录,然后执行"reboot",出现了报错信息:
由于本人的 Linux水平较低,尝试了一些安装dbs的方法,还是搞不定...于是只能选择放弃了...
ZC:我这里安装的CentOS6.4是完全没有带???的,尝试使用带???的CentOS6.4来弄。
9、
备用:
9.1、
安装“libstdc++-4.4.7.11.el6.i686”:
命令“yum install libstdc++-4.4.7.11.el6.i686”
9.2、
“yun update”==> 这是把yum更新到最新(这一步,需要下载蛮多东西的,宽带不够 或者 虚拟机较卡 的话,这一步就跳过吧)
100、ZC
20160810: CentOS6.4x64尝试使用 命令"yum install dbus" / "yum update dbus" / "yum update dbus-devel" 来解决问题,但是 它们都说 已经更新到最新了... 打开 Qt532,"dbus_connection_can_send_type"的问题依旧,暂时先不管了... 貌似 Qt532暂时使用中还没发现什么问题,先用着在说吧...
101、
Qt5.3.2_CentOS6.4_基本编程环境__20160306【勿删,繁琐】的更多相关文章
- Qt5.3.2_CentOS6.4_单步调试环境__20160306【勿删,繁琐】
20160306 全程没有f/q ZC:使用的虚拟机环境是:博客园VMwareSkill 的 “CentOS6.4_x86_120g__20160306.rar” 需要调试器 gdb ,从“http: ...
- Qt5.3.2_CentOS6.4_x86_编程调试环境【勿删,简洁】
ZC:使用的虚拟机环境是:博客园VMwareSkill 的 “CentOS6.4x86EngCustomize120g__20160307.rar” 1. For Qt5.3.2: 基本需要的 软件包 ...
- QT笔记(1)--QT编程环境搭建
一.QT简介 Qt 是一个1991年由奇趣科技开发的跨平台C++图形用户界面应用程序开发框架.它既可以开发GUI程序,也可用于开发非GUI程序,比如控制台工具和服务器.Qt是面向对象的框架,使用特殊 ...
- Unix NetWork Programming(unix环境编程)——环境搭建(解决unp.h等源码编译问题)
此配置实例亲测成功,共勉,有问题大家留言. 环境:VMware 10 + unbuntu 14.04 为了unix进行网络编程,编程第一个unix程序时遇到的问题,不能包含unp.h文件,这个感觉和a ...
- 02shell编程环境的搭建
02shell编程环境的搭建 [02]Shell编程 02shell编程环境的搭建 在不同的操作系统上搭建shell编程环境 Linux Windows Mac 编辑器的选择 系统环境的搭建 注: 选 ...
- 【转】手把手教你把Vim改装成一个IDE编程环境(图文)
手把手教你把Vim改装成一个IDE编程环境(图文) By: 吴垠 Date: 2007-09-07 Version: 0.5 Email: lazy.fox.wu#gmail.com Homepage ...
- Java/javaEE/web/jsp/网站编程环境配置及其软件下载和网站路径
Java/javaEE/web/jsp/网站编程环境配置及其软件下载和网站路径 (2015/07/08更新) JDK下载地址(JDK官网下载地址) 下载地址为:http://www.oracle.co ...
- 在 Mac OS X Yosemite 10.10.5 上配置 OpenGL 编程环境
这个教程主要参考了youtube上的视频 Getting Started in OpenGL with GLFW/GLEW in Xcode 6 ,这个视频有点问题,不能照搬.本人通过自己摸(瞎)索( ...
- [GO编程]GO编程环境
GO是一个开源项目,由Google大神发明的,他主要是用于应用程序级开放,可以编译成机器码,和C++一样不需要.NET或JAVA那样的运行框架,因此是个不错的编程语言.更何况发明者都是高手中的高手,而 ...
随机推荐
- matplotlib显示中文
[注意] 可能与本文主题无关,不过我还是想指出来:使用matplotlib库时,下面两种导入方式是等价的(我指的是等效,当然这个说法可以商榷:) import matplotlib.pyplot as ...
- nginx安装,反向代理配置
1.centos 版本 下载最新稳定版 https://www.nginx.com/resources/wiki/start/topics/tutorials/install/# 2.执行语句: ./ ...
- Object-C-NSString
NSString *info=@"Hello world"; NSString *info=[[NSString alloc]initWithFormat:@"my na ...
- 20154312 曾林 EXP9 Web安全基础
目录 -0.webgoat Could not find source file -1.基础问题回答 -2.环境配置 -3.Injection Flaws ----3.1.Numeric SQL In ...
- Linux命令: 在线使用linux命令环境
https://www.tutorialspoint.com/unix_terminal_online.php
- SpringMVC 拦截器实现原理和登录实现
SpringMVC 拦截器的原理图 springMVC拦截器的实现一般有两种方式 第一种方式是要定义的Interceptor类要实现了Spring的HandlerInterceptor 接口 第二种方 ...
- Java SE 基础知识(一)
一.基础知识 1. Java SE : Java Standard Edition Java ME : Java Micro Edition Java EE : Java Enterprise Edi ...
- ajax请求头设置 | header 传token
$('.w-entry-btn').on('tap',function(){ var urlAddress = '/api/address'; var valToken = JSON.parse(lo ...
- SNMP学习笔记之SNMP TRAP简介、流程以及使用Python实现接受Trap信息
0x00 SNMP TRAP简介 SNMP(Simple Network Management Protocol) trap是一种很有用,但是也容易让人难以理解的协议. 虽然名字叫做简单网络管理协议, ...
- npm 查看全局安装过的包
查看全局安装的包 npm list -g --depth 0 非全局安装的包 npm list --depth 0 如果不加参数 --depth 0会显示安装的包以及相关的依赖包,会显示的很详细.