Linux服务器在线打包问题Ultraman超人的博客】在线打包过程中遇到一个奇怪的bug(Linuxapktool的包体积变大)1.在在线打包的过程中,我们首先需要根据在线打包自动关联登陆页面,登陆页面也是动态生成的,可选的。@[toc]1.1UMLDiagram:SequenceDiagram:sequenceDiagramUser->>Server:CID--------------------CNAMENoterightofScript:QueueProcessingServer-->>User:URL-----------------CURL流程图:flowchatst=>start:starte=>end:endop=>operation:打包,登陆页面cond=>condition:确认st->op->condcond(yes)->econd(no)->op2。遇到一个奇怪的BUG2.1环境问题:第一次运行会报‘GLIBC_2.14’notfound。注意:虽然服务器是Linux,但是底层的GLIC并不安全。解决这个问题需要单独安装C/C++库,否则打包的时候会报错`GLIBC_2.14'notfound。/lib64/libc.so.6:version`GLIBC_2.14'notfound(requiredby./libz.so.1)查看系统glibc支持的版本,一般是版本太低或者没有安装:[root@djybin]#rpm-qa|grepglibcglibc-common-2.12-1.149.el6.x86_64glibc-headers-2.12-1.149.el6.x86_64glibc-2.12-1.149.el6.x86_64glibc-devel-2.12-1.149.el6.x86_64安装://注意:配置时需要修改环境变量LD_LIBRARY_PATH,当前构建目录不能在LD_LIBRARY_PATH中。[root@djyopt]#wgethttp://ftp.gnu.org/gnu/glibc/glibc-2.14.tar.gz[root@djyopt]#tar-xfglibc-2.14.tar.gz[root@djyopt]#cdglibc-2.14[root@djyglibc-2.14]#mkdirbuild[root@djyglibc-2.14]#cdbuild[root@djybuild]#../configure--prefix=/home/dyc/install/glibc[root@djybuild]#make-j4[root@djybuild]#makeinstall修改环境变量,添加glibc/lib目录:exportLD_LIBRARY_PATH=.:$QTDIR/lib:$PIEV4_SDK_LIB:/home/djy/install/glibc/lib2.2包体积变大的问题在线处理游戏包时,游戏包体由40M变为80M。打包过程的脚本肯定没问题,测试也通过了,所以只有几种情况。环境问题:Linux服务器C/C++底层库问题游戏母包问题jar包引起的脚本问题做了以下尝试:服务器在线打包,Win系统也打包对比。另一个服务器可以比作服务器环境。服务器反编译与WIN系统反编译大小对比。脚本问题依赖的jar问题解决方法:几个小时后,发现问题出在jar的2.1.3,更换最新的2.3.2即可。想要加强的同学可以看这篇文章:《Android apk如何加固防止被破解(防止逆向编译)》
