makefile老是报“recipe for target xxx”错误,不妨先看看编码有空格

2023-10-20 14:20

本文主要是介绍makefile老是报“recipe for target xxx”错误,不妨先看看编码有空格,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

makefile老是报“recipe for target xxx”错误,不妨先看看编码是否正确

2015年11月06日 15:49:50

阅读数:61306

编写内核模块,make出错。在排除了makefile语法错误,路径错误之后,依然显示“recipe for target xxx”的错误信息时,也许你该怀疑一下你makefile所用的编码了。(如果你的makefile是直接从网上复制来的,先在window下,用写字板看看是否有乱码吧,“空格”的乱码很有可能就是你错误的罪魁祸首)

---------以下是我的悲惨经历,写给大家,尤其是和我一样的新手,避免此类错误----------------

本来第一个内核模块的编写并不难,所有我照着网上的讲解做,写hello.c的源文件,写makefile(偷懒,直接从网上复制粘贴,然后它就给了我深刻的教训)。

Make编译不能通过,总提醒我“recipe for target xxx”和“没有匹配的文件路径”的问题。(其实是这两个错误的地方,都有问题“空格”)。

 

在网上找,有人说,Ubuntu没有源码,要先下源码下来make什么的,我照做(其实后来经过证明,不是这个的问题。当你能在你的Ubuntu系统发现有/lib/modules/XXX-generic/build这个路径,就可以为直接为你现在的Ubuntu编模块。之所以要下源码,是对那些版本不一样的人说的。比如你要给2.6的内核编模块,而你的Ubuntu内核是4.0,那没法,只能去下个2.6的内核源码。但我是为当前内核编译内核,没必要)。结果还是同样的错误信息。

 

抱着死马当活马医的心情,我在另外一个网页上复制了另一篇makefile,万幸这篇是成功的,要不然我都要放弃了。

 

综合两个makefile,我发现基本都是一样的内容。这时我才考虑到有可能是编码的问题,于是把两个文档复制到window下,用写字板查看。果然

有问题的makefile:

 没问题的makefile:

 坑爹的空格!!!把空格全部重新改了一遍,再到Ubuntu下运行,好了,行了。

 

转自:https://blog.csdn.net/bilifo/article/details/49684015

这篇关于makefile老是报“recipe for target xxx”错误,不妨先看看编码有空格的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/247663

相关文章

Windows Docker端口占用错误及解决方案总结

《WindowsDocker端口占用错误及解决方案总结》在Windows环境下使用Docker容器时,端口占用错误是开发和运维中常见且棘手的问题,本文将深入剖析该问题的成因,介绍如何通过查看端口分配... 目录引言Windows docker 端口占用错误及解决方案汇总端口冲突形成原因解析诊断当前端口情况解

MySQL中动态生成SQL语句去掉所有字段的空格的操作方法

《MySQL中动态生成SQL语句去掉所有字段的空格的操作方法》在数据库管理过程中,我们常常会遇到需要对表中字段进行清洗和整理的情况,本文将详细介绍如何在MySQL中动态生成SQL语句来去掉所有字段的空... 目录在mysql中动态生成SQL语句去掉所有字段的空格准备工作原理分析动态生成SQL语句在MySQL

C/C++错误信息处理的常见方法及函数

《C/C++错误信息处理的常见方法及函数》C/C++是两种广泛使用的编程语言,特别是在系统编程、嵌入式开发以及高性能计算领域,:本文主要介绍C/C++错误信息处理的常见方法及函数,文中通过代码介绍... 目录前言1. errno 和 perror()示例:2. strerror()示例:3. perror(

Go标准库常见错误分析和解决办法

《Go标准库常见错误分析和解决办法》Go语言的标准库为开发者提供了丰富且高效的工具,涵盖了从网络编程到文件操作等各个方面,然而,标准库虽好,使用不当却可能适得其反,正所谓工欲善其事,必先利其器,本文将... 目录1. 使用了错误的time.Duration2. time.After导致的内存泄漏3. jsO

Python使用自带的base64库进行base64编码和解码

《Python使用自带的base64库进行base64编码和解码》在Python中,处理数据的编码和解码是数据传输和存储中非常普遍的需求,其中,Base64是一种常用的编码方案,本文我将详细介绍如何使... 目录引言使用python的base64库进行编码和解码编码函数解码函数Base64编码的应用场景注意

Python中ModuleNotFoundError: No module named ‘timm’的错误解决

《Python中ModuleNotFoundError:Nomodulenamed‘timm’的错误解决》本文主要介绍了Python中ModuleNotFoundError:Nomodulen... 目录一、引言二、错误原因分析三、解决办法1.安装timm模块2. 检查python环境3. 解决安装路径问题

如何解决mysql出现Incorrect string value for column ‘表项‘ at row 1错误问题

《如何解决mysql出现Incorrectstringvalueforcolumn‘表项‘atrow1错误问题》:本文主要介绍如何解决mysql出现Incorrectstringv... 目录mysql出现Incorrect string value for column ‘表项‘ at row 1错误报错

VSCode中C/C++编码乱码问题的两种解决方法

《VSCode中C/C++编码乱码问题的两种解决方法》在中国地区,Windows系统中的cmd和PowerShell默认编码是GBK,但VSCode默认使用UTF-8编码,这种编码不一致会导致在VSC... 目录问题方法一:通过 Code Runner 插件调整编码配置步骤方法二:在 PowerShell

SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法

《SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法》本文主要介绍了SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法,具有一定的参考价值,感兴趣的可以了解一下... 目录方法1:更改IDE配置方法2:在Eclipse中清理项目方法3:使用Maven命令行在开发Sprin

前端bug调试的方法技巧及常见错误

《前端bug调试的方法技巧及常见错误》:本文主要介绍编程中常见的报错和Bug,以及调试的重要性,调试的基本流程是通过缩小范围来定位问题,并给出了推测法、删除代码法、console调试和debugg... 目录调试基本流程调试方法排查bug的两大技巧如何看控制台报错前端常见错误取值调用报错资源引入错误解析错误