linux编译c++ 静态库,C/C++ 条件编译静态库

==》windows 下方法:

1.方法一:VS工程中中直接添加

1.1在VS的属性-》常规-》附加库目录,添上文件夹的路径:例如:lib/x64;

1.2输入的附加依赖项,添加上库的名字,例如:dmapi.lib

1.3 对用到该库的代码进行,宏包含,例如:

#ifdef LOG_XY

...

#endif

1.4 当你在工程编译时,在c/c++-》预处理器-》预处理器定义,中未定义LOG_XY 时,就不会依赖库dmapi.lib

2.方法二:在代码中添加

#ifdef _WIN32

#ifdef LOG_XY

#pragma comment(lib,"..\prj_cpt_dm7\\lib\\x64\\dmapi.lib")

#else

//#pragma comment(lib,"..\prj_cpt_dm7\\lib\\x64\\dmapi.lib")

#endif

#endif

即可。

==》LINUX 下,比较简单:

在makefile 中库和头文件中,用宏区分即可,例如:

LOG_XY_FLAG=0

...

ifeg($LOG_XY_FLAG), 1)

LOGXYLIB=-L/opt/test/ -ldmapi

else

LOGXYLIB=

endif

...

然后编译加上上面的LOGXYLIB就可以了。

VS中Debug和Realease、及静态库和动态库的区别整理(转)

原文出自:http://www.cnblogs.com/chensu/p/5632486.html 一.Debug和Realease区别产生的原因 Debug 通常称为调试版本,它包含调试信息,并且不 ...

Linux中的动态库和静态库(.a/.la/.so/.o)

Linux中的动态库和静态库(.a/.la/.so/.o) Linux中的动态库和静态库(.a/.la/.so/.o) C/C++程序编译的过程 .o文件(目标文件) 创建atoi.o 使用atoi. ...

VS2015——命令行下编译、静态库动态库制作以及断点调试

c程序编译流程 程序的基本流程如图: 1. 预处理 预处理相当于根据预处理指令组装新的C/C++程序.经过预处理,会产生一个没有宏定义,没有条件编译指令,没有特殊符号的输出文件,这个文件的含义同原本的 ...

VS中Debug和Realease、及静态库和动态库的区别整理

一.Debug和Realease区别产生的原因 Debug 通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试程序.Release 称为发布版本,它往往是进行了各种优化,使得程序在代码 ...

【C++】如何使用GCC生成动态库和静态库

一.静态库和动态库的定义及区别 程序编译的四个过程: 1.预处理  展开头文件/宏替换/去掉注释/条件编译(.i后缀) 2.编译    检查语法,生成汇编(.s后缀) 3.汇编    汇编代码转换成机 ...

Linux动静态库

gcc编译过程 预处理,gcc -E,.c->.i 展开宏和头文件,替换条件编译,删除注释.空白和空行 编译, gcc -S,.i -> .s 检查语法规范 [消耗时间和系统资源最多] 汇 ...

iOS开发中静态库之".framework静态库"的制作及使用篇

iOS开发中静态库之".framework静态库"的制作及使用篇 .framework静态库支持OC和swift .a静态库如何制作可参照上一篇: iOS开发中静态库之" ...

iOS开发中静态库制作 之.a静态库制作及使用篇

iOS开发中静态库之".a静态库"的制作及使用篇 一.库的简介 1.什么是库? 库是程序代码的集合,是共享程序代码的一种方式 2.库的类型? 根据源代码的公开情况,库可以分为2种类 ...

随机推荐

node read file fs

var fs = require("fs") fs.readFile("file.txt","UTF-8",function(err,dat ...

bzoj 1042 HAOI2008 硬币购物

这道题思路是在是神. 先dp出没有限制时候的方案数. dp的时候注意 先循环 1..4 再循环 1..maxs 防止重复.边界是f[0] = 1. 这么基础的背包都忘记了=_= 接下来处理有重复的问题 ...

CSS布局部分知识总结

一 切图 通过一个周的切图练习,我发现只有亲自动手后才能通过问题不断加深技术,要熟练掌握HTML页面编写时候时PHOTOSHOP操作. 以下一些知识点在网络布局时也是很重要的. 1.ul标签在谷歌.火 ...

Java进阶篇(一)——接口、继承与多态

前几篇是Java的入门篇,主要是了解一下Java语言的相关知识,从本篇开始是Java的进阶篇,这部分内容可以帮助大家用Java开发一些小型应用程序,或者一些小游戏等等. 本篇的主题是接口.继承与多态, ...

【论文阅读】Sequence to Sequence Learning with Neural Network

Sequence to Sequence Learning with NN 原文google scholar下载. @author: Ilya Sutske ...

css实现布局

1.两栏布局 两栏布局一般就是一栏定宽一栏自适应(也就是流动).分的细的话还有左栏定宽右栏自适应.右栏定宽左栏自适应. 举个栗子:一栏定宽200px,一栏自适应.

微信小程序——获取用户unionId

1.获取code 2.获取openid 3.获取access_token 4.获取unionid

关于div

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/416292.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[BZOJ 2654]tree(陈立杰)

Description 给你一个无向带权连通图,每条边是黑色或白色。让你求一棵最小权的恰好有need条白色边的生成树。题目保证有解。Input 第一行V,E,need分别表示点数,边数和需要的白色边数。接下来E行,每行s,t,c,col表示这边的端点(点从0开始标号),…

DM3软件如何在linux中安装,DM3 文件扩展名: 它是什么以及如何打开它?

DM3 疑难解答频繁的 DM3 打开问题ImageJ 不存在你尝试加载 DM3 文件并收到错误,例如 “%%os%% 无法打开 DM3 文件扩展名”。 通常,%%os%% 中会出现这种情况,因为 ImageJ 未安装在你的电脑上。 你将无法双击以打开 DM3,因为你的操作…

CentOS6.8下安装memcached并设置开机自启动

参考资料:http://www.cnblogs.com/handongyu/p/6419305.html http://coolnull.com/1986.html 一、安装libevent 首先检查系统中是否安装了libevent [rootyeebian ~]# rpm -qa | grep libevent 如果安装了则查看libevent的安装路径,后续安装时需要用到 […

ftp 530 linux,Linux启动ftp服务器530 Permission denied解决方法

重新在虚拟机下安装了linux。现在我想启动linux自带的ftp服务器:#service vsftpd start 。如果想linux启动是自动启动ftp服务器:#chkconfig vsftpd on 。运行putty,以root身份进入,出现了报错 530 Permission denied &…

Shiro身份认证授权原理

shiro在应用程序中的使用是用Subject为入口的, 最终subject委托给真正的管理者ShiroSecurityMannager Realm是Shiro获得身份认证信息和来源信息的地方(所以这里是我们实现的)我们只要继承他的实现类重写方法就好了,AuthorizingRealm 身份认证过程 自定义…

linux进程路由策略,linux路由表,策略路由,路由查找

路由表内核中路由表有2种:l 一个是缓存路由(fib),是自动学习生成自动管理的,用户没必要去干预,但是内核还是提供了方法让用户可以去清空它。但是用户不能设置它的项,但是可以根据这个缓存更新的原理从外部影响他。l 路…

图形桌面linux触摸,新手看招:用图形桌面访问Linux操作系统

创建用户帐户:adduser login-name (OS:Red Hat)useradd login-name (OS:SuSe)为帐户添加密码:passwd login-name (密码应该包括一个数字,且不能为英文单词)结束登录程序,启动另一登录实例:CtrlD从终端启动图形窗口环境…

Python namedtuple(命名元组)使用实例

Python namedtuple(命名元组)使用实例 #!/usr/bin/python3import collectionsMyTupleClass collections.namedtuple(MyTupleClass,[name, age, job]) obj MyTupleClass("Tomsom",12,Cooker) print(obj.name) print(obj.age) print(obj.job)执行结果: To…

pd怎么卸载linux系统,parallels desktop11怎么卸载?parallels desktop11卸载方法

parallels desktop11是一款功能强大的MAC虚拟机软件,用户通过该软件可在mac系统下运行安装windows或Linux操作系统,不过很多时候用户在安装后,由于后期没有使用虚拟机的需求,故此想要将其删除,但是又不知道如何操作&am…

html5中使页面中元素居中

在div中加入 style"text-align: center;

linux下jdk源码安装,Linux JDK 源码安装

一 环境1.1 操作系统[roothost-xxxsoft]# lsb_release -aLSB Version: :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarchDistributor ID: CentOSDescription: CentOS re…

Python map/reduce

2017-07-31 18:20:59 一、map函数 map():会根据提供的函数对指定序列做映射。第一个参数 function 以参数序列中的每一个元素调用 function 函数,返回包含每次 function 函数返回值的iterator,即迭代器,使用list函数可以将之转成列表。 map(f…

linux裸机安装nginx,linux环境下安装nginx步骤 - 进击的乌龟 - 博客园

开始前,请确认gcc g开发类库是否装好,默认已经安装。ububtu平台编译环境可以使用以下指令apt- get install build- essentialapt - get install libtoolcentos平台编译环境使用如下指令安装make:yum -y install gcc automake autoconf libtoo…

Effective C++ 条款21

必须返回对象时。别妄想返回其reference 我们上节分析了对象引用传递的优点,如今说明函数返回引用对象带来的种种坏处。 先来一段代码: class Rational{ public:Rational(int numerator0, int denominator1);…… private:int n, d;friendconst Rationa…

html 中 em

◆px像素(Pixel),相对长度单位。像素px是相对于显示器屏幕分辨率而言的。 ◆em是相对长度单位,相对于当前对象内文本的字体尺寸。如当前对行内文本的字体尺寸未被人为设置,则相对于浏览器的默认字体尺寸。 因此用px来定…

c语言命名参数,按照C语言的规定,实参和形参的命名不得重复。

按照羊脂玉具有( )光泽。衡量睡眠质量好坏包括入睡快慢,睡眠深浅,睡后能否解乏(精神情况、规定是否影响日常的工作和生活)三个方面。参和“有药吃而无伙食命亦难保”提示健康普及必须遵循的经济性原则。形参治病与调补都需要辩证,其中区别在于用药与药量的不同。命得重咳嗽除了…

雇佣兵

题目链接:http://noi.openjudge.cn/ch0105/37/ 总时间限制: 1000ms内存限制: 65536kB描述雇佣兵的体力最大值为M,初始体力值为0、战斗力为N、拥有X个能量元素。 当雇佣兵的体力值恰好为M时,才可以参加一个为期M天的战斗期,战斗期结…