简简单单的makefile居然出错,怎么回事啊?求解?

三个源文件,mai.c,student.cadt_search_tree.c两个头文件stuent.h和adt_search_tree.h,makefile内容如下:#m... 三个源文件,mai.c,student.c adt_search_tree.c 两个头文件stuent.h 和adt_search_tree.h,
makefile内容如下:
#makefile:
objects = main.o student.o adt_search_tree.o

studentsysterm : $(objects)
gcc -o studentsysterm $(objects)    
$(objects) : student.h adt_search_tree.h
main.o : main.c
student.o : student.c adt_search_tree.h
adt_search_tree.o : adt_search_tree.h
.PHONY : clean      
clean :          
rm studentsysterm $(objects)
执行make出错如下
[root@localhost StudentSysterm]# make
gcc -o studentsysterm main.o student.o adt_search_tree.o    
gcc: adt_search_tree.o    :没有那个文件或目录
make: *** [studentsysterm] 错误 1
[root@localhost StudentSysterm]#
真是不解,list却有该文件,但又没有目标文件,
[root@localhost StudentSysterm]# ll
总用量 120
-rw-r--r--. 1 root root 12585 7月 28 23:23 adt_search_tree.c
-rw-r--r--. 1 root root 12579 7月 28 23:22 adt_search_tree.c~
-rw-r--r--. 1 root root 1239 7月 27 20:08 adt_search_tree.h
-rw-r--r--. 1 root root 2752 7月 28 23:23 adt_search_tree.o

求解why??
展开
 我来答
拜绿Qt
2014-07-29 · TA获得超过559个赞
知道小有建树答主
回答量:1214
采纳率:0%
帮助的人:458万
展开全部
多半是makefile文件里zlib的默认路径有误
安装 libpng
用以下命令安装 libpng:

make prefix=/usr \
ZLIBINC=/usr/include ZLIBLIB=/usr/lib -f scripts/makefile.linux &&
make prefix=/usr install -f scripts/makefile.linux

命令解释
CC="gcc $CFLAGS" : 让 libpng 在编译时用 CFLAGS .

ZLIBINC=/usr/include ZLIBLIB=/usr/lib : 强制libpng去找我们已安装的zlib的includes 和库文件目录.

-f scripts/makefile.linux : 指出make是用Linux版本的makefile.因为libpng没有用autoconf的惯例方式, 而是针对于不同的平台有不同的makefile.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
金山毒霸
2024-10-31 广告
大部分系统错误,是因为某些DLL文件丢失造成的,比如未安装DirectX9或DirectX 9.0组件已损坏、缺少Visual C ++库、未安装.net库。解决方法如下:一、 手动解决方法1、先确定电脑操作系统是多少位的,现在的电脑一般都... 点击进入详情页
本回答由金山毒霸提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式