导航:首页 > 源码编译 > qt程序防反编译

qt程序防反编译

发布时间:2022-09-23 22:42:25

① 安装QT环境遇到这种情况怎么破

Centos6.3自身是带QT4.6.2的,在装系统时可以选择安装,但是没有qvfb工具,所以又自己重新编译了qt-x11的4.5.0版本。

qt各版本版本下载地址(在网上找的很多博文里给的链接都失效了,下面这个链接貌似还比较新,现在可以用):
http://qt-project.org/downloads
ftp://ftp.qt-project.org/qt/source/
在ftp资源里找到 qt-x11-opensource-src-4.5.0、qt-embedded-linux-opensource-src-4.5.0这两个源码包并下载(tar.gz或tar.bz2包都有,网速不好的话看哪个小下载哪个)。

下载后将两个源码包分别解压,qt-x11-opensource-src-4.5.0解压一份,qt-embedded-linux- opensource-src-4.5.0解压两份,分别命名为qt-embedded-linux-opensource-src-4.5.0-x86 和 qt-embedded-linux-opensource-src-4.5.0-arm 。

开始编译安装:

一、X11编译:
1.进入qt-x11-opensource-src-4.5.0源码目录。

./configure -no-openssl
在我这里必须加上-no-openssl选项,否则在make过程中,编译到ssl时会报错。出错信息为:
ssl/qsslsocket_openssl_symbols_p.h:264: error: variable or field ‘q_sk_free’ declared void
ssl/qsslsocket_openssl_symbols_p.h:264: error: ‘STACK’ was not declared in this scope
ssl/qsslsocket_openssl_symbols_p.h:264: error: ‘a’ was not declared in this scope
ssl/qsslsocket_openssl_symbols_p.h:265: error: ‘STACK’ was not declared in this scope
ssl/qsslsocket_openssl_symbols_p.h:265: error: ‘a’ was not declared in this scope
……
……

默认安装路径为 /usr/local/Trolltech/Qt-4.5.0。可用--prefix 指定其他安装路径。

2. gmake # linux下一般可直接用make代替gmake。如果要加快编译速度,就加上 -jx ,x表示最大的线程数。

3. gmake install

二、qt-embedded-x86编译:

1.进入qt-embedded-linux-opensource-src-4.5.0-x86源码目录。
./configure -prefix /usr/local/Trolltech/QtEmbedded-4.5.0-x86 -embedded x86 -no-openssl -qt-gfx-qvfb -qt-kbd-qvfb -qt-mouse-qvfb
先后配置了安装目录、嵌入式架构(x86)。同时也跟X11版本一样,配置了 -no-openssl,没有这一项的话,make的过程中会出现跟编译X11时一样的错误。再后面的几项是为了更好的配合qvfb,网上说如果没有这几 项,安装好qt-embedded-x86后想在qvfb上调试程序时,会出现类似下面的错误:
Error opening buffer device /dev/fb0QScreenLinuxFb::connect: No such file or directory

2. gmake
跟x11版一样
3. gamke install

三、qt-embedded-arm:
与前面两个不同,在编译arm版本的qt-embedded前,必须确认已经安装了交叉工具链,编译过程中要生成许多arm架构的库,所以必须有 arm-linux-gcc、arm-linux-g++等工具。我用的是友善提供的arm-linux-gcc-4.5.1版本。
1. 进入qt-embedded-linux-opensource-src-4.5.0-arm源码目录。
./configure -prefix /usr/local/Trolltech/QtEmbedded-4.5.0-arm -embedded arm -no-openssl -qt-libpng
指定了安装路径、嵌入式架构。同时也跟X11版本一样,配置了 -no-openssl,没有这一项的话,make的过程中会出现跟编译X11时一样的错误。
另外,还增加了一项, -qt-libpng,这个选项应该是关于png相关的库,指定用qt自带的png库。如果没有这一项,我这里会出现如下错误:
image/qpnghandler.cpp: In member function 'virtual QVariant QPngHandler::option(QImageIOHandler::ImageOption) const':
image/qpnghandler.cpp:950:35: warning: 'png_info_struct::width' is deprecated (declared at /opt/FriendlyARM/toolschain/4.5.1/lib/gcc/arm-none-linux-gnueabi/4.5.1/../../../../arm-none-linux-gnueabi/include/png.h:639)
image/qpnghandler.cpp:950:35: warning: 'png_info_struct::width' is deprecated (declared at /opt/FriendlyARM/toolschain/4.5.1/lib/gcc/arm-none-linux-gnueabi/4.5.1/../../../../arm-none-linux-gnueabi/include/png.h:639)
image/qpnghandler.cpp:950:55: warning: 'png_info_struct::height' is deprecated (declared at /opt/FriendlyARM/toolschain/4.5.1/lib/gcc/arm-none-linux-gnueabi/4.5.1/../../../../arm-none-linux-gnueabi/include/png.h:640)
image/qpnghandler.cpp:950:55: warning: 'png_info_struct::height' is deprecated (declared at /opt/FriendlyARM/toolschain/4.5.1/lib/gcc/arm-none-linux-gnueabi/4.5.1/../../../../arm-none-linux-gnueabi/include/png.h:640)
make[1]: *** [.obj/release-shared-emb-arm/qpnghandler.o] 错误 1
make[1]: *** 正在等待未完成的任务....
make[1]: Leaving directory `/root/qt4.5.0/qt-embedded-linux-opensource-src-4.5.0-arm/src/gui'
make: *** [sub-gui-make_default-ordered] 错误 2

看起来像是我的交叉工具链跟这个QT版本匹配的不太好,Qt好像不太兼容交叉工具链的png.h头文件中定义的数据结构。加上 -qt-libpng 可解决此问题。

四、qvfb:
这时QT就已安装成功。但是还需要额外安装qvfb。
进入qt-x11-opensource-src-4.5.0源码包目录,然后
cd tools/qvfb
在qvfb源码目录下运行 make 会在qt-x11-opensource-src-4.5.0/bin下生成qvfb,我们将它至/usr/local/Trolltech/QtEmbedded-4.5.0-x86/bin下即可。

end:
到这里,QT的开发环境基本就搭建好了,利用 qt-embedded-x86 和 qvfb 工具可以很方便的调试QT程序,调试好的程序再经 qt-embedded-arm 编译就可在开发板上运行(还有个小问题,我现在编译好的QT程序虽然可以在开发板上运行,但是运行时触摸屏不能用,只能用USB鼠标控制,想支持触摸屏貌 似还需要移植tslib库,等我折腾完了再回来把相关内容补充上)。

② 改了QT的源码怎么编译

你想要修改源代码,首先你要拿到源代码。

如果你拿不到,那对于iOS来说就不用想了(反编译也就能到二进制文件,如果你感兴趣也可以尝试修改二进制文件),你是无法修改的。
对于Android,可以将apk反编译回代码,但是Android开发者基本都会在发布之前采取一些防反编译的措施(比如代码混淆),所以你可以想象拿到的代码的可读性…

反编译和修改这种行为极有可能构成侵权,请尊重每个开发者,不论出于学习目的还是其他目的

③ 别人的QT程序在我电脑上运行就出现如下错误:

可能是你的编译器环境设置不正确。
看看当前项目是Debug版本还是Release版本。

④ 用Qt框架写的软件怎么反编译

修改替换"framework-res.apk"后导致无法进入系统,或者无限开机重启的,基本都是在编译跟反编译上出了问题!! 首先要完成构建java环境 要想美化,必须先认真看懂下面的每一步, ①framework-res.apk是不可以重签名的

⑤ qt如何在程序崩溃时也不退出

qt在程序崩溃时也不退出方法如下所示:
可打开在上方菜单栏中的“工具-选项-构建和运行-概要”,取消勾选“使用jom代替nmake”选项,即可正常编译运行了。

⑥ 怎么用QT反编译exe文件

可以使用打包工具 Enigma Virtual Box 把需要的dll与exe打包生成一个exe 可以使用静态编译(QT的这个比较麻烦,我没用过) 不要使用QT平台,直接使用VS平台开发

⑦ QT的程序能反编译吗

Qt除了用moc扩展了C++以外其他都和C++没区别,编译出来的机器代码只能转成汇编语言

⑧ qt编译出错 环境变量添加过了,可还是出错,好像是库的问题

Linux下面编译Qt程序的步骤应该是这样的:
1.进入源文件的目录
2.qmake -project
3.qmake
4.make

注意你的qmake一定是系统可以找到的程序。如果环境变量没有添加,或者你希望手动选择使用的qmake,可以直接在你安装qt目录的/bin/qmake 来代替qmake

希望解决你的问题,如果还有问题,请追问。

⑨ qt应用程序编译时的问题

图形库又是建军在FRAMBUFFER上的,FRAMBUFFER是linux内核的图形库,X11系统资源需求大,不能用于嵌入式,所以qt-embedded产生了,它不是建立在X11图形库上的,它是直接建立在FRAMBUFFER上的,占系统资源极少,可以在嵌入式上使用。qtopia-core这个概念是相对于qtopia提出的。它就是qt-embedded。而qtopia是QT公司的一个嵌入式桌面系统,目前已停止开发了。
2、如果arm上没有qt库,不能运行QT程序,必须把相应的QT库按装到ARM板上。
3、qmake产生makefile,make根据makefile调用gcc进行编译。
4、qt-embedded-linux-opensource-src-4.4.3.tar.gz是用在嵌入式上的QT开发库。用法与qt-4.4.3-x11版的用法一样。
5、没有办法仿真,只能先进行qt-embedded的移植工作。但是开发qt-embedded程序时,到是可以在PC机上先用qvfb仿真调试的。
6、qt-embedded库先交叉编译,完成后下载到开发板上,以后开发应用程序时,qt库不用再下载的。
7、写qt程序需要4.0版以上的交叉编译器。网上可以下载现成。
8、这是三个不同版本的gcc交叉编译器,都老了。目前至少应该使用gcc 4.0以上的。
9、肯定是不行的。
10、呵呵,我也是从新手过来的。也问过类似的小白问题。
另外,团IDC网上有许多产品团购,便宜有口碑

⑩ 谁有linux下的QT反编译软件分享一个给我谢谢,objmp不行。

objmp -sd 文件可以的,是不是你没装好呢?

阅读全文

与qt程序防反编译相关的资料

热点内容
鸡料与鸡粪的算法 浏览:833
phpif变量为空值 浏览:59
iot编译器异常 浏览:600
代理服务器被禁用怎么上网 浏览:411
隐私加密怎么设置密码 浏览:940
马丁靴补色解压 浏览:565
在设置app上怎么找到个人热点 浏览:754
按照档案号生成文件夹 浏览:1000
程序员转方向 浏览:111
lol敏捷加密 浏览:882
传统公司眼中的加密货币 浏览:430
电脑图标又出现文件夹怎么去掉 浏览:964
排序算法c和a 浏览:418
手机拍照上传android 浏览:343
linux压缩率 浏览:614
电脑浏览器加密端口 浏览:536
单片机线性电源 浏览:268
韩国云服务器评测 浏览:740
python输出hello 浏览:594
如何在最左侧添加文件夹 浏览:500