keil 編譯通過 連結錯誤 解決
阿新 • • 發佈:2018-11-02
今天試了一個nordic sdk5_12.3的例子,開啟後編譯連結,結果編譯通過,連結卻提示有4個函式沒有宣告,但是回頭再看檔案,明明有引用標頭檔案啊,,為什麼還不過呢?我又試了使用extern宣告還是不行。
linking...
.\_build\nrf51422_xxac.axf: Error: L6218E: Undefined symbol app_fifo_flush (referred from app_uart_fifo.o).
.\_build\nrf51422_xxac.axf: Error: L6218E: Undefined symbol app_fifo_get (referred from app_uart_fifo.o).
.\_build\nrf51422_xxac.axf: Error: L6218E: Undefined symbol app_fifo_init (referred from app_uart_fifo.o).
.\_build\nrf51422_xxac.axf: Error: L6218E: Undefined symbol app_fifo_put (referred from app_uart_fifo.o).
找到該函式所在的檔案,然後在keil左側的專案管理中滑鼠右鍵單擊該檔案並選擇“Options for File "xxx.c"”,然後在對話方塊中勾選“include in target build”,要讓其對勾變為黑色,預設是灰色。然後再編譯即可.
選擇之前圖示沒有黑色梅花,選擇之後有黑色梅花。開源軟體都有黑色梅花。