博客專欄

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

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

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

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

        參考來源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.

        即,這個宏是通過編譯參數(shù)來定義的,所以需要在編譯參數(shù)中加上-mfloat-abi=hard 或者 -mfloat-abi=soft,具體的需要依據(jù)您使用的平臺來決定。而使用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")

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

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

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



        關(guān)鍵詞: gcc

        相關(guān)推薦

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

        關(guān)閉
        主站蜘蛛池模板: 基隆市| 繁峙县| 苏尼特左旗| 郧西县| 巫溪县| 高雄市| 梓潼县| 镇坪县| 莎车县| 五台县| 克山县| 长垣县| 莱西市| 蚌埠市| 安庆市| 新绛县| 城市| 两当县| 江川县| 株洲市| 东宁县| 香河县| 三穗县| 济南市| 娱乐| 汉源县| 柘荣县| 榆林市| 卢氏县| 浑源县| 德钦县| 赤城县| 田东县| 永靖县| 杨浦区| 新昌县| 汶上县| 英德市| 博罗县| 沙洋县| 赫章县|