当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 3 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : bash问题
帖子发表于 : 2012-12-18 11:10 
头像

注册: 2012-03-29 22:24
帖子: 21
送出感谢: 0 次
接收感谢: 0 次
bash-3.2$ CC=~/bin/gcc make mytarget
上面命令中变量"CC" 是怎样起作用的? bash怎么知道要运行make命令的,这是什么bash的命令语法?


页首
 用户资料  
 
2 楼 
 文章标题 : Re: bash问题
帖子发表于 : 2012-12-19 19:41 
头像

注册: 2008-09-13 19:17
帖子: 7789
系统: Arch Linux (x86_64)
送出感谢: 10
接收感谢: 77
CC是变量名。默认被用作指定C语言编译器,CC=~/bin/gcc 就是指用 "~/bin/gcc" 这个可执行文件做C的编译器。类似的还有 CFLAGS 变量,默认用来制定编译选项。还有一些其他类似的,参见 http://www.gnu.org/software/make/manual ... ables.html

后面又打了 make mytarget,意思是编译 mytarget 这个目标。


_________________
博客:http://www.lainme.com


页首
 用户资料  
 
3 楼 
 文章标题 : Re: bash问题
帖子发表于 : 2012-12-20 12:46 
头像

注册: 2012-03-29 22:24
帖子: 21
送出感谢: 0 次
接收感谢: 0 次
lainme 写道:
CC是变量名。默认被用作指定C语言编译器,CC=~/bin/gcc 就是指用 "~/bin/gcc" 这个可执行文件做C的编译器。类似的还有 CFLAGS 变量,默认用来制定编译选项。还有一些其他类似的,参见 http://www.gnu.org/software/make/manual ... ables.html

后面又打了 make mytarget,意思是编译 mytarget 这个目标。


我CC表示编译器。我的问题是“make”才是上面命令行中,bash真正执行命令的程序名,对吧?问题是bash怎么知道“CC=~/bin/gcc”只是环境变量,并如何将环境变量传递给真正的命令程序的?


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 3 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 0 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译