
编译
风中1匹狼
Live is fucking movie
展开
-
动态库的链接和链接选项-L,-rpath-link,-rpath【转】
(转自:https://my.oschina.net/shelllife/blog/115958)链接动态库如何程序在连接时使用了共享库,就必须在运行的时候能够找到共享库的位置。linux的可执行程序在执行的时候默认是先搜索/lib和/usr/lib这两个目录,然后按照/etc/ld.so.conf里面的配置搜索绝对路径。同时,Linux也提供了环境变量LD_LIBRARY_PATH供用户选择使用,用户可以通过设定它来查找除默认路径之外的其他路径,如查找/work/lib路径,你可以在/etc/rc转载 2020-10-22 11:14:46 · 748 阅读 · 0 评论 -
autoscan、aclocal、automake和autoconf区别【转】
(转自:https://blog.youkuaiyun.com/renhui1112/article/details/96480535)autoscan:扫描源代码以搜寻普通的可移植性问题,比如检查编译器,库,头文件等,生成文件configure.scan,它是configure.ac的一个雏形;aclocal:根据已经安装的宏,用户定义宏和acinclude.m4文件中的宏将configure.ac文件所需要的宏集中定义到文件 aclocal.m4中。aclocal是一个perl 脚本程序,它的定义是转载 2020-07-31 11:16:52 · 363 阅读 · 0 评论 -
GCC编译时增加宏定义-D标识符,相当于宏定义#define 标识符【转】
(转自:https://blog.youkuaiyun.com/u012435142/article/details/83217883)GCC编译时增加宏定义-D<标识符>,相当于#define <标识符>,可以在遇到条件编译时执行。#ifdef <标识符> //条件编译内容#endif例子: 搭配gcc编译命令:gcc -DDEBUG -g -o...转载 2020-04-14 14:43:52 · 492 阅读 · 0 评论 -
pkg-config 详解【转】
(转自:https://blog.youkuaiyun.com/newchenxf/article/details/51750239)1 什么是pkg-configpkg-config是一个linux下的命令,用于获得某一个库/模块的所有编译相关的信息。例子:pkg-config opencv –libs –cflags结果:-I/usr/include/opencv/usr...转载 2020-03-25 11:32:38 · 730 阅读 · 0 评论 -
打补丁文件时候patch -p1命令的含义【转】
(转自:https://blog.youkuaiyun.com/zhangmeimei_pku/article/details/79483692)其实patch在具体使用的时候是不用指定原文件的,因为补丁文件中都已经记载了原文件的路径和名称。patch足够聪明可以认出来。但是有时候会 有点小问题。比如一般对两个目录diff的时候可能已经包含了原目录的名字,但是我们打补丁的时候会进入到目录中再使用patch...转载 2020-03-25 10:20:06 · 888 阅读 · 0 评论 -
Makefile中语句的顺序【转】
(转自:https://blog.youkuaiyun.com/qq_35524916/article/details/77131555)最近碰到一个makefile文件,make之后发现不是按照从上到下的顺序执行的,立刻查找了一下原因,专门记下。在linux下,makefile的执行实际上分为两个阶段进行第一阶段:读取所有的makefile文件(包括“MAKEFILES”变量指定的、指示符“includ...转载 2020-03-24 17:25:49 · 1008 阅读 · 0 评论 -
makefile '@' '$' '$$' '-' '-n ' 使用小结【转】
(转自:https://blog.youkuaiyun.com/kehyuanyu/article/details/21454789)'@'符号的使用通常makefile会将其执行的命令行在执行前输出到屏幕上。如果将‘@’添加到命令行前,这个命令将不被make回显出来。例如:@echo--compiling module----; // 屏幕输出--compil...转载 2020-03-24 10:16:18 · 492 阅读 · 0 评论 -
make太慢了,加快编译速度的方法 make -j【转】
(转自:https://blog.youkuaiyun.com/gonghuihuihui/article/details/79091762)make -j 既然IO不是瓶颈,那CPU就应该是一个影响编译速度的重要因素了。 用make -j带一个参数,可以把项目在进行并行编译,比如在一台双核的机器上,完全可以用make -j4,让make最多允许4个编译命令同时执行,这样可以更有效的利用CPU资源...转载 2020-03-23 22:26:43 · 1092 阅读 · 0 评论 -
Linux下C程序的反汇编【转】
(转自:https://blog.youkuaiyun.com/u011192270/article/details/50224267)Linux下C程序的反汇编前言:本文主要介绍几种反汇编的方法。gccgcc的完整编译过程大致为:预处理->编译->汇编->链接前三个步骤分别对应了-E、-S、-c三个选项。今天我要介绍的第一种方法就是使用-S这个选项。源程序mai...转载 2018-04-08 10:48:37 · 822 阅读 · 0 评论 -
如何使用GCC生成动态库和静态库【转】
(转自:https://www.cnblogs.com/qingjiaowoxiaoxioashou/p/6410588.html)根据链接时期的不同,库又有静态库和动态库之分。静态库是在链接阶段被链接的,所以生成的可执行文件就不受库的影响,即使库被删除,程序依然可以成功运行。而动态库是在程序执行的时候被链接的。程序执行完,库仍需保留在系统上,以供程序运行时调用。链接静态库从某种意义上来说是一...转载 2018-05-31 21:34:53 · 195 阅读 · 0 评论 -
gcc编译工具生成动态库和静态库之一----介绍【转】
(转自:https://blog.youkuaiyun.com/yanlaifan/article/details/52192977)gcc编译工具生成动态库和静态库之一--介绍gcc作为编译工具,用在Linux操作系统中,可以编译C、C++、Object-C、JAVA等语言。编译过程中可以带编译选项,选择编译过程。一、GCC编译流程1)预处理 Pre-Processing2)编...转载 2018-05-31 21:39:12 · 234 阅读 · 0 评论 -
gcc编译工具生成动态库和静态库之二----实例【转】
(转自:https://blog.youkuaiyun.com/yanlaifan/article/details/52193118)gcc编译工具生成动态库和静态库之二----实例 上篇讲述了gcc使用规则,工欲善其事必先利其器,接下来,用实践检验真理。一、工程树工程树目录图exe目录中存放可执行文件;lib目录中存放动态库文件或静态库文件;sour...转载 2018-05-31 21:41:21 · 195 阅读 · 0 评论 -
GCC 命令行详解 -L 指定库的路径 -l 指定需连接的库名【转】
(转自:http://blog.chinaunix.net/uid-26588712-id-3053955.html)1. 为什么会出现undefined reference to 'xxxxx'错误?首先这是链接错误,不是编译错误,也就是说如果只有这个错误,说明你的程序源码本身没有问题,是你用编译器编译时参数用得不对,你没有指定链接程序要用到得库,比如你的程序里用到了一些数学函数,...转载 2018-05-31 23:37:25 · 2606 阅读 · 0 评论 -
gcc指定头文件路径及动态链接库路径【转】
(转自:https://blog.youkuaiyun.com/mybelief321/article/details/9099659)本文详细介绍了linux 下gcc头文件指定方法,以及搜索路径顺序的问题。另外,还总结了,gcc动态链接的方法以及路径指定,同样也讨论了搜索路径的顺序问题。本文包含了很多的例子,具有很强的操作性,希望读者自己去走一遍。一.#include <>与#i...转载 2018-05-31 23:39:37 · 553 阅读 · 0 评论 -
静态库链接动态库时,如何使用该静态库【转】
(转自:https://blog.youkuaiyun.com/newchenxf/article/details/51735600) 版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.youkuaiyun.com/newchenxf/article/details/51735600 ...转载 2018-11-01 00:25:52 · 313 阅读 · 0 评论 -
静态链接库和动态链接库的区别【转】
(转自:https://www.cnblogs.com/deepblueme/p/4804954.html)静态链接库和动态链接库的区别一、静态链接库预编译->编译->汇编->链接Linux:生成目标文件g++ -c source.cpp -o source.o打包成静态链接库ar -crv source.a source.o使用静态链接...转载 2018-10-31 22:27:14 · 259 阅读 · 0 评论 -
gcc编译cpp文件为什么要加-lstdc++【转】
(转自:https://blog.youkuaiyun.com/iloveyousunna/article/details/78527071)gcc可以编译c++文件,也可以编译c文件,但默认是编译c文件的,加-lstdc++表示编译c++文件,即链接c++库,加-lc表示链接c库,默认情况下就是链接c库,所以如果编译c文件可以不加-lc。(转自:https://blog.youkuaiyun.com/ha...转载 2018-10-31 21:55:06 · 2709 阅读 · 0 评论 -
linux 环境变量设置方法总结(PATH/LD_LIBRARY_PATH)【转】
(转自:https://blog.youkuaiyun.com/wangeen/article/details/8159500)PATH和LD_LIBRARY_PATH本质都是变量,所谓变量的意思就是由别人赋值产生的,直觉往往会让我们添加和减少这个变量本身的某些路径,实际上这是不正确的。正确的做法是我们要去修改赋予这个变量数值的那些配置文件,加一条路径或者减一条。说到底变量只关乎显示,不关乎其用于显...转载 2018-10-31 21:38:03 · 212 阅读 · 0 评论 -
python对于.py文件的编译和解释【转】
(转自:https://blog.youkuaiyun.com/xuqiaobo/article/details/74360707)当程序执行时,Python的编译器会将.py文件中的源代码编译成所谓字节码的形式,编译是一个简单的翻译步骤,而且字节码是源代码底层的、与平台无关的表现形式,这些字节码可以提高执行速度,比起文本文件中的原始的源代码语句,字节码的运行速度要快的多。字节码程序一般存放在和.py文件...转载 2018-09-19 14:17:21 · 314 阅读 · 0 评论 -
编译语言、解释语言与脚本语言之间的区别【转】
(转自:https://blog.youkuaiyun.com/wm_1991/article/details/51853900)资料一:1、解释型语言与编译型语言的区别翻译时间的不同。。编译型语言在程序执行之前,有一个单独的编译过程,将程序翻译成机器语言,以后执行这个程序的时候,就不用再进行翻译了。解释型语言,是在运行的时候将程序翻译成机器语言,所以运行速度相对于编译型语言要慢。C/C++ 等...转载 2018-09-19 14:04:17 · 448 阅读 · 0 评论 -
编译型语言与解释型语言的区别及各自的优缺点【转】
(转自:https://blog.youkuaiyun.com/GIRLDWH0715/article/details/70228553)编译型语言在程序执行之前,有一个单独的编译过程,将程序翻译成机器语言就不用再进行翻译了。解释型语言,是在运行的时候将程序翻译成机器语言,虽然Java程序在运行之前也有一个编译过程,但是并不是将程序编译成机器语言,而是将它编译成字节码(可以理解为一个中间语言)。在运行...转载 2018-09-19 13:59:19 · 2988 阅读 · 0 评论 -
脚本语言和编译语言的区别【转】
(转自:https://blog.youkuaiyun.com/m0_37338590/article/details/75209061)之前学了很多语言,例如c,c++,Java,c#,Python,突然想知道他们是怎么分类的,突然有疑问什么是编译语言,什么是脚本语言,查了一些资料,有了简单的初步了解,下面是总结的一部分内容,如果有什么问题敬请指正!什么是脚本语言? 脚本语言是一种介于标记语言...转载 2018-09-19 13:51:21 · 16254 阅读 · 1 评论 -
你或许应该知道的LLVM【转】
转自:http://www.vienta.me/2014/06/11/%E4%BD%A0%E6%88%96%E8%AE%B8%E5%BA%94%E8%AF%A5%E7%9F%A5%E9%81%93%E7%9A%84LLVM/作为iOS或者Mac开发者,你也许非常眼熟LLVM这个字眼,但也许没有太去在意它。在很长的一段时间内,我就是处于这个状态,不知道它背后是在干嘛。随着苹果新语言swi...转载 2018-07-19 11:20:52 · 582 阅读 · 0 评论 -
linux编译动态库和静态库的makefile示例【转】
(转自:https://blog.youkuaiyun.com/shaoxiaohu1/article/details/46943417)根据GenDll.cpp文件,分别生成动态库.so和静态库.a文件,需要依赖的外部库为opencv。1. 静态库的生成makefile命令的简介可参考:跟我一起写 Makefile。使用ar命令生成.a文件,可参考:Linux下动态库(.so)和静态库(....转载 2018-05-31 23:41:09 · 1131 阅读 · 0 评论 -
gcc -static 命令【转】
(转自:https://blog.youkuaiyun.com/newchenxf/article/details/51743181)刚发现,这是一个神奇的命令! 比如,现在有个简单的程序。该程序依赖于动态库libpthread.so#include <stdio.h>#include <pthread.h>/* this function is run by the s...转载 2018-11-01 10:24:16 · 2246 阅读 · 1 评论