本文來源電子發燒友社區,作者:jf_99374259, 帖子地址:https://bbs.elecfans.com/jishu_2308789_1_1.html
【感芯科技64線程MC3172開發板免費試用體驗】MC3172-CMake魔改為C++工程
在https://bbs.elecfans.com/jishu_2308788_1_1.html帖子中介紹了 Fedora Linux 搭環境的過程,其中使用的 MC3172-CMake 項目是 C 工程,這次改成 C++ 工程
TL; DR
已經把修改后的 cmake 工程發在 github 上了,直接用就行
https://github.com/nihui/MC3172-CMake
修改cmake工程屬性,*.c 改為 *.cpp
按照下圖編輯 MC3172-CMake/CMakeLists.txt,然后重命名源代碼文件后綴名為 cpp


導出符號 thread_start 為 C 接口
此時直接編譯會報錯
[ 50%] Linking CXX executable mc3172-cmake.elf
Memory region Used Size Region Size %age Used
CODE_SPACE: 0 GB 65520 B 0.00%
DATA_SPACE: 0 GB 61248 B 0.00%
/home/nihui/osd/MRS_Toolchain_Linux_x64_V1.50/RISC-V Embedded GCC/bin/../lib/gcc/riscv-none-embed/8.2.0/../../../../riscv-none-embed/bin/ld: warning: cannot find entry symbol thread_start; not setting start address
/home/nihui/osd/MRS_Toolchain_Linux_x64_V1.50/RISC-V Embedded GCC/bin/riscv-none-embed-objcopy: error: the input file '/home/nihui/dev/MC3172-CMake/build/mc3172-cmake.elf' has no sections
make[2]: *** [CMakeFiles/mc3172-cmake.elf.dir/build.make:130:mc3172-cmake.elf] 錯誤 1
原因在于 MC3172-CMake/MC3172/MC3172.lds 中指定 ENTRY 是 thread_start,C++代碼編譯時因為 mangle 原因,符號表中的名字被篡改,因此需要添加 extern "C" 強制用 C 風格導出該函數
按下圖編輯 MC3172-CMake/MC3172/thread_start.cpp

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
發布評論請先 登錄
相關推薦
熱點推薦
有獎丨米爾全志 T153 MINI開發板免費試用來啦
米爾與全志合作發布的新品基于全志T153應用處理器的MYD-YT153MX-MINI開發板免費試用名額來啦~~米爾提供了3套價值399元的MYD-YT153MX-MINI開發板發起
?STM32 Nucleo-64開發板技術解析與應用指南
與ARDUINO^?^ 共享的用戶LED、一個用戶按鈕、一個復位按鈕以及一個32.768kHz晶體振蕩器。NUCLEO-C051C8板為ST-LINK USB VBUS或外部源提供靈活的電源選項以及全面的免費軟件庫。該
dsPIC33CK64MC105 Curiosity Nano評估套件技術解析與應用指南
Technology dsPIC33CK64MC105板安裝有 dsPIC33CK64MC105數字信號微控制器 (DSC)。MPLAB? X IDE為評估板提供支持,并可輕松訪問
【作品合集】中科昊芯Core_DSC280025C開發板測評
。
活動詳情地址:【RISC-V專題】中科昊芯Core_DSC280025C開發板免費試用
作者:川楠【中科昊
發表于 09-18 10:52
基于RK3576處理器,米爾RK3576開發板免費試用
年7月19日 ? 評測數量: 3塊 ? 更多熱點文章閱讀 基于平頭哥TH1520芯片,潤開鴻HH-SCDAYU800A開發板免費試用 RISC-V開發板深度評測!頂級
搭載OpenHarmony操作系統,視美泰SC-3568HA開發板免費試用
: 10塊 ? 更多熱點文章閱讀 基于平頭哥TH1520芯片,潤開鴻HH-SCDAYU800A開發板免費試用 RISC-V開發板深度評測!頂級開發板
基于RK處理器,創龍TL3562-MiniEVM開發板試用體驗
數量: 10塊 ? 更多熱點文章閱讀 基于平頭哥TH1520芯片,潤開鴻HH-SCDAYU800A開發板免費試用 RISC-V開發板深度評測!頂級開
性能強悍!合眾HZ-RK3568開發板試用體驗
月19日 ? 評測數量: 10塊 ? 更多熱點文章閱讀 基于平頭哥TH1520芯片,潤開鴻HH-SCDAYU800A開發板免費試用 RISC-V開發板深度評測!頂級
有獎丨米爾 NXP i.MX91開發板免費試用來啦
米爾與NXP合作發布的新品基于NXPi.MX91應用處理器的MYD-LMX91開發板免費試用名額來啦~~米爾提供了3套價值588元的MYD-LMX91開發板發起
免費丨米爾 STM32MP257開發板有獎試用
米爾與ST合作發布的新品基于STM32MP257應用處理器的MYD-LD25X開發板免費試用活動來啦~~米爾提供了2塊價值488元的MYD-LD25X開發板發起
【感芯科技64線程MC3172開發板免費試用體驗】MC3172-CMake改為C++工程
評論