標(biāo)題: MPLAB X IDE 5.45 XC16編譯器匯編和C語言混合編程問題 [打印本頁]

作者: hz_dyg    時間: 2023-12-25 21:56
標(biāo)題: MPLAB X IDE 5.45 XC16編譯器匯編和C語言混合編程問題
MPLAB X IDE 5.45  XC16編譯器 ,現(xiàn)在有個問題,匯編和C混合匯編, 匯編為主,c為輔助,c里面有個函數(shù)要用到軟件浮點數(shù)乘法,鏈接時候找不到浮點數(shù)數(shù)庫。應(yīng)該在哪里設(shè)置,如何設(shè)置下?希望有做過的大神幫助解答下,感謝!
作者: Hephaestus    時間: 2023-12-26 13:22
你在編譯器的lib子目錄下面找,一定有。
作者: edisonon901001    時間: 2023-12-26 16:51
在MPLAB X IDE 5.45和XC16編譯器中,如果在匯編代碼中使用了軟件浮點數(shù)乘法,而鏈接時找不到浮點數(shù)庫,可以通過以下步驟進(jìn)行設(shè)置:

1. 首先,確保已經(jīng)包含了所需的浮點數(shù)庫。在XC16編譯器中,通常使用`libm`庫來支持軟件浮點運算。

2. 接下來,需要在MPLAB X IDE中的項目設(shè)置中指定鏈接器可以找到這些庫。這通常涉及到在項目屬性或鏈接器設(shè)置中添加庫的路徑和名稱。

3. 在MPLAB X IDE中,您可以通過以下步驟找到鏈接器設(shè)置:
   - 選擇項目菜單下的“屬性”選項。
   - 在彈出的窗口中,選擇“XC16 Linker”選項。
   - 在該選項卡中,您可以找到“庫搜索路徑”和“庫”選項,您可以在這里添加所需的浮點數(shù)庫路徑和名稱。

通過上述步驟,您可以在MPLAB X IDE中的項目設(shè)置中指定鏈接器可以找到所需的浮點數(shù)庫,從而解決鏈接時找不到浮點數(shù)庫的問題。

作者: hz_dyg    時間: 2023-12-28 16:26
edisonon901001 發(fā)表于 2023-12-26 16:51
在MPLAB X IDE 5.45和XC16編譯器中,如果在匯編代碼中使用了軟件浮點數(shù)乘法,而鏈接時找不到浮點數(shù)庫,可以 ...

謝謝你的解答!我按照你的辦法,添加了libc99-pic30-elf,就可以了。 但我最后還是放棄了浮點數(shù)的乘法,在匯編里寫了個子函數(shù),用整數(shù)乘法和除法,來實現(xiàn)這個。因為是在原來的匯編里面增加程序,添加了c庫后,會影響程序中常量的鏈接地址,所以放棄這個辦法。




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1