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就能够执行:在这个简单的命令后面隐藏了很多复杂的过程,这个过程包含了以下的步骤: ================= ...
 
随机推荐
- 弹性方框模型 (Flexible Box Model) 快速入门
			
简介 我可以肯定,您对于页面上水平或垂直排列的样式元素已经了解得够多了.但是,CSS 还缺少适用于此任务的合适机制.了解 CSS3 弹性方框模型(简称 Flexbox) 该草案将 Flexbox 描述 ...
 - Javascript里面的时间处理:将时间戳或时间对象转成字符串格式
			
问题背景:想把一个时间直接转成字符串格式 通过查api发现有个toLocaleString(),根据本地时间格式,把 Date 对象转换为字符串 new Date().toLocaleString() ...
 - xampp下载地址 一个集成的易于安装的WEB环境部署包
			
XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建站集成软件包.这个软件包原来的名字是 LAMPP,但是为了避免误解,最新的几个版本就改名为 XAMPP 了.它可以在Windo ...
 - python常用代码积累
			
一.文件操作 1.判断一个目录是否存在,若不存在则创建 if not os.path.isdir(new_path): os.makedirs(new_path) 2.新建一个文件 f=open(&q ...
 - IIS7.5 取消301重定向
			
今天想把一个域名解析到对应的www的域名,添加了301重定向. 结果域名解析那里是把www解析到了对应的域名,结果就是重定向循环.立即删除了IIS中重定向,结果还是无法解决. 以为是有缓存,重 ...
 - python命令行參数解析实例
			
闲言少述,直接上代码 #!/usr/bin/env python # # import json import getopt, sys def usage(): print sys.argv[ ...
 - 第一章:走近java-深入理解java虚拟机-读书总结
			
java技术体系: 1.java程序设计语言 2.硬件平台上的java虚拟机 3.class文件格式 4.java的API类库 5.第三方的类库 JDK: java语言,虚拟机,java API类库 ...
 - OSG 集群渲染 cluster  render   支持 Cave 和 powerwall 模式
			
写了几天.用OSG,实现了集群渲染,感觉还不错,线性加速比还算能够.採用KDTree .八叉树管理场景.场景数据通过UDP和TCP. 不用复制文件,直接在线读取(主节点向渲染节点同步模型数据).效率基 ...
 - Linux命令-帮助命令:man
			
man ls 查看ls命令的帮助信息(输出结果和less命令一样,需要空格,回车,,上箭头,下箭头,PgUp,PgDn,q等方式浏览) 注意:由于这个文件信息量比较大,需要查找某一个字符,输入/,输入 ...
 - eclipse项目引用项目方法
			
在Java Build Path中将被引用项目Add加入到引用项目中. 在Deployment Assembly中将被引入项目Add加到配置项中. 这样在项目发布到tomcat中时被引入项目会被打成j ...