娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

在stm32f407上移植openharmony遇到的問題

發布者:DreamyMoon最新更新時間:2025-03-11 來源: jianshu關鍵字:stm32f407  移植 手機看文章 掃描二維碼
隨時隨地手機看文章

問題1:

[OHOS ERROR] (.text.Reset_Handler+0x2e): undefined reference to `__libc_init_array'

__libc_init_array在startup_stm32f407xx.s中,看字面意思像是對C庫的初始化。

我現在用的是musl的C庫。也可以在startup_stm32f407xx.s中注釋掉相關語句。


/* Call the clock system intitialization function.*/

  bl  SystemInit   

/* Call static constructors */

 /*  bl __libc_init_array *//* Call the application's entry point.*/

  bl  main

  bx  lr    

.size  Reset_Handler, .-Reset_Handler

hb build之后問題沒有出現。


問題2

[OHOS ERROR] stm32f4xx_hal_rcc.c:(.text.HAL_RCC_GetSysClockFreq+0x34): undefined reference to `__aeabi_uldivmod'[OHOS ERROR] collect2: error: ld returned 1 exit status

__aeabi_uldivmod,網上查資料說跟除法有關。本次我開的是軟除法,沒有開硬件除法。英文用用的musl不支持cortex-m4的除法。因為一下錯誤:


Error: selected FPU does not support instruction -- `vabs.f64 d0,d0'

cortex-m4只支持vabs.f32指令


放棄musl庫,使用gcc標準C庫


問題:XTS移植

[OHOS INFO] The variable 'enable_ohos_test_xts_acts_use_thirdparty_lwip' was set as a build argument[OHOS INFO] but never appeared in a declare_args() block in any buildfile.[OHOS INFO] [OHOS INFO] To view all possible args, run 'gn args --list '[OHOS INFO] [OHOS INFO] The build continued as if that argument was unspecified.

enable_ohos_test_xts_acts_use_thirdparty_lwip被設置成了編譯參數,但是在編譯文件中沒有出現enable_ohos_test_xts_acts_use_thirdparty_lwip。

根據提示運行:


gn args -list out/tunnel_box/tunnel/...build_xts    Current value (from the default) = false

      From //build/config/BUILDCONFIG.gn:255...is_debug    Current value (from the default) = false

      From //build/config/BUILDCONFIG.gn:251


    Debug build. Enabling official builds automatically sets is_debug to false.

發現兩個有趣的參數build_xts和is_debug都是false。

根據XTS官網文檔的說法“debug版本編譯時會同步編譯acts測試套件”。所以is_debug應該是ture。

build_xts根據面意思應該也是true。

根據提示位置,找到is_debug和build_xts賦值為true。


declare_args() {

  # Debug build. Enabling official builds automatically sets is_debug to false.

  is_debug = true}declare_args() {

  build_xts = true}

重啟hb build之后,提示


[OHOS INFO] c targets overlap rate statistics

[OHOS INFO] subsystem           files NO.       percentage      builds NO.      percentage      overlap rate

[OHOS INFO] kernel                    39        19.7%         39        19.7%   1.00

[OHOS INFO] securec                   39        19.7%         39        19.7%   1.00

[OHOS INFO] test                       2        1.0%           2        1.0%    1.00

[OHOS INFO] third_party              127        64.1%        127        64.1%   1.00

[OHOS INFO] xts                        2        1.0%           2        1.0%    1.00

[OHOS INFO] 

[OHOS INFO] c overall build overlap rate: 1.00

確實有效果,多了一個xts的subsystem。且在out/tunnel_box/tunnel/libs/目錄下libhctest.a文件。與官方說法一致。


關鍵字:stm32f407  移植 引用地址:在stm32f407上移植openharmony遇到的問題

上一篇:GCC內置的原子操作函數
下一篇:STM32F103串口DMA+空閑中斷+多級緩沖實現不定長接收

小廣播
設計資源 培訓 開發板 精華推薦

最新單片機文章
何立民專欄 單片機及嵌入式寶典

北京航空航天大學教授,20余年來致力于單片機與嵌入式系統推廣工作。

 
EEWorld訂閱號

 
EEWorld服務號

 
汽車開發圈

 
機器人開發圈

電子工程世界版權所有 京ICP證060456號 京ICP備10001474號-1 電信業務審批[2006]字第258號函 京公網安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 清新县| 南宁市| 皋兰县| 郯城县| 绥芬河市| 灌云县| 盱眙县| 喀什市| 渝北区| 建湖县| 遂溪县| 红桥区| 通山县| 融水| 内乡县| 曲水县| 新民市| 那坡县| 克东县| 错那县| 准格尔旗| 合川市| 祁连县| 密山市| 溧水县| 佛冈县| 成都市| 晴隆县| 裕民县| 富锦市| 喀喇沁旗| 固阳县| 如东县| 奈曼旗| 南涧| 林州市| 洪江市| 南宁市| 建阳市| 内乡县| 松江区|