技术标签: 工具类
编译相关索引:https://blog.csdn.net/knowledgebao/article/details/84973055
./configure常用参数解释:
具体通过–help来查看具体支持什么功能。有时候编译不通过,可能依赖一些库,如果这些库关联的功能我们不需要,可以通过---disable-*lib来取消相关库的编译。
--disable-FEATURE
一些软件包可以选择这个选项来提供为大型选项的编译时配置,例如使用Kerberos认证系统或者一个实验性的编译器最优配置.如果默认是提供这些特性,可以使用'--disable-FEATURE'来禁用它,这里'FEATURE'是特性的名字.例如:
$ ./configure --disable-gui
-enable-FEATURE[=ARG]
相反的,一些软件包可能提供了一些默认被禁止的特性,可以使用'--enable-FEATURE'来起用它.这里'FEATURE'是特性的名字.一个特性可能会接受一个可选的参数.例如:
$ ./configure --enable-buffers=128
`--enable-FEATURE=no'与上面提到的'--disable-FEATURE'是同义的.
--with-PACKAGE[=ARG]
在自由软件社区里,有使用已有软件包和库的优秀传统.当用'configure'来配置一个源码树时,可以提供其他已经安装的软件包的信息.例如,倚赖于Tcl和Tk的BLT器件工具包.要配置BLT,可能需要给'configure'提供一些关于我们把Tcl和Tk装的何处的信息:
$ ./configure --with-tcl=/usr/local --with-tk=/usr/local
'--with-PACKAGE=no'与下面将提到的'--without-PACKAGE'是同义的.
--without-PACKAGE
有时候你可能不想让你的软件包与系统已有的软件包交互.例如,你可能不想让你的新编译器使用GNU ld.通过使用这个选项可以做到这一点:
$ ./configure --without-gnu-ld
--enable-static:编译静态库
--enable-shared:编译动态库
--with-pic:仅使用PIC编译,当编译出来的库被其他库调用的时候,其他库使用PIC编译,则依赖的库也需要加PIC
–prefix=/home/carl:指定安装位置,如果安装位置不指定,默认路径为/usr/local下的bin、lib等文件夹
--exec-prefix=EPREFIX与'--prefix'选项类似,但是他是用来设置结构倚赖的文件的安装位置.编译好的'emacs'二进制文件就是这样一个问件.如果没有设置这个选项的话,默认使用的选项值将被设为和'--prefix'选项值一样.
--libdir=DIR,指定库文件的安装位置.
--includedir=DIR,指定C头文件的安装位置.其他语言如C++的头文件也可以使用此选项.
--build: 执行代码编译的主机,正常的话就是你的主机系统。这个参数一般由config.guess来猜就可以。当然自己指定也可以。可以默认不写,默认为当前正在使用的主机,查看本机使用的可以在configure目录下执行./config.guess
--host:就是你编译好的程序可以运行的机器,如果没有指定,将会运行`config.guess’来检测。
--target: 这个选项只有在建立交叉编译环境的时候用到,正常编译和交叉编译都不会用到。他用build主机上的编译器,编译一个新的编译器(binutils, gcc,gdb等),这个新的编译器将来编译出来的其他程序将运行在target指定的系统上。如果不编译新的编译器,这个参数可以不填,或者与 host的参数一致。比如你build的机器是x86,想运行的host机器是arm,程序可以处理的程序target是mips
下边的选项需要卸载configure前边,比如CFLAGS="-g -O0" ./configure
CC:指定编译工具链的名字,指定GCC 交叉编译器命令,如果配置了,则使用CC配置的编译器,如果不配置则默认为host对应的GCC工具。如配置了 --host=arm-xilinx-linux-gnueabi,则默认CC的编译器为 arm-xilinx-linux-gnueabi-gcc,这个参数如无特殊指定,可以忽略不写。
CFLAGS:指定头文件(.h文件)的路径,如:CFLAGS=-I/usr/include -I/path/include
CFLAGS="-g -O0" ./configure添加-O0级别的调试信息
LDFLAGS:gcc 等编译器会用到的一些优化参数,也可以在里面指定库文件的位置。用法:LDFLAGS=-L/usr/lib -L/path/to/your/lib
LIBS:告诉链接器要链接哪些库文件,如LIBS = -lpthread -liconv
其他更详细的参数可以参考:https://www.xuebuyuan.com/3196393.html
1,为什么自己编译好的64位库没有安装到/usr/lib64目录下
方法一:cp /usr/lib/libXXX.so /usr/lib64/
方法二:./configure --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64
一、课程的性质和目标1、选课对象①大学三年级及以上计算机相关专业的本科学生;②计算机专业的考研者;③计算机相关领域的工程技术人员;2、课程类别:学科基础课;3、教材的选择本课程以“电子科技大学/计算机科学与工程学院”前辈教师(如俸远祯、罗克露教授等)主编的《计算机组成原理》系列教材为主进行讲授,本次选用纪禄平老师(课程主讲人)近年改版/主编的新版教材:《计算机组成原理-面向实践能力培养(第4版)》...
Java实现打印功能转载:http://www.cnblogs.com/gaopeng527/p/4357591.html用java实现打印,java.awt中提供了一些打印的API,要实现打印,首先要获得打印对象,然后继承Printable实现接口方法print,以便打印机进行打印,最后用Graphics2D直接输出直接输出。下面的例子实现了打印字符串,线(包括虚线)和打印图片。而且通过Pap...
编者按:对许多程序员来说,给苹果开发应用,多少都要经历一些坑。近日,苹果又在开发者网站上发出通知,自2018年7月起,应用商店的所有应用及更新必须以 iOS 11 SDK构建(包括Xcode[9.0]及以上)。那么苹果应用的质量, 用户感受确实堪称优秀吗?本文编译自Johnny Lin在Medium上发表的文章How to Make $80,000 Per Month on the Apple A...
一,Java的特点1、跨平台性:不受计算机硬件及操作系统的约束而在任意计算机环境下运行。2、面向对象:以对象为基本粒度,基下包含属性和方法。3、安全性:语言级安全性、编译性安全性、运行时安全性、可执行代码安全性。4、多线程:支持事务并发,多任务处理。5、简单易用:Java源代码的书写不拘泥于特定的环境,记事本、EditPlus等等。二,Java的应用分类1.应用程序 : 1.1GUI应用程序:图形用户界面应用程序,实现输入界面和输出显示1.2命令行程序 1.3 嵌...
介绍MATLAB中对数组元素排序的有关函数,介绍三个函数,分别是issorted,sort,sortrow。工具/材料MATLAB 2016a操作方法01首先,通过issorted函数可以判断列表或者数组是否是升序。默认对列表使用,如图。02请注意,降序排列issorted将返回0。03当对数组使用issorted函数时,必须带有第二个参数'rows',用以检查是否按行升序。04issorted按...
前提:已经安装了git前言:由于安装了git后,默认的git只能在它所在目录下使用git,非常不方便,所以我们使用以下软件包,达到可以在任何目录下使用Git软件下载:https://github.com/1stPeak/posh-git-masterWin+x -> 运行Powershell(管理员)。Powershell默认不支持运行脚本,需要首先执行指令Set-Execution...
文章目录Kotlin 数据类与密封类数据类复制实例数据类以及解构声明标准数据类密封类ENDKotlin 数据类与密封类数据类Kotlin 可以创建一个只包含数据的类,关键字为 data:data class User(val name: String, val age: Int)编译器会自动的从主构造函数中根据所有声明的属性提取以下函数:equals() / hashCode()toString() 格式如 “User(name=John, age=42)”componentN() fu
序篇笔者对于「想要拥有个人网站」这事儿,在过去几年总会偶尔灵光一现,心血来潮地买下几个月的轻应用服务器以及域名,然后兴高采烈地架设起来,更换各种博客主题,记录一些学习心得;然而,潮起之后马上潮落,有时课程或实习太充实,无暇更新。再者,每到续费的时候,掂量掂量口袋里的钞票,穷大学生最终还是选择了多吃几餐饕餮盛宴。在这若干次的尝试中,用过阿里云、腾讯云的服务器,国内访问很快,但备案起来很麻烦;买过Amazon,Wix,GoDaddy 以及 Ghost.org 的服务,但是限制较多,需要信用卡,而且墙内速度令
前言springboot的框架太复杂了,如何学习springboot才能不让自己迷失在细节里,其实从设计模式学习就很好,因为设计模式是思想,思想引导行为,只有理解了思想,才能看得懂springboot的行为。正文:Banner大概时springboot整个集合框架里,最简单,也最好理解,同时也是最好玩的一部分了。这部分代码是给程序员装逼用的。Banner是啥玩意呢,就是spring...
POM.XML<dependency><groupId>com.sun.mail</groupId><artifactId>javax.mail</artifactId><version>1.5.4</version></dependency>授权码需要主动到邮箱中获取注意:...
Python正则表达式正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式。re 模块使 Python 语言拥有全部的正则表达式功能。compile 函数根据一个模式字符串和可选的标志参数生成一个正则表达式对象。该对象拥有一系列方法用于正则表达式匹配和替换。
GUILayout也可以定义一些控件,并且它们会自动垂直对其: GUILayout.Button("开始游戏"); GUILayout.Button("结束游戏");效果 如图:这里如果需要切换成水平布局的话,使用: GUILayout.BeginHorizontal(); GUILayout.Bu...