linux下 一个项目(源文件位于多个文件夹或者子文件夹),怎么编写makefile文件?满意高分!

如题!是自己手工编写还是用autotools还是qmake那个比较快捷方便?尽量说详细点,谢谢!满意高分!... 如题 !是自己手工编写还是用autotools 还是qmake 那个比较快捷方便 ?尽量说详细点,谢谢!满意高分! 展开
 我来答
my3g520bd
2011-09-09
知道答主
回答量:11
采纳率:0%
帮助的人:14.9万
展开全部
# Copyright (c) 2006 Unihz Technologies Co., LTD.
# Author: Raymond S. <zhonghuashe@unihz.com>

PROGRAM := write # 最后的可执行文件
SOURCES := $(wildcard *.cpp) #通配当前目录下说有的.cpp文件
#SOURCES += $(wildcard src/*.cpp)
OBJS := $(patsubst %.cpp,%.o,$(SOURCES)) #把$(SOURCES)中的变量符合后缀是.cpp的全部替换成.o,

CC := gcc
#CFLAGS := -c -ggdb -Wall -DBUILD_TIME="\"`date`\"" -DDEBUG
CFLAGS :=
#INCLUDE := -I ../unihz -I ../config -I traffic_light
INCLUDE :=

#LIB := ../unihz/libunihz.a ../config/libconfig.a -lpthread
LIB := #库文件

.PHONY: clean install

$(PROGRAM): $(OBJS)
$(CC) -o $@ $^ $(LIB)
%.o: %.cpp
$(CC) -c $^ $(CFLAGS) $(INCLUDE) # $@:当前规则的目的文件名, $<:依靠列表中的第 一个依靠文件,而 $^:整个依靠的列表(除掉了里面所有重复的文件名)。

clean:
rm *.o src/*.o $(PROGRAM) -f

install: $(PROGRAM)
cp $(PROGRAM) ./bin/
拿这个去该改吧,比较通用的
hugerat
2011-08-26 · TA获得超过288个赞
知道小有建树答主
回答量:206
采纳率:0%
帮助的人:219万
展开全部
手工编写会写死你的。
用autotools,qmake是QT的一个工具,也能生成makefile,不过,你不开发QT程序,就用不上qmake。
其实autotools也不好用。如果你不开发QT程序,建议你用kdevelop这个开发工具,它可以自动生成makefile(它是自动调用autotools来生成makefile)。
追问
kdevelop?  没听说过  要在linux下安装吗? 能较详细的说下这个工具吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jiangtao9999
2011-08-26 · TA获得超过1.2万个赞
知道大有可为答主
回答量:1.2万
采纳率:44%
帮助的人:8178万
展开全部
没弄过,我记得 qmake 是 qt 的一个集成工具,如果你的项目是 qt 开发的(QT 有自己的开发环境,貌似不用 QT 库也可以用它开发),那么这个 IDE 我记得有工具可以帮助生成 qmake 的脚本。autotools 其实也是自动生成的,但似乎需要自己设置后才能实现。他们两个其实都是辅助你生成 Makefile 的东西。自己写 Makefile 理论上也可以,不过你的项目要是编译工作量很大,那么这东西直接可以让你晕死。也就是编译工作量不大的时候自己写那么几行就能搞定的前提下还是可以考虑的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友e8cf85b
2011-08-26 · TA获得超过317个赞
知道小有建树答主
回答量:438
采纳率:0%
帮助的人:144万
展开全部
可以把这些源文件放在一个目录里,再make,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式