静态编译,就是编译器在编译可执行文件的时候,将可执行文件需要调用的对应动态链接库(.so或.lib)中的部分提取出来,链接到可执行文件中去,使可执行文件在运行的时候不依赖于动态链接库。这样就可以发布单一文件的EXE程序了。工具/原料Qt库PythonPerlRuby安装Perl1双击从官网下载的安装...
分类:
其他好文 时间:
2015-12-30 11:33:09
阅读次数:
232
【摘要】动态库*.so在linux下用c和c++编程时经常会碰到,最近在网站找了几篇文章介绍动态库的编译和链接,这里做个笔记。1、动态库的编译下面通过一个例子来介绍如何生成一个动态库。这里有一个头文件:so_test.h,三个.c文件:test_a.c、test_b.c、test_c.c,我们将这几个文件编译成一个动态库:libtest.so。//so_test.h:
#include "stdio...
分类:
系统相关 时间:
2015-08-02 10:15:14
阅读次数:
150
为了进行代码及产品保护,几乎所有的非开源App都会进行代码混淆,这样当收集到崩溃信息后,就需要进行符号化来还原代码信息,以便开发者可以定位Bug。基于使用SDK和NDK的不同,Android的崩溃分为两类:Java崩溃和C/C++崩溃。Java崩溃通过mapping.txt文件进行符号化,比较简单直..
分类:
移动开发 时间:
2015-07-17 22:59:24
阅读次数:
156
SO库为Android版本连接库(*.so文件)作用:以后只要开发提供给我们接口说明,我们就可以直接做接口测试了,不再需要一个个的抓包去分析,降低做接口测试的技术难度一般项目里调用自己的so的方法是:将SO文件直接放到libs/armeabi下,然后代码中System.loadLibrary("xx...
分类:
移动开发 时间:
2015-07-09 11:14:52
阅读次数:
781
Android应用框架层和硬件抽象层以及底层之间的关系1. JNI技术:
(1).JNI技术简单的说就是在本地Java语言声明本地方法和加载动态链接库(.so文件)
(2).动态链接库(.so文件)是由NDK编译C/C++文件而成的。2. HAL层开发:
(1).HAL是Hardware Abstraction Layer的简称。也称为硬件抽象层。...
分类:
移动开发 时间:
2015-05-04 22:10:38
阅读次数:
302
linux应用开发-设计静态库
一 应用程序
函数库(用户)和系统调用(linux内核)
二 库分类
1 静态链接库(*.a)
一个程序使用一个函数库
2 动态链接库(*.so)
多个程序可以使用同一个函数库,减少程序的大小
3 静态库比动态库大
三 制作自己的静态库
1 gcc -c mylib.c -o...
分类:
系统相关 时间:
2015-04-27 09:58:03
阅读次数:
190
GNU:GNUisnotunix.GPL:GeneralpublicLicense,通用公共许可证,版权shell:GUI:GraphicuserInterface windows x-windows Gnome IDE XfaceCLI:CommandLinuxInterface sh bash csh ksh zsh tcshIDE:集成的开发环境DLL:Dynamiclinklibary(动态链接库)SO:sharedobject(共享对象)..
分类:
系统相关 时间:
2015-03-14 20:12:50
阅读次数:
223
进入主题前,先看看两点预备知识。
一、显示调用和隐式调用的区别
我们知道,动态库相比静态库的区别是:静态库是编译时就加载到可执行文件中的,而动态库是在程序运行时完成加载的,所以使用动态库的程序的体积要比使用静态库程序的体积小,并且使用动态库的程序在运行时必须依赖所使用的动态库文件(.so文件),而使用静态库的程序一旦编译好,就不再需要依赖的静态库文件了(.a文件)。...
分类:
系统相关 时间:
2015-02-04 18:41:11
阅读次数:
280
1.安装和下载cygwin,下载Android NDK;2.在ndk项目中JNI接口的设计;3.使用C/C++实现本地方法;4.JNI生成动态链接库.so文件;5.将动态链接库复制到java工程,在Java工程中调用,运行Java工程即可。http://www.dxy.cn/bbs/topic/29...
分类:
移动开发 时间:
2014-12-22 00:52:03
阅读次数:
195
动态库*.so在linux下用c和c++编程时经常会碰到,最近在网站找了几篇文章介绍动态库的编译和链接,总算搞懂了这个之前一直不太了解得东东,这里做个笔记,也为其它正为动态库链接库而苦恼的兄弟们提供一点帮助。1、动态库的编译下面通过一个例子来介绍如何生成一个动态库。这里有一个头文件:so_test....
分类:
系统相关 时间:
2014-10-24 00:08:32
阅读次数:
284