首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

shell命令和makefile简单使用方法

其中shell和makefile是linux进阶版,对于后期学习uboot和linux内核打下基础。...rm a.c //删除文件mkdir a //创建文件夹touch a.c //创建文件vim a.c //打开文件2.变量赋值常用命令// 在shell和makefile...=//变量没有赋值,则执行该条赋值语句+=//在变量后面再蓄接(在shell和makefile中变量大多是字符串)设置环境变量设置环境变量(用于工程中别的makefile文件使用)export A//一般大写表示...,可以使用make A=gcc进行传参(可以覆盖文件中的参数,最高优先级)通配符1.*.c(所有.c文件)2.?....c(只有一个字符的.c文件)3.[1234].c(分别将1,2,3,4.c进行匹配)自动变量自动变量$@规则的目标文件名$规则的依赖文件名$^依赖的文件集合如:all : 1.c 2.c 1.h

63820

【Android RTMP】音频数据采集编码 ( 音频数据采集编码 | AAC 高级音频编码 | FAAC 编码器 | Ubuntu 交叉编译 FAAC 编码器 )

查看源码路径 : 该源码中也有 configure 脚本 , 用于配置生成 Makefile 文件 ; root@octopus:~/rtmp# cd faac-1.29.9.2 root@octopus..., 将交叉编译工具链的 gcc 设置成环境变量 ; ③ 解析说明 FAAC 中的环境变量 : Some influential environment variables: # C 编码器命令行,...交叉编译脚本 : 写一个 Shell 脚本 , 辅助交叉编译 FAAC 静态库 ; 参考之前的 FFMPEG 和 x264 的 Shell 编译脚本 ; 版本注意事项 : 基于 android-17 版本进行编译...生成规则 ....执行编译脚本 : # 赋予 build.sh 脚本 执行权限 $ chmod -R 777 build.sh # 执行编译脚本 $ ./build.sh 8 .

83910
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Linux:进程替换

    ——>所以有的接口是让你直接传该文件的路径,也有的接口是让你只传文件名,然后他会自动去环境变量里面查找。...我可不可以自己传一套环境变量进去? 所以有就了le系列。  ...1.5.2 执行其他编译型语言或者是脚本语言       Shell脚本  本质上就是把Linux命令放在一个文件里面(后缀sh),并且文件的开头都是#!+脚本语言的解释器。   ...脚本语言不是脚本在跑,而是由解释器来解释执行 我们想要执行脚本文件的话,路径传的就不是脚本文件,而是脚本文件的解释器, bash+test.sh则是作为命令行参数。 ...,然后变成内存级的文件,如果你修改了环境变量但是想还原,直接重启Shell就可以了!

    13410

    深度刨析makefile

    makefile 中文件搜搜主要有两种方法,一个是环境变量 VPATH 一个是关键字 vpath 。...我们可以通过命令行参数传值或者是修改系统环境变量的方式对隐含变量赋值或重定义,也可以通过 make 的 -R 或 --no– builtin-variables 参数来取消你自定义变量对隐含规则的作用。...(2)文件嵌套中的变量传递 指定变量是否传递给下一级(内嵌的)makefile 文件,使用下面两个关键字 export val #将 val 传递给下级 makefile unexport val #...不将 val 传递给下级 makefile 如果我们仅用一个单一的关键字 export 而不指定变量名,则表示所有变量都传递给下一级 makefile。...但是有两个特殊变量 SHELL 和 MAKEFLAGS,这两个变量不管是否使用关键字 export 都会传递给下一级 makefile 文件。

    13110

    Makefile教程

    ,但需要修改Makefile的环境变量VPATH让make自动寻找依赖项所在路径。...(2)当Makefile内嵌shell脚本时,Makefile中每一行的shell脚本需要一个shell进程来执行,不同行之间变量值不能传递。所以,Makefile中的shell不管多长也要写在一行。...(5)Makefile嵌入shell脚本时,要想shell脚本被执行,必须将shell脚本写在target,卸载其它地方会被忽略。...7.10如何使用shell脚本给Makefile变量赋值 Makefile可以内嵌shell脚本,但是在内嵌的shell脚本只能读取Makefile的变量,如何给Makefile变量赋值呢?...其实可以使用Makefile的shell函数来执行shell脚本,因为shell函数把执行shell脚本后的输出作为函数返回,因此我们可以使用shell函数来为Makefile的变量赋值。

    4.1K53

    什么是makefile(3)

    七、清空目标文件的规则 每个Makefile中都应该写一个清空目标文件(.o和执行文件)的规则,这不仅便于重编译,也很利于保持文件的清洁。...Makefile里主要包含了五个东西:显式规则、隐晦规则、变量定义、文件指示和注释。 1、显式规则。显式规则说明了,如何生成一个或多的的目标文件。...Makefile中只有行注释,和UNIX的Shell脚本一样,其注释是用“#”字符,这个就像C/C++中的“//”一样。...如果你要在你的Makefile中使用“#”字符,可以用反斜框进行转义,如:“\#”。 最后,还值得一提的是,在Makefile中的命令,必须要以[Tab]键开始。...四、环境变量 MAKEFILES 如果你的当前环境中定义了环境变量MAKEFILES,那么,make会把这个变量中的值做一个类似于include的动作。

    57620

    Linux: Makefile自动化基础指南

    接下来将详细介绍如何在Makefile中调用当前脚本的目标,例如:make HOST=10.0.0.1 VERSION=v1.0 all。我们将通过具体示例和详细解释,帮助读者理解并掌握这一技巧。...目标(Target)和规则(Rule) 在Makefile中,目标和规则是核心概念。目标可以是文件,也可以是伪目标(没有对应的文件),规则则定义了如何生成目标。...定义目标和规则 下面是一个简单的Makefile示例,展示了如何定义目标和规则: makefile # 定义变量 HOST = localhost VERSION = v1.0 # 目标:all all...Makefile支持使用环境变量,可以通过在命令行传递变量的方式来覆盖Makefile中的默认值。...总结 本文详细介绍了如何在Makefile中调用当前脚本的目标,包含基础概念、环境变量的使用以及复杂示例的实现。通过学习这些内容,我们可以更灵活地使用Makefile来管理项目的构建和部署流程。

    16710

    Makefile学习1

    5) 注释 Makefile 中只有行注释,和 UNIX 的 Shell 脚本一样,其注释是用“#”字符,这个就像 C/C++ 中的“//”一样。...如果你要在你的 Makefile 中使用“#”字符,可以用反斜框进行转义,如:“#”。...目标依赖是指生成这个可执行文件所依赖的源文件,如 hello.c。 而命令则是如何将这些目标依赖生成对应的目标,一般是gcc命令、链接命令、objcopy命令,一些shell命令等。...除了用户自定义的一些变量,make在解析Makefile中还会引入一些系统环境变量,如编译参数CFLAGS、SHELL、MAKE等。...若Makefile中有用户自定义的同名变量,系统环境变量将会被用户自定义的变量覆盖。若用户在命令行中传递跟系统环境变量同名的变量,系统环境变量也会被传递的同名变量覆盖。

    39510

    Linux:进程控制(二.详细讲解进程程序替换)

    后面在引入多进程的情况 1.1概念 进程程序替换是指在运行过程中将一个进程的地址空间中的代码、数据和堆栈等内容完全替换为另一个程序的代码、数据和堆栈的过程。...进程具有独立性,在进行程序替换时要进行写时拷贝 写时拷贝的本质就是开辟新的空间 shell是如何运行起来一个指令的?...首先创建子进程,shell会waitpid()等待进程结果,子进程会继承shell的代码,但是不影响。...., char *const envp[]); path 是要执行的可执行文件的路径,arg 是要传递给新程序的命令行参数,后面的参数是额外的环境变量,以 NULL 结尾。...{ printf("env[%d]: %s\n", i, environ[i]); } cout << "This is C++" << endl; return 0; } 当然我们也能传系统环境变量

    22110

    fl2440 uboot 移植总结

    如:对于makesmdk2410_config,则应该从Makefile中去寻找smdk2410_config:这个目标。...设置交叉工具链(注意如果在文件里写死的话,必须写全路径,而make是传因为是在shell状态,所以不必写全路径,有PATH来保证) 方法1:交叉工具链可以不设置:在make时以选项的参数传入:   Sudo...配置好生成镜像的目录 方法1:make时添加输出目录选择 如:make O=/home/hfl/hflsamb/bin all' 方法2:在makefile生成Uboot.bin镜像后直接copy到相应的目录...(正如编译驱动模块,将驱动模块和内核独立,makefile编译时还是要进入内核makefile中编译,编译出来的镜像放到独立的目录下) 以上只是建议编译环境,类似于 stb工程中各种配置文件和shell...脚本一样。

    62330

    程序员C语言快速上手——工程篇(十三)

    C语言工程构建 shell脚本(bat脚本) Makefile 脚本 基本语法规则 补充说明 CMake工具 安装 简单示例 基础规则 外部构建 定义变量 内置变量 命令 指定构建环境 生成 Makefile...这时候,可以通过编写shell脚本去执行编译命令,当然这并不是一种好的方式。...在Linux上我们可以写shell脚本,在Windows上则可以编写bat脚本 本篇以如下源码作为示例工程,需要编译一个main.exe程序出来 add.c int add(int a, int b){...Makefile 脚本 Makefile 脚本文件是GNU make 工具的输入文件,它也包含一套自己的语法规则,它也能帮助C语言实现编译和链接。...既然可以通过命令行脚本(shell)完成编译工作,为什么还需要Makefile脚本文件呢?

    3.1K30

    linux下源码安装

    ####1.配置  configure:生成Makefile的shell脚本  文件结构如下:        |-configure.in     .../configure生成config.h  configure.h使用autoconf和automake命令的shell脚本,可以通过autoscan自动生成或手写  acconfig.h包含了configure.in.../bin下   (卸载使用make uninstall,清理make产生的缓存文件使用make clean) ####4.软件包管理工具  linux分为桌面系统领域和服务器系统领域,服务器系统如:...全局环境变量:   1.etc/profile配置文件(export导出全局变量) 执行source etc/profile立即生效   2.etc/bashrc   3.home/*(用户...)/bash_profile 本地环境变量(shell脚本范围):   env(显示所有)、echo $变量、set(显示本地定义)、export新增 参考: http://blog.163.com

    7K41

    【Linux】《how linux work》第十五章 开发工具

    Here’s an example for the shell: 共享库的后缀包含.so(共享对象),如libc-2.15.so和libc.so.6。...很久以前,普通的Unix系统管理员对于除了Bourne shell和awk之外的脚本语言并不需要太多担心。Shell脚本(在第11章讨论)仍然是Unix的重要组成部分,但awk在脚本领域中有些衰落。...For example, a Python script starts out like this: 关于任何脚本语言,你需要知道的第一件事是脚本的第一行看起来像Bourne shell脚本的shebang...In that case, running myscript would produce this error: Shell脚本的第一行通常包含最常见的基本脚本问题之一:对脚本语言解释器的路径设置错误。...编译器和脚本语言的世界是广阔的,而且不断扩展。 截至本文撰写时,新的编译语言如Go(golang)和Swift正日渐流行。

    11110

    环境变量与命令行参数详解

    当系统登录成功后,系统会把各种需要的脚本运行一下,然后我们就看到echo $PATH里的内容了。...3、查看环境变量方法及相关命令 echo $NAME:NAME是环境/本地变量的名称,查看 NAME 变量的内容。(如PATH、USER变量等) env:显示所有的环境变量。...set:查看本地定义的shell变量和环境变量。 export:设置新的环境变量。 unset:清除设置的环境变量。...linux中指令的多选项就是来自于命令行参数,而其中这些选项的传参由shell和操作系统来完成!...换言之,我们把环境变量的路径作为字符串,数组也是以 NULL 结尾的*,用 char env[] 这样的字符指针数组,依次指向不同的环境变量,我们就可以通过数组传参的方式,把环境变量传递给当前程序,当前程序运行后成为进程

    1.4K20

    【Linux系统编程】四、Linux环境变量与命令行参数详解

    shell 的默认环境变量放在 ~/.bash_profile 中,这是一个用户级的环境配置文件,每个用户目录下都会具有各自的,在用户每次登录系统时被读取,里面所有命令都会被 shell 执行,包括环境变量的配置命令...当系统登录成功后,系统会把各种需要的脚本运行一下,然后我们就看到 echo $PATH 里的内容了。...(如 PATH、USER 等变量) env:显示所有的环境变量 set:查看本地定义的 shell 变量和环境变量 export:设置新的环境变量 unset:清除设置的环境变量...linux 中指令的多选项就是来自于命令行参数,而其中这些选项的传参由 shell 和操作系统来完成!...简单点说,就是 把环境变量的路径作为字符串,其中该数组也是 以 NULL 结尾的,用 char* env[] 这样的字符指针数组,依次指向不同的环境变量,我们就可以通过数组传参的方式,把环境变量传递给当前程序

    11510
    领券