色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          "); //-->

          博客專欄

          EEPW首頁 > 博客 > fatal error: gnu/stubs-soft.h: No such file or directory

          fatal error: gnu/stubs-soft.h: No such file or directory

          發(fā)布人:電子禪石 時(shí)間:2023-03-20 來源:工程師 發(fā)布文章

          在給一個(gè)嵌入式平臺(tái)開發(fā)時(shí),編譯項(xiàng)目出現(xiàn)如題所示錯(cuò)誤。通常情況下這種問題表明某個(gè)文件缺失,但是先別急著去找那個(gè)文件或者從其他地方拷貝過來用。

          參考來源1:https://blog.csdn.net/wuyusheng314/article/details/79428996

          參考博文與我的情況相似,不過我是使用clion進(jìn)行開發(fā)的,而clion使用cmake進(jìn)行代碼組織,這樣免去了寫makefile的痛苦。不過問題的本質(zhì)是一樣的。


          從該文件看,引入stubs-soft.h頭文件需要保證沒有定義__ARM_PCS_VFP宏。

          同樣引用參考答案的一段內(nèi)容:

          cc has a builtin define to denote hard abi when in use, e.g. when using -mfloat-abi=hard it will define __ARM_PCS_VFP to 1 and therefore we should check that to determine which calling convention is in use and not __VFP_FP__ which merely indicates presence of VFP unit.

          即,這個(gè)宏是通過編譯參數(shù)來定義的,所以需要在編譯參數(shù)中加上-mfloat-abi=hard 或者 -mfloat-abi=soft,具體的需要依據(jù)您使用的平臺(tái)來決定。而使用cmake的話可以設(shè)定如下參數(shù):

          1. set(CMAKE_C_FLAGS "-march=armv7-a -marm -mfpu=vfp -mfloat-abi=hard")

          2. set(CMAKE_CXX_FLAGS "-march=armv7-a -marm -mfpu=vfp -mfloat-abi=hard")

          注:前面兩個(gè)參數(shù)是架構(gòu)相關(guān)的,并不影響此問題。

          fatal error: gnu/stubs-soft.h: No such file or directory – OpenMind (lxins.com)

          *博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。



          關(guān)鍵詞: gcc

          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉