导航:首页 > 源码编译 > ui无法编译

ui无法编译

发布时间:2023-05-15 00:16:59

A. ubuntu下qt如何编译.ui文件

登录/注册
Linux/Ubuntu下 静态编译Qt程序
转载205 阅读

mb5ff5917b5bbc5
2017-07-28 07:07:00
关注
一般情况下,我们用Qt编译出来的程序是要依赖于系统Qt库的,也就是这个程序移到别的没有安装Qt库的系统上是不能使用的。会提示缺少……库文件之类的错误。这就是动态编译的结果。
但是如果我们想编译一个程序,这个程序在发给别人后,他们可以直接打开,而不需要特别地去先安装Qt库,那就需要采用静态编译了。

在Linux下如何静态编译Qt程序呢?

首先需要先安装静态编译的Qt,也就是静态编译Qt程序首先是需要一个静态编译安装的Qt

1、下载源安装程序,如 qt-x11-opensource-src-4.5.1.tar.gz

2、解压到某一目录

3、cd 进入解压后的目录,命令

./configure -static -release -qt-zlib -qt-gif -qt-libpng -qt-libmng -qt-libjpeg -nomake demos -nomake examples -qt-sql-sqlite -prefix /usr/local/Trolltech/Qt-4.5.1_static 
 ./configure -static -release -qt-zlib -qt-gif -qt-libpng -qt-libmng -qt-libjpeg -nomake demos -nomake examples -qt-sql-sqlite -prefix /usr/local/Trolltech/Qt-4.5.1_static

参数-static 指的是要采用静态编译Qt的方法

参数-release指的是只编译release版本的库

参数-qt-zlib -qt-gif -qt-libpng -qt-libmng -qt-libjpeg 是更好确定Qt编译出的程序能在目前不知的系统下运行。

参数-nomake demos -nomake examples 指的是不编译demos和examples

参数-qt-sql-sqlite 如果没有这个参数,configure的时候,可能会提示sqlite 有问题而中止。

参数 -prefix /usr/local/Trolltech/Qt-4.5.1_static 指明静态编译的Qt安装的目录,命名Qt-4.5.1_static是为了区别动态编译安装的Qt,因为如果没有这个参数,安装时会覆盖之前动态编译安装的Qt(如果有的话)。

4、没问题后

make

5、make没问题后再 

sudo make install

6、增加(或改变)环境变量:

在你home目录下你的的名字的目录中,在.profile文件中追加(或改变)如下环境变量:(为Qt设置一些特定的环境变量,这个很重要!.profile文件是隐藏的,可在你的名字目录下,按Ctrl+H显示所有文件查看到)

QTDIR=/usr/local/Trolltech/Qt-4.5.1_static/    
PATH=$QTDIR/bin:$PATH    
MANPATH=$QTDIR/doc/man:$MANPATH    
LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH    
export QTDIR PATH MANPATH LD_LIBRARY_PATH   
QTDIR=/usr/local/Trolltech/Qt-4.5.1_static/ 
PATH=$QTDIR/bin:$PATH 
MANPATH=$QTDIR/doc/man:$MANPATH 
LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH 
export QTDIR PATH MANPATH LD_LIBRARY_PATH   

7、重启

8、在终端测试一下qmake

成功的话,下来用qmake编译出的Qt程序就是采用静态编译的。这时你会发现,静态编译出来的程序大小变大了相当多。

静态编译与动态编译的区别

动态编译的可执行文件需要附带一个的动态链接库,在执行时,需要调用其对应动态链接库中的命令。所以其优点一方面是缩小了执行文件本身的体积,另一方面是加快了编译速度,节省了系统资源。缺点一是哪怕是很简单的程序,只用到了链接库中的一两条命令,也需要附带一个相对庞大的链接库;二是如果其他计算机上没有安装对应的运行库,则用动态编译的可执行文件就不能运行。、

静态编译就是编译器在编译可执行文件的时候,将可执行文件需要调用的对应动态链接库(.so)中的部分提取出来,链接到可执行文件中去,使可执行文件在运行的时候不依赖于动态链接库。所以其优缺点与动态编译的可执行文件正好互补。

B. apk改之理 反编译安卓系统ui 编译失败 怎么办

反编译SystemUI.apk需要加载Framework-res.apk框架才配肢敬能反编译

求培慎饥粗采纳

C. 求助,安卓5.1反编译systemui.apk失败

第一:要在你的PC上建立Java的环境,才能执行编译工作。具体方法我这个就不说了,你网络或者Google下就知道了,很简单的。

第二:下载必要的工具。Apktool工具。
下载后解压(有三个文件aapt.exe,apktool.bat,apktool.jar),为了方便。将解压出来的文件放在CDM模式(win+R)默认的目录下。

比如,我的是Windows732位我的CDM模式默认目录是C:\USER\用户名。

第三:如果你是要编译系统文件的话,请将你要修改的rom里的framework-res.apk(暂时叫做依赖包)用CMD模式“安装”下。
这样编译才不会出错。我一开始就是在这里纠结了很久。呵呵

安装方法:把依赖包放在刚才放apktool的目录下。(你也可以用指定目录的方法安装)

cmd模式执行apktoolifframework-res.apk这个是安装framework-res.apk

第四:准备工作都做好了,现在就可以反编译和编译了。
将你要反编译的apk放在apktool的目录下。(你也可以用指定目录)

cmd模式执行apktooldXXXX.apk这个是Decode也就是反编译

比如反编译SystemUI就执行apktooldSystemUI.apk就可以了(会在当前的目录下生成SystemUI的文件夹,修改就是在这个文件夹里进行)

SystemUI.apk等特殊APK文件的反编译和编译技巧
cmd模式执行apktoolbXXXX这个是build也就是编译回去
比如编译SystemUI就执行apktoolbSystemUI就可以了(会在rosie的文件夹中生成一个叫dist的文件夹,编译回去的apk就是此文件夹中)

注意:第三步很重要,很多人不成功就是因为没做第三步。

D. 求助systemui编译时哪里出错

首先第一个,就是com这个文件夹,一般教程都有说明怎么才是成功的, 第二个,是你反编辑以后得到的SystemUI文件夹, 第三个,回编辑之后会有一个smeil文件夹,在SystemUI里面,而且smeil文件夹里面有个厅猜SystemUI.apk文件。
~如果你认可我的回答,请及时点击【采纳春旦为满意回答】按钮
~~手机提问的朋友在客户端右上角评价点【满意】即可。
~你的采扒伏扰纳是我前进的动力
~~O(∩_∩)O,记得好评和采纳,互相帮助,谢谢。

E. 学习QT,VS2010编译UI文件出错,提示“uic不是内部或外部命令,也不是可运行的程序”怎么解决

解决方案:

下载nasm.exe和ndisasm.exe作为加载汇编代码用的。

1.、假如你的VS6.0安装在C:
把上面的nasm.exe和ndisasm.exe软件拷贝到:C:/Program Files/Microsoft VisualStudio/VC98/Bin中;

2、如果你安装的是VS2008且安装在C盘:

把上面的nasm.exe和ndisasm.exe软件拷贝到:C:\Program Files\Microsoft VisualStudio 9.0\VC\bi中;

F. 为开发板arino/genuino UNO 编译时出错 是什么鬼

编译时出错是常态, 需要一些基本的调试能力。

编译时注意选对应的板,比如 mega2560 或 UNO
程序里调用的库需要事先准备好
根据程序的时间匹配对应的IDE版本,减少因为版本更新导致的不兼容
windows最好用win7 32位, 其他的win10 64位有时也有些小插曲
注意看错误提示,升戚搜一搜基本也有吵拦陵衡租思路
多模块的出错就一个一个测试单模块是否工作正常,再慢慢增加功能。

G. v大2.6的systemui怎么回编译不了呢

把framework里头的framework-res.apk moto-res.apk blur-res.apk 复凳野制到apk目录棚改下...在cmd依次输入命令apktool if framework-res.apk apktool if moto-res.apk apktool if blur-res.apk按照这个枣和喊不知行不行

H. 安卓反编译SystemUI.apk 改运营商 后 回编译出错了。。 之前可以回编,不知怎么突然不行了,没懂。。

把res目录下的zh_TW文件夹删除试试

I. 为开发板 Arino/Genuino Uno 编译时出错。 怎么解决

为开发板Arino/Genuino Uno编译时出错,是编译的过程出现错误造成的,解决方法如下:

1、首先在电脑中打开ArinoIDE , 选择程序 File—examples—ArinoISP。

J. MiuiSystemUI.apk反编译并且修改后无法回编译,提示出错。即使反编译后什么都不修改直接

、反编译=回编译后分别是smali目录回编译为classes.dex文件res目录回编译为resources.arsc文件2、回编译顺序在回编译时,会先检查“源”即resources当你汉化文件,修改出错了(缺少一个符号也不行),那么回编译会自动跳过编译res文件夹,直接回编译smali。所以,如果没有对smali(classes.dex)汉化,那么建议大家删掉这个文件夹,这要会大大加快回编译速度。1、反编译=回编译后分别是smali目录回编译为classes.dex文件res目录回编译为resources.arsc文件2、回编译顺序在回编译时,会先检查“源”即resources当你汉化文件,修改出错了(缺少一个符号也不行),那么回编译会自动跳过编译res文件夹,直接回编译smali。所以,如果没有对smali(classes.dex)汉化,那么建议大家删掉这个文件夹,这要会大大加快回编译速度。3、出错问题1在汉化时,往往会不小心删掉一些符号,如""符号等等。FileManager文件管理器/string>这些小小的错误都会导致回编时译检查出错。所以汉化时,注意对校,然后再回编译。建议使用一些高级的文本编辑器,支持语法高亮视图的。4、出错问题2最近发现有些APK文件反编译后,就算不汉化直接回编译,都会出错。有可能的原因1,反编译后XML文件语法中@符号前面多了"\"(\@),用文本编辑工具直接替换【\@】为【@】,应该可以解决。建议使用最新版本的反编译工具。5、建议大家使用新版本的APKTool工具,当然如果新的有问题也可以试试旧的一、系统文件汉化再次强调1、汉化Settings.apk(系统设置)、MMS.apk(信息)、Phone.apk(电话)、等等系统文件,一定要先安装构架,具体看另个文件。2、系统文件汉化完后不需要签名,直接替换汉化后的文件,就可以了。主要是,系统文件放在系统目录,无需再次读取签名获得权限,已经是高级了。二、打包说明1、通常汉化完回编译后,会自动生成所有APK内的文件,或者自动生成*.APK文件。但是建议大家不要直接使用该文件,进了使用替换法,替换掉你汉化后的文件,如:resources.arsc,如果修改过的图片,等等…2、很多人对于APK文件解压缩或压缩都用“WinRAR”或“好压”,这里不推荐。希望大家安装7-Zip这个压缩工具,对于zip格式的支持是最好的。而且很方便,不需要重新关联apk直接右键打开就行了。替换直接拖拉进去,就OK了一、回编译出错问题(1.提示strings.xml最后一行错误,检查是否符号错误;在汉化时,往往会不小心删掉一些符号,如""符号等等。FileManager文件管理器/string>(2.提示strings.xml最顶部含中文代码首行错误,编码格式不对,转换成UTF-8;(3.提示public.xml出错,检查改动过的arrays.xml是否代码有错误的地方;二、一切能正常但无法回编译还有一种情况,apktool最新版本能正常反编译一个apk文件,在未做任何修改的情况下,无法回编译。这是就要注意了,可以尝试一下用低版本的apktool进行【反编译】,然后在用高版本的apktoo工具【回编译】。这里向大家推荐用【APKDB】这个工具,很方便,反编译时可以选择apktool的版本。

阅读全文

与ui无法编译相关的资料

热点内容
软通动力程序员节2021 浏览:845
安卓系统如何卸载安装包 浏览:868
短信删除助手文件夹 浏览:688
java办公自动化 浏览:340
php中超链接 浏览:253
linux默认路由设置 浏览:36
linux如何挂载iso 浏览:432
vs程序换文件夹后不能编译 浏览:557
安卓源码编译输入脚本没反应 浏览:47
phpmysql自增 浏览:167
把ppt保存为pdf 浏览:533
汽车密封件加密配件 浏览:887
黑马程序员15天基础班 浏览:560
java调整格式 浏览:521
香港云服务器租用价 浏览:78
linuxsublime3 浏览:560
imac混合硬盘命令 浏览:278
沈阳用什么app租房车 浏览:857
00后高中生都用什么app 浏览:239
戴尔塔式服务器怎么打开独立显卡 浏览:808