1.gcc 的使用: 
把源文件编译成.o 文件: gcc -c 源文件 -o 目标文件 把.o 文件编译成可执行文件: gcc  目标文件 -o 执行文件gcc 常用的选项:-c: 生成.o 文件-o: 指定生成的名字-I: 添加头文件搜索路径-L: 添加库搜索路径 -Wall: 列出所有警告信息 2.Makefile   文件的编写例子: 1.c 1.h main.c, 把它们编译成一个可执行            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-06-18 04:53:31
                            
                                197阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Makefile.am是一种比Makefile更高层次的编译规则,可以和configure.in文件一起通过调用automake命令,生成Makefile.in文件,再调用./configure的时候,就将Makefile.in文件自动生成Makefile文件了。所以Makefile.am文件是比Makefile文件更高的抽象。下面我根据自己的工作中的一些应用,来讨论Makefile.am的编写。            
                
         
            
            
            
            深入理解自定义函数:自定义函数是一个多行变量,无法直接调用自定义函数是一种过程调用,没有任何的返回值自定义函数用于定义命令集合,并应用于规则中自定义函数调用深度理解:.PHONY : test
define func1
	@echo "My name is $(0)"
endef
# 调用 func1 初始化 变量var,可以这样操作吗?并没有在规则中调用,func1 调用成功了吗?
# 肯定            
                
         
            
            
            
            Linux的静态库是以.a结尾的,要连接静态库有两种方法,一种是在编译命令最后直接加上库路径/库名称。 例如你的库在绝对目录/lib/libtest.a下面你就可以这样来编译$(CC) $(CFLAGS) $^ -o $@ /lib/libtest.a 另外一种方法是,你可以用-L制定库的目录,用-            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2017-06-25 18:55:00
                            
                                1644阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            注意事项:  一定要用table键缩进!!!否则无法运行  -Wall:选项可以打印出编译时所有的错误或者警告信息。这个选项很容易被遗忘,编译的时候,没有错误或者警告提示,以为自己的程序很完美,其实,里面有可能隐藏着许多陷阱。变量没有初始化,类型不匹配,或者类型转换错误等警告提示需要重点注意,错误就隐藏在这些代码里面。没有使用的变量也需要注意,去掉无用的代码,让整个程序显得干净一点。下次写Make            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-08-19 19:43:30
                            
                                95阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            动态库动态库又名动态链接库,程序编译后,不包含动态库部分的代码,只留下相应接口,程序开始运行的时候加载动态库,动态库用于实现多个模块之间共享代码。 通过makefile,将add部分制作动态库。Linux中,动态库以lib开头,.so为后缀保存,编译和使用时其名称为中掐头去尾的部分。编译过程中,需要提供库的信息,因此需要给出库的文件地址-L给出库的文件地址。编译完成后,程序保存动态库名称和函数地址            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-12-24 00:24:44
                            
                                104阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
              Makefile带来直接好处就是——“自动化编译”。一旦写好,只需要一个make命令,整个工程完全自动编译,所以十分方便。而Makefile文件就是告诉make命令怎么样地去编译和链接程序。但是想要比较灵活的运用它,还是先要熟悉一些关于系统对程序编译和链接的知识。 1.一个简单的makefile例子假设一个程序有两个文件file1.c,file2.c,每个文件都包含head            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-23 11:04:29
                            
                                128阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Linux操作系统是一种开放源代码的操作系统,红帽是其中一个流行的发行版本。在Linux环境中,Makefile是一种常用的配置文件,用于管理程序的编译和链接过程。在本篇文章中,我们将讨论在Linux系统中使用Makefile链接静态库的方法。
静态库是一种包含已编译代码的文件,它可以被链接到程序中,以便程序可以调用其中定义的函数和变量。静态库的文件扩展名通常为“.a”,在Linux系统中,静态            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-04-30 09:46:49
                            
                                467阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            在Linux系统中,使用makefile编译链接动态库是非常常见的操作。动态库是一种被多个程序共享的代码库,它可以被加载到内存中并在运行时被多个程序共同调用。与静态库不同,动态库在程序运行时才会被加载,这样可以减少程序的体积并提高代码的重用性。
在编译过程中,makefile是一种用于自动化编译的工具,可以根据源文件的依赖关系自动生成编译规则。使用makefile可以方便地对程序进行管理和维护,            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-03-29 11:52:08
                            
                                481阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            在使用Linux系统进行软件开发时,经常会遇到需要链接静态库的情况。而使用Makefile来管理项目构建过程是一种效率高、规范化的做法。本文将介绍如何在Linux环境下通过Makefile来链接静态库,以帮助开发者更好地进行软件开发。
在Linux系统中,库文件通常有两种形式:静态库和动态库。静态库是在链接时会被完整地复制到可执行程序中,而动态库则是在运行时才会加载到内存中。在实际开发中,静态库            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-04-10 10:59:51
                            
                                737阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            一、gcc -l参数和-L参数用法含义1、-l 的用法-l参数就是用来指定程序要链接的库,-l参数紧接着就是库名,那么库名跟真正的库文件名有什么关系呢?就拿数学库来说,他的库名是m,他的库文件名是libm.so,很容易看出,把库文件名的头lib和尾.so去掉就是库名了(即gcc -lm)2、-L 的用法当我们自已要用到一个第三方提供的库名字libtest.so,那么我们只要把libtest.so拷            
                
         
            
            
            
            初学Makefile,权当是笔记,希望对别人有些帮助吧。------------------------------------------------------------------------------------本次例子目录结构如下:目录说明:lib目录是我自己写的一个so库文件,名为libA.so,很简单,里面的内容截图如下:-----------            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-01-16 00:16:26
                            
                                926阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            install:foo          install   -m  644 foo  /usr/bin .PHONY: install  看以上makefile的片段,使用了.PHONY这个目标,下面详细介绍她的用法. 来源:点击打开链接 .PHONY是一个特殊工作目            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-03 15:02:01
                            
                                37阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Makefile语法Makefile基本结构Makefile格式 target : dependency_files 目标:依赖文件 < TAB > command TAB+命令 例: hello.o : hello.c hello.h    gcc -c hello.c -o hello.o较复杂的例子 sunq:kang.o yul.o    gcc kang.o yul.o -o            
                
         
            
            
            
            makefile一、什么是makefile?make命令执行时,需要一个makefile文件,以告诉make命令需要怎么样的去编译和链接程序。makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译。二、为什么需要makefile?如果不用 makefile,每次编译、链接都需要手动敲的很多命令。当工程量很大时,编译整个工程需要花很久。而且我们并不是每            
                
         
            
            
            
            x            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-03-07 06:08:43
                            
                                319阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            入门介绍  起因是我在工作中,遇到了一个多个执行文件打包成的组件,而每个执行文件都需要将pb编进二进制中,导致release包非常大。所以想到,是否应该将pb编程动态链接库,再供可执行文件使用呢?达成这个目的需要做两件事。1、将pb编成.so文件。2、将原本的链接方式改为动态链接。  makefile是make构建项目所需要的规则文件。通产在其中指定了编译目标、编译指令、编译依赖。通常的makef            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-06-08 16:15:09
                            
                                38阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Linux makefile 教程 非常详细,且易懂http://blog..net/liang13664759/article/details/1771246//sort.c#include #include void swap(int* a, int* b);int arry[5] = ...            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-01-12 15:29:34
                            
                                431阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Linux下Makefile中动态链接库和静态链接库的生成与调用  背景:写这篇博客的原因是:最近在搞嵌入式,需要交叉编译opencv库文件,自己写Makefile,通过arm-linux-g++编译、链接、生成可执行文件,从而实现了移植的过程。平台是Toradex的Apalis TK1,三千多元,买回来我就后悔了,全是英文资料,还各种Bug,迟迟无法上手。早知如此,还不如直接买Nvidia的Je            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-10 23:22:49
                            
                                292阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            OpenCV中minAreaRect() 函数和RotatedRect类参数详解RotatedRect minAreaRect(InputArray points) RotatedRect表示平面上的旋转矩形class CV_EXPORTS RotatedRect
{
public:
    //构造函数
    RotatedRect();
    RotatedRect(const Point            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-06 07:39:07
                            
                                43阅读
                            
                                                                             
                 
                
                                
                    