makefile的选项LDFLAGS
来源:互联网 发布:windows自带纸牌游戏 编辑:程序博客网 时间:2024/05/01 22:00
转自:http://blog.sina.com.cn/s/blog_7c531ccd01011c7p.html
CFLAGS 表示用于 C 编译器的选项,
CXXFLAGS 表示用于 C++ 编译器的选项。
这两个变量实际上涵盖了编译和汇编两个步骤。
先来看几个相关的环境变量:PATH、LDFLAGS、CFLAGS
PATH:大家应该都很熟悉。安装一个包后可能会在安装目录建立一个bin目录,里面都是些可执行程序,为了让系统能找到这些程序,就需要我们把该路径加入到PATH环境变量中。下面会讲到如何加入。
LDFLAGS:gcc等编译器会用到的一些优化参数,也可以在里面指定库文件的位置。用法:LDFLAGS=“-L/usr/lib-L/path/to/your/lib”。每安装一个包都几乎一定的会在安装目录里建立一个lib目录。如果你明明安装了某个包,而安装另一个包时,它愣是说找不到,那就把那个包的lib路径加入的LDFALGS中试一下吧。
CFLAGS:和LDFLAGS类似,只不过要向里加如的是头文件(.h文件)的路径,如:CFLAGS=“-I/usr/include-I/path/to/your/include”。同样地,安装一个包时会在安装路径下建立一个include目录,当安装过程中出现问题时,试着把以前安装的包的include目录加入到该变量中来。
那如何在那些变量中加入这些路径呢?以PATH变量为例。
一种方法是:直接在命令行下:
$ PATH="$PATH:/path/to/your/bin:/another/path/to/bin"
$ export PATH
这种方法的好处是方便,立即生效,缺点是把当前会话或shell关了之后就失效了,下次还得运行一遍。
另一种方法是:把下面的两行内容加入到~/.bashrc文件中,如果想让其影响到整个系统而不仅仅是当前用户,就把下面的内容加入到/etc/bash.bashrc(记得有的系统是/etc/bashrc这个文件)
export
然后,重新启动shell即可。
需要注意的是,PATH变量的分隔符是:号,其他的是空格,
所以LDFLAGS应该是这样:
LDFLAGS=“$LDFLAGS -L/path/to/lib -L/path/to/lib”
CFLAGS应该是这样:
CFLAGS=“$CFLAGS -I/path/to/iclude -I/path/to/include”
,来确定参数
EXTRA_CFLAGS, EXTRA_AFLAGS, EXTRA_LDFLAGS, EXTRA_ARFLAGS
所有EXTRA_变量只用在它的定义所在的那个kbuild makefile,它们被用于kbuild makefile中所有命令的执行
$(EXTRA_CFLAGS)指定了用$(CC)编译c文件时的选项。
$(EXTRA_AFLAGS)是每个目录在编译汇编源文件时的选项。
$(EXTRA_LDFLAGS) 和 $(EXTRA_ARFLAGS)是用于$(LD)和$(AR)的选项。
- makefile的选项LDFLAGS
- makefile的选项CFLAGS和LDFLAGS
- makefile的选项CFLAGS和LDFLAGS
- Makefile选项CFLAGS,LDFLAGS,LIBS
- Makefile选项CFLAGS,LDFLAGS,LIBS
- Makefile选项CFLAGS,LDFLAGS,LIBS
- Makefile选项CFLAGS,LDFLAGS,LIBS
- Makefile选项CFLAGS,LDFLAGS,LIBS
- Makefile选项CFLAGS,LDFLAGS,LIBS
- Makefile选项CFLAGS,LDFLAGS,LIBS
- Makefile选项CFLAGS,LDFLAGS,LIBS....
- Makefile选项CFLAGS,LDFLAGS,LIBS
- Makefile选项CFLAGS,LDFLAGS,LIBS
- Makefile选项CFLAGS,LDFLAGS,LIBS
- Makefile选项CFLAGS,LDFLAGS,LIBS
- Makefile选项CFLAGS,LDFLAGS,LIBS
- Makefile选项CFLAGS,LDFLAGS,LIBS
- Makefile选项CFLAGS,LDFLAGS,LIBS
- 对JS函数的理解
- 有a、b两个变量,如何在不添加第三个变量的情况下,交换a、b变量的值?
- 获取字符串中img标签中src的数组列表
- sql之truncate 、delete与drop区别
- C语言之memchr函数
- makefile的选项LDFLAGS
- Linux ftp命令的使用方法
- IOS atomic与nonatomic,assign,copy与retain的定义和区别
- 博客转移
- VC获取和修改代理设置源码
- [PHP]textarea 的值回车换行拆分至数组
- c语言常用头文件
- ios 面试题
- Java基础学习笔记之三_面向对象