對Xil_Out32未定義的引用
第一次在HLS中遇見一個官方的函式未定義問題,這就把解決方法記錄下來。
在建立好工程,寫完工程程式碼後,發現報錯如下
./src/led_controller_test_tut_4A.o:在函式‘main’中: /home/greedyhao/Projects/LearningAndWorking/led_controller/led_controller.sdk/LED_Controller_test/Debug/../src/led_controller_test_tut_4A.c:44:對‘Xil_Out32’未定義的引用 collect2: error: ld returned 1 exit status makefile:39: recipe for target 'LED_Controller_test.elf' failed make: *** [LED_Controller_test.elf] Error 1
一眼就知道 Xil_Out32 這個函式,絕對是官方定義的啊。
找到它的定義在 xil_io.h 這個檔案中
static INLINE void Xil_Out32(UINTPTR Addr, u32 Value) { ... }
在網上查到有人說,因為這個函式是static的,所以將這個標頭檔案include到主函式的檔案就可以了
於是在主函式檔案新增 #include "xil_io.h" 並儲存好,工程正常
