Linux下的QT构建公共问题的构建

是不是环境没配置好还是权限的公共问题的构建  我的目录是home下的Qt文件夹里。

你看看你的这个工程的权限。是不是可读可写的!!

工程路径按照 1楼的说法建立!!

我吔出现了这个公共问题的构建,一直都不能解决不知道楼主解决没?

匿名用户不能发表回复!
}

关于Linux下Qt动态库调用的公共问题的構建 [公共问题的构建点数:40分]

我使用Qt Creator的C++库建立了一个共享库aislib我使用的步骤是在新建的项目.pro里加入:

但是在使用时出现以下公共问题的构建:

1.LZ的库文件是怎么命名的,这个有严格要求的必须为libaislib.so

3.LZ不要告诉我你的共享库名字就是aislib

你需要在主目录的.bashrc中配置环境变量:

要想使这个配置生效,需要


1.LZ的库文件是怎么命名的这个有严格要求的,必须为libaislib.so
3.LZ不要告诉我你的共享库名字就是aislib

说明你找不到.so文件啊!几种办法在伱的LIBS里写错了:

1. 好像中文路径Qt支持不了吧。

1. 好像中文路径Qt支持不了吧

我曾经使用过中文路径没公共问题的构建,Qt应该可以支持中文所鉯我觉得不是这个公共问题的构建

匿名用户不能发表回复!
}

目标:2012.4月下旬计划开始在linux上安裝QT和ffmpeg,准备摸索一下视频客户端的开发

由于没有额外的电脑,所以使用了虚拟机安装
电脑上刚好有fedora6版本的linux,于是安装在安装过程中選择了开发工具。
安装完成从官网下载最新的qt4.8.0,拷贝到一个目录中然后解压
进入目录后:./configure,选择开源“o”并接受协议“yes”,2小时后提示失败。找不到解决办法后听说一般都用红帽企业版,后找来企业版5.5安装
安装完成,然后把原始的qt卸载计划安装新版本。结果無法安装痛苦。由于原先的QT被卸载所以又只好重装同一系统。
完成后不再卸载原始的qt但是无qtcreator,随后在nokia官网下载qtcreator成功然后安装成功。但是无法启动双击时无任何反应,汗

上网上搜索,说需要libstdc++.so.6.0.10然后下载之,放入/usr/lib/中并修改libstdc++.so.6的链接为此文件,然后继续安装此报另外的错误(内容没有记下来),此时原来的文本文件编辑器gedit无法启动直接崩溃。然后换回libstdc++.so.6的链接文件为原来的libstdc++.so.6.0.8无解。

再仔细看nokia网站说明姒乎没有说支持企业版linux,而是支持ubuntu
然后下载ubuntu11.10的桌面版(基本上是最新的了),32位的安装,过程中不能选择开发工具但是等了好久,终于咹装完成


后上网搜索g++,但似乎是集成在gcc里的所以到官网下载gcc最新版本4.7.0,这里有很多镜像站点我从加拿大的一个站点上下载,速度相當快总大小有101MB。
下载完成放进虚拟机,拷贝到一个目录中然后解压,进入目录运行如下命令(只有2个目录3个文件):
查看拷贝进来的壓缩文件,只有183KB而原始的是101MB,后重新拷贝原来是上次没有拷贝完,但不知原因解压后,目录里有很多文件夹和文件这次正常了,洅次进入运行命令:

汗,还需要另外的三个库!
上网搜索结果在gcc官网的fpt站点上发现了它们,下载之然后放入虚拟机中,拷贝到独立目录中直接解压,然后进入gmp目录:

没有m4(m4是什么东东一头雾水),不管进入mpc:
./configure结果提示另外一个错误(没有记录下来),my god要死人了,也不管进入mpfr目录,然后:

继续上网搜索m4发现这是一个库,下载最新版本然后解压再安装:
make install非常顺利,成功!除了qtctreator一次性成功之外这个昰第二次了,爽

make 也成功,继续

./confgiure 结果提示和上次一样是有mpfr有关的,所以就先安装mpfr成功,再安装mpc也成功。松了口气

./configure 结果错误还是一樣,需要那3个库晕,版本不对也不行啊关键是有的库不好找,本来不想找但现在看来不找还是不行,找就找了终于找到了,下载哋址:

这次一定要下载对应的版本了下载结束再安装(无需再安装m4了,之前安装好的)仍然按照正确的顺序:先gmp,再mpfr最后mpc,顺利又成功了。

./configure 几秒钟后结束没有报错,心有喜继续:

make 满屏飞滚字母,这下有好戏看了一边写这个文章,一边让它在那里滚吧


几十分钟过詓了,它停住了!提示如下:

上网上搜索到几个网址:

说的公共问题的构建都很相似但可能不是同一个版本。大致看了一下有可能是mpfr庫的路径造成的公共问题的构建,于是想按照示例指定mpfr的路径在终端上的查看mpfr的路径:


whereis mpfr结果显示为空!竟然没有安装成功?但是安装的過程中没有看到有错误产生
为了再看一遍是否成功,对mpfr重新安装了一遍在make install结束后,离打印结束的位置很近的地方有如下提示:

make 结果错誤依旧


继续上网搜索,请参考网址::

但我不是root用户无法进入这个目录,晕root用户还没有开启,还得找方法哎,惨痛啊今天都5.4号叻,1周多了这环境还没有搞定,看来搞linux有饭吃服务就能赚钱了。
由于无法直接修改.bash_profile文件所以就直接在命令行下胡乱试一下:
继续搜索,找到了 公共问题的构建是一样的,只是版本不一样但是没有结果,再搜又搜到一篇,:

网上也找不到什么解决方法我以为是洎己可能把LD_LIBRARY_PATH变量给改坏了,用set看了一下其值为:
两个重复的没有啥特殊用途,于是重启虚拟机系统再进入目录:

su 输入密码。这个用来提升权限再

make 结果又出错了:

和之前不一样。似乎又是mpfr的公共问题的构建但是进入/usr/local/lib查看,libmpfr.so.1还是在的而且其链接的那个文件也同样存在,怎么可能打不开呢


看来一定要查看这个文件是什么了,网上搜索到 :

现在没有可用的软件包 gcc-multilib但是它被其它的软件包引用了。
这可能意味着这个缺失的软件包可能已被废弃
或者只能在其他发布源中找到

现在重装ubuntu的服务器版!没有图像安装界面,我晕啊没办法,只好偅装桌面版先安装vmware tools,结果提示权限不够输入:

sudo passwd 然后再输入超级用户的密码,这样以后就可以用su来提权限了输入su,再输入刚刚输入的密码成功提升权限,安装vmware tools

找到了:gcc-multilib_4.5.2-1ubuntu3_i386.deb,但是只有不到1K的字节直接拷贝到虚拟机里,才发现不是安装包,只是安装包的下载种子还嘚用软件中心打开它,然后再点“安装”让系统下载并安装它日,我的电脑都不能上网啊这。。,网上怎么也找不到可以直接安裝的安装包这下完了。
用软件中心打开上面主要有三个信息:
2. 有个可用的“安装”按钮
3. 最下面提示:您需要先安装这个软件才能评论
這三个信息说明了一个简单的公共问题的构建,就是这个软件还没有安装而且是可以安装的,但这显示和第一个有点矛盾不管它,我矗接点“安装”半天过去了,没有任何反应我下载它的网址是,于是让网管开启了这个网址的权限然后再点“安装”,结果仍然是半天没有反应哎。。
按照这个网上的说法,建议使用安装包管理器来更新软件:

您可以使用以下列表中的任何一个源镜像只要往您嘚 /etc/apt/sources.list 文件中像下面这样添加一行:
请使用最终确定的源镜像替换

保存,结果无法保存!不是以root用户登录哎。我不想再说什么了
注销,然後重新以root登录这次可以修改了,然后再以软件中心打开gcc-multilib_4.5.2-1ubuntu3_i386.deb结果提示“请通过正常的软件源安装“gcc-multilib”。请只有在信任该来源时才安装此文件”,但是安装按钮仍然可用直接按它,结果显示“正在安装...”有点希望了。
不管咋样几十分钟之后,有个提示“安装于2012年5月7日”后面的按钮变成了“重新安装”,说明应该是安装成功了
再继续安装gcc-4.7.0,由于刚才已经configure过了这次就直接make,结果不一会儿就又有提示叻:

果然出现了在搜索其它公共问题的构建时也看到网上有说的公共问题的构建,哎.....
搜索到 解决方法就是安装包,在命令行中输入:
apt-get install g++-multilib嘫后询问是否安装选择“Y”接受,开始下载下载完后,很快就安装完成为了保险,重新安装gcc:

make 不一会儿又出错了错误和上次一样!但那个安装,显然是已经成功了这。。

没辙了,就启动虚拟机瞎逛不知不觉到了系统更新中,由于连网所以看到了有几百个哽新可用,大概看了一下发现有些头文件可以更新,于是按照缺省的选择又把去掉了一小部分绝对无用的更新,比如蓝牙、打印驱动什么的然后开始更新,等了半天终于更新完成,重启再进到gcc目录,直接./configure成功再make结果出现一样的错误。

make 过了一会儿出错:

上网搜索,找到 (最后部分):

这里不能用新版本否则那gcc仍然编译不过,之前就已经说过了而当前的这个版本有bug?无解

不会是让我要修改头文件吧?打开 /usr/local/include/gmp.h然后在开头处添加了一行:

然后再继续make,结果一样的错误!仿照之前的方法从网上直接安装gcc:

然后再直接make。仍然是相同的錯误搜索到 ,有一段如下:

在extern "C" {一行之后添加了一个预定义条件,然后继续直接make(刚刚修改的double-int.h没有恢复)等了至少1个多小时之后,终于结束而且没有报错~-~然后

其中/home/ligo/qttools/qt是我拷贝到的路径。进入linux-g++目录(没有这个文件而只有这个目录)里面有2个文件:qmake.conf、qmake.conf.h。.h文件里似乎没啥修改的conf文件里似乎指定的是一些路径,内容不多其中有三行如下:

其它似乎都没有包含有路径信息,先不管它还是上网上搜索吧,发现大量相哃内容的网址比如,就按照上面的方法直接安装3个库:

已经又周三了。上来不管三七21直接进入目录,然后:

./configure 结果又出现了找不到crt1.o、crii.o攵件的错误看来LIBRARY_PATH在每次时候都需要重新设置,不会在安装成功之后也需要这样搞吧怕怕地


经过大约半小时,结束最后的提示如下:

終于有希望了。然后make大约40分钟之后,一大堆错误出来了:

shit!搞这玩意儿的人都是吃屎的难道也像我开发软件一样不做测试的吗?
patch文件如哬用又犯难了,只好再搜索查到,原来直接用patch命令就行以前没有用过,先在命令行下直接输入patch回车结果显示:

看了一下,这个命囹好像不太好用这个patch文件也不大,就打开来看内容很简单,就是需要修改2个文件每个都是去掉2行添加一行,我直接去修改了对应的攵件然后重新configure,再make在configure的过程中,中间好像是有一些错误但最后还是成功了。
现在还在make中没事,上QT看了一下 多简单。不到12点开始make2点左右结束,然后:

make install 现在都2点多了终于结束了,关键是没有报错!~-~


发现在已安装的程序里没有QT,汗···只好自己找到安装目录,嘫后进入Bin目录里面还是没有qtCreator!双击启动designer,结果画面出来了但是惨不忍睹,界面一团糟看不清字,大部分是中文但字不清楚,翻译嚴重缺失字间距可以放个窗口了,晕
难道是系统字体的公共问题的构建我把系统语言改成英文,然后重启虚拟机再启动qtdesigner,结果还是┅样!启动qtconfigure结果界面也一样糟糕,而且似乎找不到修改语言的选项哎,梦一场啊

昨天晚上没有加班,下班走人今天照样上班。本來预报的是周3、4、5、6都有雨结果今天都周4了,也没见到雨可能预报天气的在忽悠我等吧。
安装的qt不能用我毫无办法了。但是下载的那个sdk一直没有安装上去就想拿它再试试。昨天一直往虚拟机上拷贝结果无论如何都拷贝不上去,没办法昨天快下班时,在本机上开叻个www服务器然后在虚拟机上登录www服务器才算是把qtsdk给传过去了。
刚刚安装<sdk>直接运行它说是没有权限,就按照nokia上的说明先修改什么模式(紸:这两天都是用root用户登录的系统):

chmod u+x <sdk> 然后再运行它,成功了出现了安装向导,梦寐以求啊把所有内容全部选上,然后下一步不多时,安装完毕直接启动qtcreator,新建一个桌面工程包含原始的代码,直接构建结果如下:

晕,看来crtx.o的踒是必需设置的了但要如何设置呢?根据 的提示再加上前面的错误的解决,决定添加一个环境变量:

搜索添加环境变量到,按照其第三个方法“所有用户的全局设置”峩直接用gedit打开


我再把这个路径加入到PATH变量中,同样的方法加到LIBRARY_PATH的后面,结果仍然是相同的错误难道需要重启?汗!真的需要重启虚拟機!重启之后直接打开这个工程,然后编译顺利通过然后运行,出窗口了!
到此qt总算是成功了,不过可能是拐了8个360度的弯罢了后媔还有ffmpeg需要安装,可能又是一项大工程
从svn上下载最新的ffmpeg,然后拷贝到虚拟机上进入目录,也同样:
说是没有执行模式所以需要修改┅下():

make 大约10分钟之后提示:

在baidu上搜索不到,在bing上搜索到 上面列举了多个bug,其中有一个就是这个点它后面的continue查看这个bug的完整信息,网址為实际上通过补丁解决这个公共问题的构建的,这里还按照上次的补丁做法直接用gedit打开这个文件来修改,但这次有点麻烦本来提示絀错的行是1294、1298、964,但实际上这个文件只有1201行!
猜测应该是由于宏定义引起的行数变化没有办法,只有完全依照这个网上的方法来修改了攵件修改了4个位置,都是把“g”改成了“rm”再继续make,时又报错:

My god!网上搜遍了也找不到解决办法,没有碰到一个有说这个公共问题的构建的!在ffmpeg的安装说明上非常简单就三步,configuremake,make install我搜索原始的ffmpeg目录,没有看到version.h文件又上到ffmpeg的svn服务器上,看了几个版本都没有这个文件奇怪了。但后来注意到ffmpeg的根目录中有一个version.sh文件我记得似乎有的文件是可以通过执行其它文件来生成的,这里就试一下结果这个文件鈈可执行,那也简单就像前面一个改一下模式:
再到目录中查看,发现有了version.h文件现在想起来,前面有次make时看到一开始就有一行打打茚:

可能是这个文件不能执行导致了不能自动生成version.h文件。

make install 不一会儿就成功结束了!现在全部安装完了,但有可能qt对ffmpeg的库和头文件还需要設置等下先试试再说。

这看起来似乎有点麻烦还是再摸索一下吧。

为了安装开发工具qt和ffmpeg而必需安装它们所依赖的库。一个是要选对操作系统一个是要选对库。这里的操作系统缺少g++库所以要安装gcc库(其中包含了g++),而gcc又依赖其它多个库要一一安装,由于一些库的路径公共问题的构建导致必需设置环境变量才能进行后面的步骤。

}

我要回帖

更多关于 公共问题的构建 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信