欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Makefile 整理心得。关于include *.mk

程序员文章站 2024-03-20 21:09:52
...
最近在整理之前项目写的Makfile文件,项目在svn上管理。 项目文件目录如下:
├── Makefile
├── src
│   ├── application
│   │   └── Makefile
│   ├── drivers
│   │   └── Makefile
│   ├── gui
│   │   └── Makefile
│   ├── libs
│   ├── Makefile
│   └── net
│       └── Makefile
└── update
在顶层Makefile目录下make编译。顶层Makefile包含编译器路径及其他相关文件路径,就导致其他同时在svn上checkout下来后,
需要改Makefile中的相关路径,这样再提交会造成每次update都需要修改。
目前想法是将路径相关变量放在path.mk中,Makefile用include包含进去,而path.mk不提交,保留在本地。
但是现在问题出现了,执行make后怎么都不能找到path里的路径。
在查阅大量makefile语法,关于include使用的方式都无果。于是写了个小的测试makefile。内容如下:
file:Makefile:

include path.mk                                                    
 all:                      
     @echo test            
file:path.mk
 $(warning )

其中path.mk还是从之前调试不通过的拷贝过来修改的。结果也还是不能输出想要的结果。然后尝试从别的开源项目拷贝一个.mk文件过来使用,发现完全正常。
最后用notepad++打开2个文件,对比发现原来是文件编码问题。。。不可的用的,编码格式是Macintosh,而可以用的是unix和windows。
至此问题解决。