主要是gcc编译时候选择是静态库还是动态库。如下
gcc -c test.c
ar -r test.a test.o 生成静态库
gcc -fPIC -shared test.c -o test.so 生成动态库
自己生成的动态库为了能够让ld找到,必须要修改连接路径或者把动态库放到指定的目录里面。这样so文件就修改好了。
so文件怎么修改
在修改之前,请确定你要修改的版本是没有加固,没有保护的,不然请去除保护后再进行修改,否则游戏会发生闪退。
1、工具(16进制编辑器)
Android移动设备:
Hex Editor Pro
MT管理器
.....
基于Windows的计算机:
Winhex
010Editor
SO文件是Linux下共享库文件,它的文件格式被称为ELF文件格式。由于Android操作系统的底层基于Linux系统,所以SO文件可以运行在Android平台上。