Undefined symbol解决方法

news2024/10/7 11:24:12

1.初级错误

(1)C中未定义
(2)H中未引用
(3)未包含含有该类型的.H文件
(4)在keil中未添加.C或.H文件到工程

2.C和C++代码混合调用引起的未定义错误

1.一般情况下,Error: L6218E: Undefined symbol 若是由于未定义引起的错误,可以根据错误提示定位到相应的问题行,然后将相应的函数进行定义即可,网上大多也都是针对这种情况下的未定义错误进行解答;

2.如未将.c/.cpp源文件添加到工程中,也会出现此错误;

3.若工程中已经添加了源文件,也包含了相应的头文件,依然出现错误 Error: L6218E: Undefined symbol ,则检查是否是由于在Keil中混用C和c++引起的。这种情况下,除了像上述那样在源文件中包含头文件外,还可以在头文件中使用

#ifdef __cplusplus
extern “C” {
#endif

void xxxxx(xxx)

#ifdef __cplusplus
}
#endif

这样的条件编译,在源文件中直接使用#include ""包含头文件亦可。
在这里插入图片描述

3.删除原来的.c文件,重建一个同名.c文件,把原来文件的所有内容复制过来。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/463653.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

大模型时代,RPA的冰与火之歌|产业特稿

从市场趋势来看,RPA属性正在逐渐淡化,一些厂商都已瞄准更高阶的智能机器人。可能未来5~10年,随着AI语言模型的发展,RPA的产品逻辑会彻底改变,RPA厂商也会进化到更智能的阶段。 作者|思杭 编辑|皮爷 出…

C#开发的OpenRA的游戏侧边界面

C#开发的OpenRA的游戏侧边界面 OpenRA游戏开始之后,会在右边提供一个游戏侧边界面, 通过这个游戏界面,可以查看游戏状态、执行一些特殊的命令,以及雷达显示, 还有创建各种需要的建筑物,以及生产各种兵种,飞机等等。 这个游戏界面,就是给玩家提供一个操作平台,因此它…

年轻不乏野心,想做年薪40万+的软件测试工程师?写给长途漫漫中的你...

本人从事自动化测试10年多,之前在猪场工作,年薪突破40W,算是一个生活过得去的码农。(仅代表本人) 目前从事自动化测试的薪资待遇还是很不错的,所以如果朋友们真的对自动化感兴趣的话可以坚持学下去&#xf…

开放式蓝牙耳机排行,列举几款值得推荐的开放式蓝牙耳机

开放式耳机是通过人的颅骨振动将声音转换成声波,不通过耳膜,可以听到外界的声音,可以保护耳朵,也可以保护听力。并且大部分的开放式耳机都是采用挂耳式的佩戴设计,即使是长时间佩戴也不会让耳朵感到疲劳,下…

线性回归模型(7大模型)

线性回归模型(7大模型) 线性回归是人工智能领域中最常用的统计学方法之一。在许多不同的应用领域中,线性回归都是非常有用的,例如金融、医疗、社交网络、推荐系统等等。 在机器学习中,线性回归是最基本的模型之一&am…

Cortex-A7中断详解(一)

STM32中断系统回顾 中断向量表NVIC(内嵌向量中断控制器)中断使能中断服务函数 中断向量表 中断向量表是一个表,表里面存放的是中断向量。 中断服务程序的入口地址或存放中断服务程序的首地址成为中断向量,因此中断向量表是一系…

电脑开机memory management错误蓝屏了怎么办?

电脑开机memory management错误蓝屏了怎么办?windows系统出现不兼容问题之后,很容易出现电脑蓝屏的情况。最近有用户遇到了上述的蓝屏错误情况,不知道怎么去进行解决。今天我们就一起来看看以下的解决方法分享吧。 准备工作: 1、U…

yolov5半自动打标签(opencv版本),识别目标画框并将坐标信息保存在xml中

文章目录 1.yolov5预训练模型推理2. opencv边缘检测结果展示 yolov5训练数据集时,需要对数据进行打标签,可以通过两种方法进行半自动化打标签。 1.yolov5预训练模型推理 yolov5预训练模型:将待打标签的图片输入预训练模型中进行推理&#xf…

实现PXE批量网络装机及kickstrat无人值守安装(富士山终究留不住欲落的樱花)

一、PXE概述和部署PXE批量装机 1.PXE简介 PXE(预启动执行环境,在操作系统之前运行)是由Intel公司开发的网络引导技术,c/s架构,允许客户机通过网络从远程服务器下载引导镜像,并加载安装文件或者整个操作系统…

2023_8.0.33版windows版MySql安装_配置远程连接_修改设置初始密码---MySql工作笔记0001

MySQL :: Download MySQL Community Server https://dev.mysql.com/downloads/mysql/ 首先去下载mysql 可以看到这里下载第一个就可以了,最新版的8.0.33 这里点击仅仅下载 just start my download 然后解压到一个文件夹,然后配置一下环境变量 然后新建一个my.ini文件 然后把…

ubuntu22.04下挂载第二块硬盘

文章目录 一、查看硬盘情况二、找到nvme1n1三、挂载四、修改分区文件 一、查看硬盘情况 首先要查看一下系统识别出来的设备。也就是说,我希望知道,ubuntu到底发现了几块硬盘。用命令:lsblk 显示结果如下: 有两块硬盘&#xff1a…

Win11打开移动热点后电脑无法上网怎么办?

Win11打开移动热点后电脑无法上网怎么办?有用户将自己的电脑开启移动热点来使用的时候,发现自己的电脑出现了无法上网的情况。那么为什么开启热点之后,就会无法进行上网呢?来看看以下的解决方法分享吧。 Win11打开移动热点无法上网…

virtual kubelet 简单使用例子

virtual kubelet 简单使用例子 实现过程制作virtual kubelet节点证书下载virtual kubelet代码并编译virtual kubelet virtual kubelet 顾名思义就是虚拟的kubelet节点 效果如下: 实现过程 制作virtual kubelet节点证书 openssl genrsa -out client.key 2048 opens…

EPICS aSub记录使用实例

本实例描述了在数据库中如何使用aSub记录 本实验中使用了三个k型热电偶,一个3路k型热电偶变送器以及一个串口服务器: 温度变送器参数: 串口服务器: 1) 用makeBaseApp.pl构建IOC应用程序的目录结构: [blctrllocalhost…

OpenGL入门教程之 摄像机

引言 前面的教程中我们讨论了观察矩阵以及如何使用观察矩阵移动场景。OpenGL本身没有摄像机的概念,但我们可以通过把场景中的所有物体往相反方向移动的方式来模拟出摄像机,这样感觉就像我们在移动,而不是场景在移动。  本节我们将会讨论如何…

从零开始学架构——高可用存储架构

双机架构 存储高可用方案的本质都是通过将数据复制到多个存储设备,通过数据冗余的方式来实现高可用,其复杂性主要体现在如何应对复制延迟和中断导致的数据不一致问题。因此,对任何一个高可用存储方案,我们需要从以下几个方面去进…

【MySQL】一个脚本启动MySQL 8.0并初始化数据库

引 很多情况下需要在客户端发布时发布 MySQL 数据库,这种发布方式虽然存在文件资源较大、易出错等缺点,但是却可以让桌面产品的发布更加完整。 本文将阐述如何使用一个脚本启动并初始化 MySQL 8.0 的方法,涵盖数据库下载、脚本源码、测试及…

PFSK162 3BSE015088R1通常都要做空载全电压合闸冲击试验

​ PFSK162 3BSE015088R1通常都要做空载全电压合闸冲击试验 变压器励磁涌流影响的保护整定 摘要:在大型变压器空栽冲击过程中,由于励磁涌流和负序电压的存在,如果定值整定不得当,会导致差动保护,复压过流保护等误动作&…

设计模式——组件协作模式之观察者模式

文章目录 前言一、“组件协作” 模式二、Observer 观察者模式1、动机2、模式定义3、伪代码示例①、第一种方案,最朴素的方式②、第二种方案,重构使得遵循DIP原则:③、进一步的小优化:④、修改使得支持多个观察者: 4、结…

028:Mapbox GL 绘制线段,实时测量长度距离值

第028个 点击查看专栏目录 本示例的目的是介绍演示如何在vue+mapbox中添加draw组件,绘制线段,编辑线段,实时显示长度值。这里使用turf来计算长度值,采用默认的单位千米。 直接复制下面的 vue+mapbox源代码,操作2分钟即可运行实现效果 文章目录 示例效果配置方式示例源代…