Makefile.am的例子
看看configure,ac的修改 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139#===================================================================AC_PREREQ([2.69])#===================================================================AC_INIT([trsapp],...
How to write SPEC file
How to write SPEC fileSPEC file is the rule to package a RPM build, compile files in source code(subsystem) and generates a file hierarchy and select them to package. the Makefile and configure file will generate the needed bin/files and put them into a build hierarchy . like: 12345scriptdir=$(libexecdir)/$(NAME)/scripts/ → here xxxdir like scriptdir is the package dir , now it's $(libexecdir) xxxscript_SCRIPTS=\ → xxx SCRIPTS is the scripts that will put into the package dir after makefile...
configure.ac介绍
configure.ac介绍 https://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.69/autoconf.html autoconfig: Autoconf (gnu.org) automake: Top (automake) (gnu.org) 1. 常用预定义宏:1.1. 基础设置AC_INIT(PACKAGE, VERSION, BUG_REPORT_EMAIL) AC_PREREQ(VERSION) # 最小支持的autoconf版本号 AC_CONFIG_SRCDIR(FILE) # safe check 确保configure的确是在正确的目录中被执行的 AC_CONFIG_AUX_DIR(DIR) # 辅助目录地址,存放install-sh和depcomp等辅助工具文件,若不指定会在当前目录直接创建辅助工具文件 1.2. Automake设置AM_INIT_AUTOMAKE([OPTIONS…]) # 检查由Automake生成的Makefile所需的工具,此时可以指定的常...
automake基础
automake基础[转载]: https://www.laruence.com/2009/11/18/1154.html “automake,autoconf使用详解” 作为Linux下的程序开发人员,大家一定都遇到过Makefile,用make命令来编译自己写的程序确实是很方便.一般情况下,大家都是手工写一个简单Makefile,如果要想写出一个符合自由软件惯例的Makefile就不那么容易了.在本文中,将给大家介绍如何使用autoconf和automake两个工具来帮助我们自动地生成符合自由软件惯例的 Makefile,这样就可以象常见的 GNU程序一样,只要使用”./configure”,”make”,”make instal”就可以把程序安装到Linux系统中去了.这将特别适合想做开放源代码软件的程序开发人员,又或如果你只是自己写些小的Toy程序,那么这个文章对你也会有很大的帮助. 1. Makefile介绍Makefile是用于自动编译和链接的 ,一个工程有很多文件组成,每一个文件的改变都会导致工程的重新链接,但是不是 所有的文件都需要重新编译,Makefile中纪...
Jenkinsfile introduce
1. Jenkinsfile 基本语法1.1. Defining a PipelineJenkins Pipeline is a suite of plugins that supports implementing and integrating continuous delivery pipelines into Jenkins. A Pipeline can be created in one of the following ways: Through Blue Ocean - after setting up a Pipeline project in Blue Ocean, the Blue Ocean UI helps you write your Pipeline’s Jenkinsfile and commit it to source control. Through the classic UI - you can enter a basic Pipeline directly in Jenkins through the classic UI. I...
Helm Introduction
Helm Introduction1. Chart的结构1.1. 什么是chartHelm uses a packaging format called charts. A chart is a collection of files that describe a related set of Kubernetes resources. Charts are created as files laid out in a particular directory tree, then they can be packaged into versioned archives to be deployed. 1.2. chart的目录结构12345678910wordpress/ Chart.yaml # A YAML file containing information about the chart -包含chart信息的YAML文件 LICENSE # OPTIONAL: A plain text file cont...
世上最好的共享内存
1. 宋宝华:世上最好的共享内存共享单车、共享充电宝、共享雨伞,世间的共享有千万种,而我独爱共享内存。 早期的共享内存,着重于强调把同一片内存,map到多个进程的虚拟地址空间(在相应进程找到一个VMA区域),以便于CPU可以在各个进程访问到这片内存。 现阶段广泛应用于多媒体、Graphics领域的共享内存方式,某种意义上不再强调映射到进程虚拟地址空间的概念(那无非是为了让CPU访问),而更强调以某种“句柄”的形式,让大家知道某一片视频、图形图像数据的存在并可以借助此“句柄”来跨进程引用这片内存,让视频encoder、decoder、GPU等可以跨进程访问内存。所以不同进程用的加速硬件其实是不同的,他们更在乎的是可以通过一个handle拿到这片内存,而不再特别在乎CPU访问它的虚拟地址(当然仍然可以映射到进程的虚拟地址空间供CPU访问)。 只要内存的拷贝(memcpy)仍然是一个占据内存带宽、CPU利用率的消耗大户存在,共享内存作为Linux进程间通信、计算机系统里各个不同硬件组件通信的最高效方法,都将持续繁荣。关于内存拷贝会大多程度地占据CPU利用率,这个可以最简单地尝试拷...
论一切都是文件之匿名inode
1. 宋宝华:论一切都是文件之匿名inode01 唯有文件得人心 当一个女生让你替她抓100只萤火虫,她一定不是为了折磨你,而是因为她爱上了你。当你们之间经历了无数的恩恩怨怨和彼此伤害,她再次让你替她抓100只萤火虫,那一定是因为她还爱着你。 为什么?因为这就是套路,是在下偶尔瞟一眼古装肥皂剧总结出来的套路。 Linux里面最大的套路,就是“一切都是文件”。爱一个人,就为她捉萤火虫;做一件事,就让它成为一个“文件”。 为什么自古深情留不住,唯有“文件”得人心呢?因为文件在用户态最直观的形式是随着一次open,获得一个fd,有了这个fd,长城内外,你基本可以为所欲为: 在本进程内,fd的最直观操作是open、close、mmap、ioctl、poll这些。 m map 让你具备把fd透射到内存的能力,所以你可以通过指针访问文件的内容。再者,这个mmap,如果底层透射的是framebuffer、V4L2、DRM等,则让我们具备了从用户态操作底层显存、多媒体数据等的能力;比如,无论是V4L2还是DRM,都支持把底层的dma_buf导出为fd。poll则提供给用户阻塞等待某事件...
Linux中的pushd和popd
Linux中的pushd和popd通过使用pushd和popd可以极大地提高效率。 1. 使用cd -进行目录切换一般,Shell中都可以通过cd -命令回到之前的目录,下面是一个例子: 123456$ pwd/home/lfqy$ cd /$ cd -/home/lfqy$ 实际上,cd -中,-就相当于变量$OLDPWD。cd -就相当于cd $OLDPWD。下面是一个例子: 123456789$ pwd/home/lfqy$ cd /$ echo $OLDPWD/home/lfqy$ cd $OLDPWD$ pwd/home/lfqy$ 2. pushd、popd和dirspushd和popd是对一个目录栈进行操作,而dirs是显示目录栈的内容。而目录栈就是一个保存目录的栈结构,该栈结构的顶端永远都存放着当前目录(这里点从下面可以进一步看到)。 2.1. dirsdirs常用的有两个参数: 选项 含义 -p 每行显示一条记录 -v 每行显示一条记录,同时展示该记录在栈中的index -c 清空目录栈 下面没有显示地对目录栈进行任何操...
《精力管理》读书笔记
介绍精力管理




