linux下编译 静态库、动态库,动态库依赖静态库
xx.o : xx.h xx.cpp
gcc -g -Wall -fPIC -std=c++ -lstdc++ -o xx.o -c xx.cpp -I ./
libxx.a : xx.o
ar -crv libxx.a xx.o
libTest.so : loadClass.cpp loadClass.h
gcc -g -Wall -shared -fPIC -std=c++ -lstdc++ -o libTest.so loadClass.cpp -I ./
libshared.so: shared.cpp shared.h
gcc -g -Wall -shared -fPIC -std=c++ -lstdc++ -o libshared.so shared.cpp -I ./ libxxCheck.so : xxCheck.cpp xxCheckClass.cpp libxx.a
gcc -g -Wall -fPIC -shared -std=c++ -lstdc++ -o libxxCheck.so xxCheck.cpp xxCheckClass.cpp -I ./ -L. -Xlinker --start-group -lLogic -Xlinker --end-group
#-Xlinker --start-group -lLogic -Xlinker --end-group描述依赖的静态库
Main: main.cpp libTest.so libxxCheck.so
gcc -g -Wall -std=c++ -lstdc++ -o Main main.cpp -I ./ -L ./ -lshared -Wl,-rpath=. -ldl -rdynamic -lTest -lLogicCheck
All: xx.o libxx.a libTest.so libshared.so libxxCheck.so Main
clean:
rm -rf xx.o libxx.a libTest.so libshared.so Main libxxCheck.so
#if (defined _WIN32 || defined _WIN64 || defined WIN32 || defined WIN64)
-Wl,-rpath=./ -Wl,-rpath-link=
linux下编译 静态库、动态库,动态库依赖静态库的更多相关文章
- linux下编译qt5.6.0静态库——configure配置
linux下编译qt5.6.0静态库 linux下编译qt5.6.0静态库 configure生成makefile 安装选项 Configure选项 第三方库: 附加选项: QNX/Blackberr ...
- linux下编译qt5.6.0静态库——configure配置(超详细,有每一个模块的说明)(乌合之众)
linux下编译qt5.6.0静态库 linux下编译qt5.6.0静态库 configure生成makefile 安装选项 Configure选项 第三方库: 附加选项: QNX/Blackberr ...
- linux下编译qt5.6.0静态库(使用./configure --help来看看都有哪些参数。超详细,有每一个模块的说明。如果改变了安装的目录,需要到安装目录下的bin目录下创建文件qt.conf)(乌合之众)good
linux下编译qt5.6.0静态库 linux下编译qt5.6.0静态库 configure生成makefile 安装选项 Configure选项 第三方库: 附加选项: QNX/Blackberr ...
- Linux下编译使用boost库:
Boost是什么不多说, 下面说说怎样在Linux下编译使用Boost的所有模块. 1. 先去Boost官网下载最新的Boost版本, 我下载的是boost_1_56_0版本, 解压. 2. 进入解压 ...
- linux下编译ffmpeg 引入外部库x264
Found no assembler Minimum version is nasm-2.13 If you really want to compile without asm, configure ...
- linux下编译安装boost库
linux下编译安装boost库 linux下编译安装boost库 1.下载并解压boost 1.58 源代码 下载 解压 2.运行bootstrap.sh 3.使用b2进行构建 构建成功的提示 4. ...
- CentOS下编译Lua使得其支持动态链接
在Linux下编译Lua时,我一般都是使用的make generic,这样编译没有什么问题,运行lua的程序也都OK,但是,这样在加载外部的C动态 链接库,却总是报下面的错误 dynamic libr ...
- linux下oracle11G DG搭建(三):环绕备库搭建操作
linux下oracle11G DG搭建(三):环绕备库搭建操作 环境 名称 主库 备库 主机名 bjsrv shsrv 软件版本号 RedHat Enterprise5.5.Oracle 11g 1 ...
- linux下编译.so 和.a 可能出现的问题 ?
1. 静态函数库 这类库的名字一般是libxxx.a:利用静态函数库编译成的文件比较大,因为整个 函数库的所有数据都会被整合进目标代码中,他的优点就显而易见了,即编译后的执行程序不需要外部的函数库支持 ...
- linux下编译原理分析
linux下编译hello.c 程序,使用gcc hello.c,然后./a.out就能够执行:在这个简单的命令后面隐藏了很多复杂的过程,这个过程包含了以下的步骤: ================= ...
随机推荐
- 如何利用WebClient模拟登陆CSRF控制的网站
一般我们都是利用WebRequest这个类来向服务器进行数据的POST,不过很多情况下相应的服务器都有验证,看你是不是登陆,是不是来自同一个域,这些都简单,我们可以更改其属性来达到欺骗服务器.不过如果 ...
- org.springframework.beans.NotWritablePropertyException
刚碰到了这个异常,最后发现是bean配置xml文件中的属性名多了一个空格,这就是xml配置spring的弊端啊. 感谢百度,迅速定位了问题. https://yq.aliyun.com/article ...
- ActiveReport开发入门-列表的交互性
Cognos10以来推出了Active Report,和很多人一样,怀着一颗好奇的心,准备接纳和了解一下这个新生儿,于是乎便有了下面的故事. 1:新建一个活动报表,两行一列拖入一个按钮栏和一个列表 2 ...
- Google Maps API v2密钥申请以及实现地图定位导航
注意新建项目之前需要安装 google play services 然后导入 通过上图方法导入sdk包下面的一个包: \adt-bundle-windows-x86\sdk\extras\googl ...
- C#应用视频教程2.2 OPENGL虚拟仿真介绍
三维在理解了如何绘制2D元素之后,我们尝试绘制3D元素. 其实多个三角形也能够成四面体,多个长方形也能够成六面体,所以绘制3D元素的时候,只要顶点数量匹配就行了 这里我们尤其注意,我把绘制之前的三 ...
- Fireworks如何制作透明窗口PNG
1 做好的透明PNG窗口如图所示,打开之后可以发现其实分层的PNG和Photoshop打开一个PSD文件类似. 2 但是Photoshop并不会像Fireworks一样可以编辑分层的PNG,在打开分层 ...
- UISlider 设置增量
UISlider 设置增量 UISlider *slier = [[UISlider alloc]initWithFrame:CGRectMake(wu500.right, , , )]; slier ...
- 用mapreduce来操作hbase的优化
(1)scan.setCacheBlocks(false); 初始化map任务 TableMapReduceUtil.initTableMapperJob 本次mr任务scan的所有数据不放在缓 ...
- 第十六周oj刷题——Problem I: 改错题:类中私有成员的訪问
Description 改错题: 设计一个日期类和时间类,并编写全局函数display用于显示日期和时间. 要求:display函数作为类外的普通函数,而不是成员函数 在主函数中调用display函数 ...
- 001-Cocos2dx-2.1.3环境搭建-windows
图片丢失,转到:http://blog.csdn.net/whyhowwhat/article/details/51908229