开发者社区> 问答> 正文

makefile报错的问题?报错

只有一个test_array.c文件,平时测试用gcc test_array.c -o test_array是正常的,今天,我尝试用makefile来进行编译运行

现在报错如下:请问下这是啥情况?好像和stdio.h有关吗?

make :*** no rule to make target 'stdio.h',needed by 'test_array.o'停止

makefile文件中的内容如下:

objects = test_array.o
edit : $(objects)
    gcc -o edit $(objects)
test_array.o : stdio.h
.PHONY : clean
clean :
    rm edit $(objects)

展开
收起
爱吃鱼的程序员 2020-06-06 16:38:38 454 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB
                        <pre>
    

    CC=gcc object=test_array.o
    TARGET=edit

    all:$(TARGET) $(TARGET):$(object) $(CC) $^ -o $@ %.o: %.c $(CC) -c $< -o $@

    .PHONY : clean clean : rm $(object) $(TARGET)

     

                        <pre><code>objects = test_array.o
    

    edit: $(objects) gcc -o edit $(objects)

    test_array.o : test_array.c gcc -c test_array.c -o test_array.o

    .PHONY : clean clean : rm edit $(objects)

     

                        test_array.o不用指明依赖stdio.h,只用指明依赖test_array.c即可 
                    
    
                        <div class='ref'><h4>引用来自“南泉先生”的评论</h4>test_array.o不用指明依赖stdio.h,只用指明依赖test_array.c即可 
    
                            一楼给的答案你试过吗? 
                        
    
                        <p>就是用他的代码测试的,也是报错,我再检查检查吧</p>
    
                    
    
                        <div class='ref'><h4>引用来自“南泉先生”的评论</h4><pre>
    

    CC=gcc object=test_array.o
    TARGET=edit

    all:$(TARGET) $(TARGET):$(object) $(CC) $^ -o $@ %.o: %.c $(CC) -c $< -o $@

    .PHONY : clean clean : rm $(object) $(TARGET)

     

                        <div class='ref'><h4>引用来自“南泉先生”的评论</h4>test_array.o不用指明依赖stdio.h,只用指明依赖test_array.c即可 
    
                            你可以了解一下“环境变量”的概念,当你的头文件路径包含在“环境变量”中时,编译器在编译时是可以据此找到对应头文件的,若某个头文件不在当前目录中,也不包含在任何环境变量中,此时就要明确指出该头文件在哪儿。在makefile中通常用"INCLUDE=-Iyourincludepath"指明要包含的头文件目录。
                        
    
                        <div class='ref'><div class='ref'><h4>引用来自“南泉先生”的评论</h4>test_array.o不用指明依赖stdio.h,只用指明依赖test_array.c即可 
    
    2020-06-06 16:38:52
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载