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

相关文章

解决Spring运行时报错:Consider defining a bean of type ‘xxx.xxx.xxx.Xxx‘ in your configuration

《解决Spring运行时报错:Considerdefiningabeanoftype‘xxx.xxx.xxx.Xxx‘inyourconfiguration》该文章主要讲述了在使用S... 目录问题分析解决方案总结问题Description:Parameter 0 of constructor in x

Spring常见错误之Web嵌套对象校验失效解决办法

《Spring常见错误之Web嵌套对象校验失效解决办法》:本文主要介绍Spring常见错误之Web嵌套对象校验失效解决的相关资料,通过在Phone对象上添加@Valid注解,问题得以解决,需要的朋... 目录问题复现案例解析问题修正总结  问题复现当开发一个学籍管理系统时,我们会提供了一个 API 接口去

解决mybatis-plus-boot-starter与mybatis-spring-boot-starter的错误问题

《解决mybatis-plus-boot-starter与mybatis-spring-boot-starter的错误问题》本文主要讲述了在使用MyBatis和MyBatis-Plus时遇到的绑定异常... 目录myBATis-plus-boot-starpythonter与mybatis-spring-b

Makefile简明使用教程

文章目录 规则makefile文件的基本语法:加在命令前的特殊符号:.PHONY伪目标: Makefilev1 直观写法v2 加上中间过程v3 伪目标v4 变量 make 选项-f-n-C Make 是一种流行的构建工具,常用于将源代码转换成可执行文件或者其他形式的输出文件(如库文件、文档等)。Make 可以自动化地执行编译、链接等一系列操作。 规则 makefile文件

C++ | Leetcode C++题解之第393题UTF-8编码验证

题目: 题解: class Solution {public:static const int MASK1 = 1 << 7;static const int MASK2 = (1 << 7) + (1 << 6);bool isValid(int num) {return (num & MASK2) == MASK1;}int getBytes(int num) {if ((num &

C语言 | Leetcode C语言题解之第393题UTF-8编码验证

题目: 题解: static const int MASK1 = 1 << 7;static const int MASK2 = (1 << 7) + (1 << 6);bool isValid(int num) {return (num & MASK2) == MASK1;}int getBytes(int num) {if ((num & MASK1) == 0) {return

form表单提交编码的问题

浏览器在form提交后,会生成一个HTTP的头部信息"content-type",标准规定其形式为Content-type: application/x-www-form-urlencoded; charset=UTF-8        那么我们如果需要修改编码,不使用默认的,那么可以如下这样操作修改编码,来满足需求: hmtl代码:   <meta http-equiv="Conte

【经验交流】修复系统事件查看器启动不能时出现的4201错误

方法1,取得『%SystemRoot%\LogFiles』文件夹和『%SystemRoot%\System32\wbem』文件夹的权限(包括这两个文件夹的所有子文件夹的权限),简单点说,就是使你当前的帐户拥有这两个文件夹以及它们的子文件夹的绝对控制权限。这是最简单的方法,不少老外说,这样一弄,倒是解决了问题。不过对我的系统,没用; 方法2,以不带网络的安全模式启动,运行命令行,输入“ne

SQL2005 性能监视器计数器错误解决方法

【系统环境】 windows 2003 +sql2005 【问题状况】 用户在不正当删除SQL2005后会造成SQL2005 性能监视器计数器错误,如下图 【解决办法】 1、在 “开始” --> “运行”中输入 regedit,开启注册表编辑器,定位到 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVer

ssm 之事务管理出现错误

JDBC Connection will not be managed by Spring 项目采用的是分布式架构,分别有controller,service,solr三个服务器,之间通过dubbo进行调用,经过测试发现事务配置完以后不能通过spring进行管理,其中两条insert和一条update语句都执行完毕,异常并没有使得事务进行回滚,通过调取debug日志发现“JDBC Conn