首先从Linux下开始讲起,因为Linux编程对程序的理解要清楚一些,相比之下VC就比较容易糊涂。
当动态编译时,你发布的程序体积较小,在运行的时候需要同时提供你用到的dll / so文件。
当静态编译时,你发布的程序体积较大,包含所有符号,运行时不需要其他的 dll/so的技术,可以独立运行。
静态编译的目的是使发布的程序可以独立运行,不依赖于其他*.so,在技术上是把所有依赖的符号...
分类:
系统相关 时间:
2014-06-15 18:41:18
阅读次数:
291
作者:Vamei 出处:http://www.cnblogs.com/vamei
欢迎转载,也请保留这段声明。谢谢!在“纸上谈兵: 算法与数据结构”中,我在每一篇都会有一个C程序,用于实现算法和数据结构
(比如栈和相关的操作)。在同一个程序中,还有用于测试的main()函数,结构体定义,函数原型,t...
分类:
其他好文 时间:
2014-05-27 01:10:02
阅读次数:
240
1.在工程下新建 jni/libs 文件夹 , jni 是和原来的libs 同级 ,将所有的.so文件放入 新建的libs文件下
2.在build.gradle 文件中新增以下内容到android{ } 下
task copyNativeLibs(type: Copy) {
from(new File(project(':HealthCare'...
分类:
移动开发 时间:
2014-05-22 08:50:52
阅读次数:
381
NDK开发Android.mk编写samples
1、
jni中包含多个源文件,且多个文件编译成为不同的so文件
(1)jni/Android.mk:
include $(call all-subdir-makefiles) (包含所有子目录下Android.mk)
注意:在写Android.mk文件时,
call all-subdir-makefiles和call all-...
分类:
移动开发 时间:
2014-05-15 12:24:51
阅读次数:
358
(1)cd
/usr/local/php-5.2.17/ext/mysqli(2)输入/usr/local/php/bin/phpize 回车(3)./configure
--prefix=/usr/local/mysqli --with-php-config=/usr/local/php/bin....
分类:
其他好文 时间:
2014-05-15 09:34:06
阅读次数:
292
众所周知,在android系统上,有时候我们遇到so文件的crash只能打log,但是很多时候并不知道crash在什么地方,幸运的是crash后,一般可以产生一个.dmp文件。
我们可以根据这个文件来得到更为详细的statck trace。
主要用的就是google提供的一些方法,命令太复杂,很容易出错,所以我写了一个python脚本,简化步骤。
详情可以参考 https://code.go...
分类:
移动开发 时间:
2014-05-14 19:45:57
阅读次数:
454
一、自述Nginx模块功能也是相当的丰富,但对于ApacheWeb来说,两者之间还是有区别的,大家都知道Nginx模块是直接被编译进了nginx.conf配置文件,而Apache则是被编译成为.SO文件,有些是需要在httpd.conf配置文件中指定是否加载,这样才能激活模块功能。Nginx模块有三个角色,Ha..
分类:
其他好文 时间:
2014-05-09 21:31:42
阅读次数:
413
在逆向分析Android
APK的时候,往往需要分析它的.so文件。这个.so文件就是Linux的动态链接库,只不过是在ARM-cpu下编译的。所以学习Android下的ARM指令很重要。目前,市面上的ARM-cpu基本都支持一种叫做THUMB的指令集模式。这个THUMB指令集可以看作是ARM指.....
分类:
移动开发 时间:
2014-05-05 10:18:41
阅读次数:
451
本文介绍了在Android
Studio引用jar及so文件(类库)的方法,并提供了一个使用百度语音识别引擎的例子下载。
分类:
移动开发 时间:
2014-05-01 20:59:35
阅读次数:
540
如果使用自己手动生成的动态链接库.so文件,但是这个.so文件,没有加入库文件搜索路劲中,程序运行时可能会出现找不到动态链接库的情形。可以通过ldd命名来查看可执行文件依赖的动态链接库,如下(其中D为可执行程序):其中的libjson_linux-gcc-4.6_libmt.so
cannot fo...
分类:
系统相关 时间:
2014-04-29 09:41:46
阅读次数:
536