1.問題描述
新建e2studio工程,在入口函數(shù)hal_enry中調(diào)用user_main.c中定義的user_main函數(shù),user_main函數(shù)中調(diào)用本文件中定義的mul函數(shù)和math_cal.c中定義的add和sub函數(shù)。工程目錄如下圖。
工程路徑中添加user文件夾的路徑,編譯后提示math_cal.c中的add和sub函數(shù)未定義,user_main.c中定義的mul函數(shù)沒有問題,仔細檢查后發(fā)現(xiàn)語法沒有問題。
2.原因檢查
e2 studio中除了建工程時生成的文件夾,其他新添加的文件夾里面的文件默認都不會被編譯,從工程樹下的各文件夾標識可以看出,可以被編譯的文件夾上有個藍底白字的c,不被編譯的文件夾則沒有,如下圖。
3.解決方法
在新添加不帶C標識的文件夾上右鍵,選擇“Resource Configurations -> Exclude from build”,在出現(xiàn)的對話框中把“Dubeg”和“Release”都不勾選,如下圖。默認都是勾選的,表示在debug和release的時候,編譯時該文件夾下的文件不包含在內(nèi),所以提示文件內(nèi)的函數(shù)未定義。
點“OK”退出后,可以從工程樹中看到user文件夾已有了藍底白字的c標識,再次編譯已沒有錯誤。
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。
舉報投訴
發(fā)布評論請先 登錄
相關推薦
GD32F3使用串口DMA時,相應bsp里drv_dma.h文件中含有dma_subperipheral_enum報未定義錯誤的原因?
GD32F3使用串口DMA時,相應bsp里drv_dma.h文件中含有dma_subperipheral_enum,報未定義錯誤
發(fā)表于 07-12 08:55
SDF工程編譯報錯未定義是怎么回事?
調(diào)用例程頭文件中xSemaphoreHandle audio_hal_lock和timer_callback編譯報錯未定義,這是什么問題
F:/embedded/esp-idf/esp-adf
發(fā)表于 06-28 08:25
ESP8266報錯CONFIG_FREERTOS_HZ未定義,怎么解決這個問題?
SDK用的是EPS8266_RTOS_SDK,在github上下載的最新版在vscode 上用這個函數(shù)時vTaskDelay(1000 / portTICK_PERIOD_MS);portTICK_PERIOD_MS報錯,提示CONFIG_FREERTOS_HZ未定義,在
發(fā)表于 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未定義,不知道需要包含什么頭文件。
發(fā)表于 06-18 06:25
esp-idf-v5.1 vscode提示未定義標識符,F(xiàn)2轉(zhuǎn)到定義路徑不對是怎么回事?
的LP_I2C_NUM_0 等標識符都會提示未定義標識符。
追蹤定義之后發(fā)現(xiàn),是因為宏定義 SOC_I2C_NUM 判定時,
發(fā)表于 06-07 06:48
TLE9879打開配置文件以后,發(fā)現(xiàn)會提示有些未定義的變量,為什么?
我打開配置文件以后,發(fā)現(xiàn)會提示有些未定義的變量,然后這個時鐘變量FSYS也變成了_NAN(IND)MHz,不知道是什么問題,請幫忙看一下。
發(fā)表于 05-29 07:47
stm8的管腳未定義的原因?
我使用IAR編譯的時候,包含了iostm8s103f3.h,定義管腳時使用的是_BoolLED@PB_ODR:5;為什么提示我——Bool未定義
發(fā)表于 05-15 06:00
MotorControl Workbench 5.x.x安裝在非指定目錄,生成的代碼編譯時就會出一大堆的未定義怎么解決?
如果MotorControl Workbench 5.x.x安裝在非指定目錄,比如e:STMicroelectronicsMC_SDK_5.x.x,生成的代碼編譯時就會出一大堆的未定義。這個需要如何設置才能正確編譯?(編譯軟件就安裝的程序都沒問題,改到默認目錄安裝就不會出
發(fā)表于 04-26 06:58
已經(jīng)將文件的路徑添加了,頭文件也包含了,為什么編譯會提示未定義符號錯誤?
我準備添加TFT顯示屏的驅(qū)動,已經(jīng)將文件的路徑添加了,頭文件也包含了,但在編譯時卻提示未定義符號錯誤。
發(fā)表于 03-07 07:36
瑞薩e2studio(28)----SPI 驅(qū)動WS2812燈珠
本文介紹了如何使用瑞薩RA微控制器,結(jié)合E2STUDIO配置工具和SPI通訊接口,來驅(qū)動和控制WS2812 LED燈帶。這是一個集硬件連接、軟件配置和編程開發(fā)于一體的綜合性項目,目標是實現(xiàn)對LED燈帶顏色和亮度的精確控制。
編譯過程中替換函數(shù)名的兩種方法
函數(shù)名為__wrap_symbol,且稱其為包裝函數(shù),“symbol”是一個函數(shù)名,大致執(zhí)行過程是這樣的:當調(diào)用“symbol”函數(shù)時,如果“symbol”
評論