0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

投稿 | e2studio中函数未定义的问题及解决方法

RA生态工作室 2022-01-06 16:08 次阅读
poYBAGG2ot-AGNHBAABs_TTBnPY753.png

1.问题描述

新建e2studio工程,在入口函数hal_enry中调用user_main.c中定义的user_main函数,user_main函数中调用本文件中定义的mul函数和math_cal.c中定义的add和sub函数。工程目录如下图。

099f8938-697f-11ec-8d32-dac502259ad0.png

工程路径中添加user文件夹的路径,编译后提示math_cal.c中的add和sub函数未定义,user_main.c中定义的mul函数没有问题,仔细检查后发现语法没有问题。

2.原因检查

e2 studio中除了建工程时生成的文件夹,其他新添加的文件夹里面的文件默认都不会被编译,从工程树下的各文件夹标识可以看出,可以被编译的文件夹上有个蓝底白字的c,不被编译的文件夹则没有,如下图。

09f72cd8-697f-11ec-8d32-dac502259ad0.png

3.解决方法

在新添加不带C标识的文件夹上右键,选择“Resource Configurations -> Exclude from build”,在出现的对话框中把“Dubeg”和“Release”都不勾选,如下图。默认都是勾选的,表示在debug和release的时候,编译时该文件夹下的文件不包含在内,所以提示文件内的函数未定义。

0a420b86-697f-11ec-8d32-dac502259ad0.png

点“OK”退出后,可以从工程树中看到user文件夹已有了蓝底白字的c标识,再次编译已没有错误。

0a7ab0ee-697f-11ec-8d32-dac502259ad0.png

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
收藏 人收藏

    评论

    相关推荐

    如何使用e2studio对瑞萨单片机进行GPIO输出

    本篇文章主要介绍如何使用e2studio对瑞萨单片机进行GPIO输出,并以LED显示。
    的头像 发表于 07-30 16:12 289次阅读
    如何使用<b class='flag-5'>e2studio</b>对瑞萨单片机进行GPIO输出

    GD32F3使用串口DMA时,相应bsp里drv_dma.h文件中含有dma_subperipheral_enum报未定义错误的原因?

    GD32F3使用串口DMA时,相应bsp里drv_dma.h文件中含有dma_subperipheral_enum,报未定义错误
    发表于 07-12 08:55

    SDF工程编译报错未定义是怎么回事?

    调用例程头文件xSemaphoreHandle audio_hal_lock和timer_callback编译报错未定义,这是什么问题 F:/embedded/esp-idf/esp-adf
    发表于 06-28 08:25

    ESP8266报错CONFIG_FREERTOS_HZ未定义,怎么解决这个问题?

    SDK用的是EPS8266_RTOS_SDK,在github上下载的最新版在vscode 上用这个函数时vTaskDelay(1000 / portTICK_PERIOD_MS);portTICK_PERIOD_MS报错,提示CONFIG_FREERTOS_HZ未定义,在
    发表于 06-19 06:06

    esp32s2使用自定义中断,提示UART0未定义,需要包含什么头文件?

    | ESP_INTR_FLAG_IRAM, &handle);static void IRAM_ATTR uart0_irq_handler(void *arg) { uint16_t status = UART0.int_st.val; } 提示UART0未定义,不知道需要包含什么头文件。
    发表于 06-18 06:25

    esp-idf-v5.1 vscode提示未定义标识符,F2转到定义路径不对是怎么回事?

    的LP_I2C_NUM_0 等标识符都会提示未定义标识符。 追踪定义之后发现,是因为宏定义 SOC_I2C_NUM 判定时,
    发表于 06-07 06:48

    TLE9879打开配置文件以后,发现会提示有些未定义的变量,为什么?

    我打开配置文件以后,发现会提示有些未定义的变量,然后这个时钟变量FSYS也变成了_NAN(IND)MHz,不知道是什么问题,请帮忙看一下。
    发表于 05-29 07:47

    stm8的管脚未定义的原因?

    我使用IAR编译的时候,包含了iostm8s103f3.h,定义管脚时使用的是_BoolLED@PB_ODR:5;为什么提示我——Bool未定义
    发表于 05-15 06:00

    MotorControl Workbench 5.x.x安装在非指定目录,生成的代码编译时就会出一大堆的未定义怎么解决?

    如果MotorControl Workbench 5.x.x安装在非指定目录,比如e:STMicroelectronicsMC_SDK_5.x.x,生成的代码编译时就会出一大堆的未定义。这个需要如何设置才能正确编译?(编译软件就安装的程序都没问题,改到默认目录安装就不会出
    发表于 04-26 06:58

    STM8S2xx直接用IA编译报错,提示未定义的原因?

    大家有没有遇到官方的STM8S2xx的触摸例程直接用IA编译报错,提示未定义
    发表于 04-16 07:13

    已经将文件的路径添加了,头文件也包含了,为什么编译会提示未定义符号错误?

    我准备添加TFT显示屏的驱动,已经将文件的路径添加了,头文件也包含了,但在编译时却提示未定义符号错误。
    发表于 03-07 07:36

    瑞萨e2studio(28)----SPI 驱动WS2812灯珠

    本文介绍了如何使用瑞萨RA微控制器,结合E2STUDIO配置工具和SPI通讯接口,来驱动和控制WS2812 LED灯带。这是一个集硬件连接、软件配置和编程开发于一体的综合性项目,目标是实现对LED灯带颜色和亮度的精确控制。
    的头像 发表于 12-01 16:48 1634次阅读
    瑞萨<b class='flag-5'>e2studio</b>(28)----SPI 驱动WS2812灯珠

    keil总是显示p0未定义应该怎么解决?

    keil总是显示p0未定义应该怎么解决?
    发表于 10-18 07:34

    编译过程替换函数名的两种方法

    函数名为__wrap_symbol,且称其为包装函数,“symbol”是一个函数名,大致执行过程是这样的:当调用“symbol”函数时,如果“symbol”
    的头像 发表于 10-11 17:15 505次阅读

    求助:STM32CubeIDE移植U8g2库遇到的一个问题

    我在用STM32CubeIDE移植u8g2库时遇到了一个未定义的问题 我移植好了之后点击编译他显示我这个函数未定义,但是我ctrl+左键却时可以跳转过去的。 这是我的文件结构,实在是
    发表于 08-31 11:43