①交叉编译概念 在windows上编译可以在除了windows平台之外 可以执行的机器码 android是Linux windows编译在linux上执行的机器码 动态链接库 .so .dll NDK google提供的交叉编译的工具 ②如何使用ndk指令 ndk-build 添加到环境变量 可以在 ...
分类:
其他好文 时间:
2017-05-21 23:27:25
阅读次数:
484
一、 准备知识 1. 懂Java Android开发。 2. 懂NDK ,C 语言 Android 动态链接库.SO开发。 3. 懂Android反编译Smali 语法。 4. 懂adb 和 jdb 等等工具使用。 5. 懂IDA 调试(远程动态调试APK和本地静态调试.SO文件) 6. 懂Arm汇 ...
分类:
移动开发 时间:
2017-05-07 14:06:13
阅读次数:
202
1. 背景 库:就是已经编写好的,后续可以直接使用的代码。 c++静态库:会合入到最终生成的程序,使得结果文件比较大。优点是不再有任何依赖。 c++动态库:动态库,一个文件可以多个代码同时使用内存中只有一份,节省内存,可以随主代码一起编译。缺点是需要头文件。 网友说:库就是除了main函数之外的其他 ...
分类:
系统相关 时间:
2017-03-12 16:48:16
阅读次数:
291
简要步骤: 1,将c++ 的方法提取到头文件.h中( ) 2,编译cc(c++)文件为动态链接库so文件 3,将头文件放入include目录 .so放入lib目录 4,go程序中指定 CFLAGS 和 LDFLAGS #cgo CFLAGS: -I ./include #cgo LDFLAGS: - ...
分类:
编程语言 时间:
2016-11-02 20:43:09
阅读次数:
510
动态库*.so在linux下用c和c++编程时经常会碰到,最近在网站找了几篇文章介绍动态库的编译和链接,总算搞懂了这个之前一直不太了解得东东,这里做个笔记,也为其它正为动态库链接库而苦恼的兄弟们提供一点帮助。 1、动态库的编译 下面通过一个例子来介绍如何生成一个动态库。这里有一个头文件:so_tes ...
分类:
系统相关 时间:
2016-08-28 13:55:39
阅读次数:
245
转摘网址为:http://www.cnblogs.com/fengyv/archive/2012/08/10/2631313.html Linux下文件的类型是不依赖于其后缀名的,但一般来讲: .o,是目标文件,相当于windows中的.obj文件 .so 为共享库,是shared object,用 ...
分类:
系统相关 时间:
2016-08-02 15:01:45
阅读次数:
349
今天在做东西的时候遇到一个问题,就是如何在C语言中调用C++做的动态链接库so文件如果你有一个c++做的动态链接库.so文件,而你只有一些相关类的声明, 那么你如何用c调用呢,别着急,本文通过一个小小的例子,让你能够很爽的搞定. 链接库头文件:head.h firstso.cpp 编译命令如下:g+ ...
分类:
编程语言 时间:
2016-05-07 23:40:14
阅读次数:
185
http://blog.sina.com.cn/s/blog_54f82cc20101153x.html 动态库*.so在linux下用c和c++编程时经常会碰到,最近在网站找了几篇文章介绍动态库的编译和链接,总算搞懂了这个之前一直不太了解得东东,这里做个笔记,也为其它正为动态库链接库而苦恼的兄弟们 ...
分类:
系统相关 时间:
2016-04-29 09:17:27
阅读次数:
164
参考文献: Linux下g++编译与使用静态库和动态库 用g++编译生成动态链接库*.so的方法及连接(多个.cc生成一个*.so) 占坑
分类:
系统相关 时间:
2016-03-06 20:48:53
阅读次数:
166
VS2010中如何将动态链接库改成静态链接库 VS2010静态编译生成的.exe可执行文件,可以免安装免DLL在其他电脑直接运行。 静态编译:就是在编译可执行文件的时候,将可执行文件需要调用的对应动态链接库(.so)中的部分提取出来,链接到可执行文件中去,使可执行文件在运行的时候不依赖动态链接库.....
分类:
其他好文 时间:
2015-12-30 21:55:31
阅读次数:
1481