首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

调用自定义函数后Makefile中缺少分隔符错误

在Makefile中,当调用自定义函数后出现"缺少分隔符"错误,通常是由于以下原因导致的:

  1. 语法错误:在调用自定义函数时,可能存在语法错误,例如缺少逗号、括号不匹配等。请检查函数调用的语法是否正确。
  2. 缩进错误:Makefile是通过缩进来识别规则和命令的,因此在调用自定义函数时,需要确保函数调用的缩进与其他命令一致。请检查函数调用的缩进是否正确。
  3. 函数未定义:如果在Makefile中调用了未定义的函数,就会出现"缺少分隔符"错误。请确保自定义函数已经在Makefile中正确定义。
  4. 特殊字符转义:在函数调用中,如果使用了特殊字符(如$、@等),需要进行转义,否则会导致语法错误。请检查函数调用中是否存在特殊字符,并进行适当的转义。

针对以上问题,可以采取以下解决方法:

  1. 检查函数调用语法:仔细检查函数调用的语法,确保逗号、括号等符号使用正确。
  2. 检查函数调用缩进:确保函数调用的缩进与其他命令一致,遵循Makefile的缩进规则。
  3. 确认函数定义:检查自定义函数是否在Makefile中正确定义,确保函数名和参数与调用一致。
  4. 特殊字符转义:如果函数调用中存在特殊字符,使用反斜杠进行转义,例如$, @等。

如果以上方法仍然无法解决问题,可以尝试以下调试步骤:

  1. 注释掉函数调用:将函数调用注释掉,重新运行Makefile,观察是否还会出现错误。如果错误消失,说明问题可能出在函数调用上。
  2. 打印调试信息:在函数调用前后添加一些打印语句,输出相关变量的值,以便查看函数调用时的上下文信息。
  3. 检查其他部分:如果以上步骤都没有找到问题所在,可以检查Makefile中其他部分是否存在语法错误或其他问题。

总结起来,当在Makefile中调用自定义函数后出现"缺少分隔符"错误时,需要仔细检查函数调用的语法、缩进、函数定义以及特殊字符转义等方面的问题。根据具体情况进行调试和排查,以解决该错误。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

SQL Server自定义函数:用指定的分隔符号分割字符串

微软SQL Server数据库包含了很多内置的函数,入下图: ? ? 它们用于处理日期、数学、元数据、字符串等。...但是对于 特殊字符串的处理,比如:ISBN号 '978-7-5007-7234-7',如果想获取第三个与第四个分割符号之间的数字, 那么SQL 内置函数无法直接做到。这时就需要自定义函数。...下面自定义三个函数,用于处理特殊的字符串。 一、按指定符号分割字符串,返回分割的元素个数 1 ALTER FUNCTION [dbo]....originalStr, @start); 23 SET @length = @length + 1; 24 END 25 RETURN @length; 26 END 调用函数...37 --2、字符串存在分隔符号,跳出while循环,@location为0,那默认为字符串后边有一个分隔符号。

4.1K10

js带有参数的函数作为值传入调用问题

❝小闫语录:你可以菜,但是就这么菜下去是不是有点过分了 ❞ 每天不是在写 bug,就是在解 bug 的路上~更多精彩文章请关注公众号『Pythonnote』或者『全栈技术精选』 1.无参数函数作为参数传入调用...当根据实际情况,函数需要作为参数传入时,一般采用如下方式直接调用即可: function fuc1() { console.log(1); } function fuc2(a) { a();...} fuc2(fuc1); // 1 2.有参数函数作为参数传入调用 一般的函数都有参数,那么这种情况如何传参呢?...("link1"); link.onclick = fuc1("我是小闫同学啊"); 但是不好意思,「不需要点击,一刷新页面,直接调用函数」,弹出窗口!...❝因为在你写 fuc1("我是小闫同学啊") 时,默认就调用了此函数,都不需要点击。 ❞ 如何才能达到在点击时才弹出窗口呢?

8.5K40
  • android onresume函数,android – 在Activity重新创建调用onResume

    在应用程序设置中进行某些更改时,我在recreate的onActivityResult调用MainActivity。重新创建,不调用onResume。...我也收到错误:E/ActivityThread: Performing pause of activity that is not resumed 从this问题开始,我了解到不能从onResume调用函数...另外,使用处理程序来调用recreate可以解决问题,但会导致眨眼,对用户而言很糟糕。这可能是什么错误?没有recreate的情况下如何使用Handler? 任何想法将不胜感激。谢谢!...最佳答案 在onResume()之前调用OnActivityResult()。...您可以做的是在OnActivityResult()设置一个标志,您可以在onResume()检入,如果该标志为true,则可以重新创建活动。

    3.4K20

    Makefile基本用法

    Makefile文件列出了依赖关系。默认执行第一行。 ? 其中,下面两行等价 ? ? 使用变量简化 添加objects变量,形成以下简化形式。内容不变。 ?...名为GUNmakefile和Makefile的文件同时存在,则使用前者。 调用方法过程,若前者不存在,则如下脚本给出了如何寻找后者是否存在所需要调用的方法,然后执行。...前两行等价,第三行的-include使make忽略不存在或无法重新生成且没有错误消息的makefile ? ? ?...依赖关系生成的格式为:target.o : target.c *.h 在这里将依赖关系写入了每个.d文件名对应的 文件, 的值是当前进程号,每两个 sed的替换命令,使用逗号作为分隔符,s,g作为开头和结尾...因此可能缺少一些内部标记。 ? ? ? .ONESHELL .ONESHELL定义,在构建一个目标时,方法的所有行都将被赋予shell的一次调用,而不是单独调用每一行。

    2.5K40

    Linux Make(Makefile)由浅入深的学习与示例剖析

    一、多文件编译的总体结构 如下图所示, 本示例 共包含 float类型加法、加法头函数、int类型加法、main主函数、float类型减法、减法头函数、int类型减法 ?...这是在书写makefileMakefile)文件时最易忽视和犯错的地方,而且大多比较隐蔽。 命令实质上市对任何一个目标的依赖文件发生变化重建目标的动作描述。...: 4:   *** 遗漏分隔符 。...错误提示,如下图 ? 分析与处理: 以上错误提示,说明makefile文件第4行,分隔符格式不正确,导致错误错误详见下图 ?...从上图可见,第4行为command命令行,应该如上述方法2强调所说,命令行应当Tab分隔缩进 ,解决如下图所示: ? 2、make: main 是最新的。 错误提示,如下图 ?

    1.8K20

    Autoconf编译配置

    3)make install make install表示运行”目标为install的make命令”,即将编译的结果复制到相应目录。...修改【configure.ac】,利用autoconf提供的各种M4宏,配置项目需要的各种自动化探测项目 编写【自定义宏】,建议每个宏一个单独的*.m4文件; 调用aclocal收集configure.ac...中用到的各种非Autoconf的宏,包括自定义宏; 调用autoheader,扫描configure.ac(configure.in)、acconfig.h(如果存在),生成config.h.in宏定义文件...调用automake,将每个Makefile.am转化成Makefile.in,同时生成满足GNU编码规范的一系列文件(带-a选项自动添加缺少的文件,但有几个仍需要自己添加,在执行automake前需执行...自定义目录: 在根目录下的Makefile.am添加如下内容: configdir=${prefix}/config => 定义一个自定义的目录名称config,注意dir后缀是固定的 config_DATA

    1.2K50

    Makefile教程

    在找寻的过程,如果出现错误,比如最后被依赖的文件找不到,那么make就会直接退出。...“:=”表示变量的值决定于它在Makefile的位置,而不是整个Makefile展开的最终值。...因此,多行的shell需要在Makefile使用反斜杠”\”连接为一行。此时,shell脚本的一条语句需要添加分号分隔。...尤其是在Makefile,当变量定义或者函数调用时,通配符%的展开功能就失效了。此时需要借助wildcard函数。通配符*常用于wildcard函数,二者应用范围不同。...其实可以使用Makefile的shell函数来执行shell脚本,因为shell函数把执行shell脚本的输出作为函数返回,因此我们可以使用shell函数来为Makefile的变量赋值。

    4K53

    Linux 开发 | 学习 Makefile

    如果一个规则是以“.IGNORE”作为目标的,那么这个规则的所有命令将会忽略错误。...:= 是覆盖之前的值(类似C的 = ) 变量的值决定于它在makefile的位置,而不是整个makefile展开的最终值。...foreach 这个函数执行过程, 按顺序依次取出 list 的单词逐个取出放入到临时变量 var , 返回 text, 每次返回的 text 以空格分开,遍历所有单词返回完整的组合字符串。...自定义函数 当make执行这个函数时,variable参数的变量,如$(1),$(2),$(3)等,会被参 数 parm1, parm2,parm3 依次取代。...Makefile 除了命令区域,是不能直接执行 shell 命令,但是可以通过 shell 函数执行,调用函数,会生成一个新的程序,所以需要注意效率问题。

    5.4K10

    JavaScript基本词法

    为了避免输入混乱和语法错误,建议采用小写字符编写代码。在以下特殊情况下可以使用大写形式: 构造函数的首字母建议大写。构造函数不同于普通函数。...示例 下面示例调用预定义的构造函数 Date(),创建一个时间对象,然后把时间对象转换为字符串显示出来。...这些名称具有特定的用途,用户不能自定义同名的标识符。具体说明如表所示。...在 JavaScript 分隔符不被解析,主要用来分隔各种记号,如标识符、关键字、直接量等信息。 在 JavaScript 脚本,常用分隔符来格式化代码,以方便阅读。...分隔符使用时需要注意以下几点: 分隔符虽然无实际意义,但是在脚本却不能缺少。如果在标识符与关键字之间不使用分隔符分隔,JavaScript 就会抛出异常。

    18720

    qmake手册(Qt5.9.3)

    功能是可以驻留在许多标准目录的.prf文件自定义函数和定义的集合。...CONFIG 自定义构建目标的特定配置选项。可以设置递归来表示应该在Makefile创建规则来调用子目标特定的Makefile的相关目标。该成员默认为每个子目标创建一个条目。...depends 自定义构建目标所依赖的现有构建目标。 recurse 在Makefile创建规则以调用子目标特定的Makefile时,指定应使用哪些子目标。该成员仅在CONFIG设置递归时使用。...shell_path(path) 将路径的所有目录分隔符转换为与构建项目时使用的shell(即,由make工具调用的shell)兼容的分隔符。...system_path(path) 将路径的所有目录分隔符转换为与由system()函数用来调用命令的shell兼容的分隔符。例如,斜杠转换为Windows外壳的反斜杠。

    5.6K20

    Linux软件管理 - 编译安装

    写在前面:博主是一只经过实战开发历练投身培训事业的“小山猪”,昵称取自动画片《狮子王》的“彭彭”,总是以乐观、积极的心态对待周边的事物。...yum install zlib-devel curl src/main.c:18:23: 错误:curl/curl.h:没有那个文件或目录 src/main.c: 在函数‘main’: src/main.c...错误:(即使在一个函数内多次出现,每个未声明的标识符在其 src/main.c:143: 错误:所在的函数内也只报告一次。)...src目录:软件源码存放位置 LICENSE:许可及权限信息 README:帮助说明文档 configure:用于检测当前系统环境,用户自定义配置,以及生成makefile文件 Makefile:有可能直接存在...编译:make 在进行configure,如果环境不存在问题,会生成对应的Makefile文件,用于执行make命令时调用

    3.1K21

    「薅」52图初探Linux通用知识

    在Linux,习惯使用Makefile替代makefile,当用户执行configure,就会在当前目录生成这个makefile文件,然后用户输入make就开始运行。...continue echo "游戏结束" ;; esac done 10 shell函数 用户定义函数,然后在shell脚本随便调用,格式如下 [ function...“&&”当前一个脚本成功完成才执行后面的命令 脚本文件,如何将其重定向标准输出和标准错误流到 log.txt 文件 ? ....RS:行分隔符,用于分割每一行,默认是换行符。 OFS:输出字段的分隔符,用于打印时分隔字段,默认为空格。 ORS:输出记录的分隔符,用于打印时分隔记录,默认为换行符。...退出状态:该命令返回下列出口值:  126 可以查找但不能调用 Command 参数指定的命令。  127 nohup 命令发生错误或不能查找由 Command 参数指定的命令。

    1.6K30

    mysql自定义函数split_part、split_last

    return返回值   end   自定义符号   delimiter ; 关键字delimiter的使用: delimiter是mysql分隔符。...先将分隔符设置为 //, 直到遇到下一个 //,才总体运行语句。 运行完。...最后一行, delimiter ; 将mysql的分隔符又一次设置为分号; 假设不改动的话,本次会话的全部分隔符都以// 为准。...确认函数的名称是否正确。如果你在调用函数时拼写错误,那么就会出现这个错误。 3. 确认函数的参数是否正确。如果你在调用函数时传递了错误的参数,那么就会出现这个错误。 4....确认函数是否在正确的数据库。如果你在调用函数时没有指定数据库名称,那么就会默认在当前数据库查找函数。如果函数不在当前数据库,那么就会出现这个错误。 5. 确认你是否有足够的权限来访问函数

    67230

    Nginx编译配置脚本篇(10)- Makefile相关脚本

    文件 3.6、输出ALL_INCS变量到objs/Makefile文件 3.7、输出CORE_DEPS和CORE_INCS变量到objs/Makefile文件 3.8、将各个模块的头文件路径和头文件所在目录输出到...3、auto/make脚本文件详解 3.1、输出调试信息表示创建objs/Makefile文件 从auto/init脚本可以知道NGX_MAKEFILE的值为objs/Makefile。...ngx_regex_dirsep是正则表达式的目录分隔符,gcc编译器下该值为/,则ngx_objs_dir展开之后为objs/,ngx_use_pch的值不用理会,对于大部分编译器来说这个值没用。...文件 从之前的内容我们可以知道,我们一直操作的是objs/Makefile文件,但是我们最终编译时,是在源代码的根目录下进行编译的,所以肯定存在一个主Makefile调用子目录的Makefile文件的...这也就是auto/install文件最后所做的工作了,也就是生成主Makefile文件,然后往里面写入相关的可以调用objs/Makefile的目标 代码如下: cat > Makefile

    2.3K40
    领券