色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

鴻蒙三方庫適配指南

OpenHarmony技術社區 ? 來源:OST開源開發者 ? 2023-02-14 09:33 ? 次閱讀

本文以 OpenHarmony-3.2-Beta4 上適配 modbus 編譯動態庫為例。

獲取三方庫

使用之前要做好代碼溯源,確認可用的版本,開源許可和發布方式等。

通過正確的路徑獲取源碼,可以是官網,或者指定托管的 github 或者 gitee 倉。

官網:https://libmodbus.org/
github:https://github.com/stephane/libmodbus

移植三方庫

三方庫移植主要需要以下四步。

linux 編譯

編譯三方庫:

如果原三方庫根目錄存在 CMakeLists.txt 文件,新建 build 目錄,通過 cmake 生成 makeflie 然后 make。

如果根目錄存在 autogen.sh 或 configure.ac 文件,使用 Makefile.am 構建,先執行 ./autogen.sh,再執行 ./configure 命令生成 Makefile,最后 make 和 make install。

分析編譯過程:提取編譯動態鏈接庫和測試用的可執行文件所需要的源文件和頭文件、編譯添加的 cflag 和其他編譯器參數,以及編譯需要的鏈接庫。

根據三方庫的編譯有兩種情況:

在 cmake 生成 makefile 的過程中,分析 build.make(生成目標的源文件)、depend.make(需要依賴的其他 C 源文件)、flags.make(cflags 相關標記)、link.txt(鏈接庫相關信息)等得出三方庫對應的依賴關系。

使用 Makefile.am 構建的三方庫,分析 make.am 內容,分析編譯動態鏈接庫和測試用的可執行文件需要的源文件,添加的編譯器參數。鏈接庫則通過分析 makefile 文件提取。

②OpenHarmony 適配

三方庫一般放置在 third_party 目錄下。

編譯之前要增加模塊配置,可以參考以下鏈接:

https://gitee.com/openharmony/docs/blob/master/zh-cn/device-dev/subsystems/subsys-build-module.md#新增并編譯模塊

部件名:modbus_part_name = “libmodbus”

子系統名:modbus_subsystem_name = “modbus”

新增子系統和部件名的方式:

(1)在模塊目錄下配置 BUILD.gn,根據模板類型選擇對應的 gn 模板。

third_party/libmodbus/BUILD.gn
(2)在新建的子系統目錄下每個部件對應的文件夾下創建 bundle.json 文件,定義部件信息。
third_party/libmodbus/bundle.json
(3)修改 build 目錄下的 subsystem_config.json 文件。
buildsubsystem_config.json
e107d7d6-ab9b-11ed-bfe3-dac502259ad0.png (4)在 vendor/{product_company}/{product-name} 目錄下的產品配置如 product-name 是 hispark_taurus_standard 時,在 config.json 中添加對應的部件,直接添加到原有部件后即可。
productdefinecommoninheritrich.json
e126aa94-ab9b-11ed-bfe3-dac502259ad0.png

這幾步適配都需要根據三方庫的引用方式來確定,并不需要每步都配置。如果當前模塊是需要添加到已經有的部件或子系統,就只需要配置 1 和 2 步即可。

③增量編譯

編譯動態鏈接庫和可執行文件:

./build.sh--product-namerk3568--ccache--build-target

注:三方庫名稱 --target-cpu arm64,ohos 到 3.2 版本之后,默認編譯的都是 32 位系統,若要支持 64 位系統,在編譯命令中添加:

–target-cpuarm64

例如:

./build.sh--product-namerk3568--ccache-Tlibmodbus
編譯過程可能出現報錯,根據報錯信息調整 gn。消除編譯警告,例如:
-Wimplicit-function-declaration
改為:
-Wno-implicit-function-declaration

加到 gn的 cflags 信息里面。

編譯成功生成的動態鏈接庫和測試用的可執行文件在 out 目錄下。例如:

out/rk3568/modbus/libmodbus/libmodbus.z.so

e1429b3c-ab9b-11ed-bfe3-dac502259ad0.png

④驗證接口

將編譯好的動態庫和測試用例的可執行文件推送到開發板上。然后驗證是否成功,保證測試用例都能在開發板上運行通過。

API 接口是提供給北向調用的,實現指定的功能,使用者不需要了解其內部具體實現。按照業務需要提供 native 和 js 接口。

引用方式

①靜態庫

在部件中需要使用的 gn 中配置 deps 項,然后在代碼中直接引用接口。

“//third_party/libmodbus:modbus”,
例如: e1564cf4-ab9b-11ed-bfe3-dac502259ad0.png

②動態庫

先編譯動態庫,然后放在板子指定路徑,然后通過 dlopen 導入動態庫,最后在代碼中通過句柄調引用接口。

例如:

if(handle==nullptr){
MMI_HILOGE("Openfailed,soname:%{public}s,msg:%{public}s",pluginPath.data(),dlerror());
returnfalse;
}

審核編輯:湯梓紅
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • MODBUS
    +關注

    關注

    28

    文章

    1950

    瀏覽量

    78654
  • 移植
    +關注

    關注

    1

    文章

    392

    瀏覽量

    28510
  • 編譯
    +關注

    關注

    0

    文章

    674

    瀏覽量

    33602
  • 鴻蒙
    +關注

    關注

    57

    文章

    2469

    瀏覽量

    43642
  • OpenHarmony
    +關注

    關注

    26

    文章

    3804

    瀏覽量

    17864

原文標題:鴻蒙三方庫適配指南

文章出處:【微信號:gh_834c4b3d87fe,微信公眾號:OpenHarmony技術社區】歡迎添加關注!文章轉載請注明出處。

收藏 1人收藏

    評論

    相關推薦

    Get這個秘籍,鴻蒙原生應用頁面滑動絲滑無比

    “OpenHarmony官網”,點擊“開發者”——>“三方中心倉”——>搜索“nodepool”,下載使用。 更多關于“nodepool”的詳細信息和使用指南,請訪問官網鏈接
    發表于 03-06 14:41

    鴻蒙文件傳輸三方上線開源鴻蒙社區 十行代碼實現大文件高速傳輸

    近日,華為在OpenHarmony社區上線了“super_fast_file_trans”文件傳輸三方(以下簡稱“SFFT”)。這一三方的推出,為開發者提供了一套支持大文件多線程并
    發表于 03-06 10:29

    EE-303:將VisualDSP線程安全與第三方RTOS配合使用

    電子發燒友網站提供《EE-303:將VisualDSP線程安全與第三方RTOS配合使用.pdf》資料免費下載
    發表于 01-07 14:09 ?0次下載
    EE-303:將VisualDSP線程安全<b class='flag-5'>庫</b>與第<b class='flag-5'>三方</b>RTOS配合使用

    鴻蒙原生頁面高性能解決方案上線OpenHarmony社區 助力打造高性能原生應用

    NEXT的原生頁面高性能解決方案,從頁面滑動、跳轉及應用冷啟動等關鍵環節,為開發者提供全面的支持。目前,這些解決方案均已上線OpenHarmony開源社區,可在OpenHarmony三方中心倉進行搜索,歡迎開發者多多使用和共建,打造更極致性能的
    發表于 01-02 18:00

    AKI跨語言調用神助攻C/C++代碼遷移至HarmonyOS NEXT

    ,AKI已上線OpenHarmony開源社區,“OpenHarmony三方中心倉網站”搜索“AKI”即可了解體驗。期待更多廠商和開發者下載使用并參與共建,打造更高性能的鴻蒙應用,共同推進鴻蒙
    發表于 01-02 17:08

    鴻蒙Flutter實戰:14-現有Flutter 項目支持鴻蒙 II

    : path: \'../../modules/me\' support: path: \'../../modules/support\' 三方鴻蒙適配 編輯 pubspec.
    發表于 12-26 14:59

    三方檢測機構該如何提升核心競爭力?

    在國家“一帶一路”和“智能制造2025”等政策的引領下,面對競爭日益激烈的國際環境,作為全球最大的制造業國家,中國的檢測行業正經歷著迅猛的發展,成為全球增長最快、潛力最大的市場之一。 第三方檢測逐漸
    的頭像 發表于 12-17 15:44 ?702次閱讀
    第<b class='flag-5'>三方</b>檢測機構該如何提升核心競爭力?

    億緯鋰能與武漢大學、德布勒森大學簽署三方合作諒解備忘錄

    近日,億緯鋰能、武漢大學(以下簡稱“武大”)與匈牙利德布勒森大學(以下簡稱“德大”)在武漢舉行三方合作諒解備忘錄簽署儀式,標志著三方在鋰電池行業對德布勒森可持續發展影響領域的研究合作正式達成,開啟向奔赴合作新篇章。
    的頭像 發表于 11-07 14:46 ?540次閱讀

    鴻蒙Flutter實戰:09-現有Flutter項目支持鴻蒙

    : path: \'../../modules/shop\' home: path: \'../../modules/home\' 配置對特定插件進行鴻蒙適配 部分第三方插件以及插件依賴的其他
    發表于 10-23 16:36

    鴻蒙Flutter實戰:05-使用第三方插件

    使用的第三方插件,其底層以的沒有適配鴻蒙,則需要通過overrider配置其鴻蒙化的替代插件,否則會在運行時報錯。如下面所示: ```y
    發表于 10-22 21:54

    瑞芯微RK3566鴻蒙開發板Android11修改第三方輸入法為默認輸入法

    本文適用于觸覺智能所有支持Android11系統的開發板修改第三方輸入法為默認輸入法。本次使用的是觸覺智能的Purple Pi OH鴻蒙開源主板,搭載了瑞芯微RK3566芯片,類樹莓派設計,是Laval官方社區主薦的一款鴻蒙開發
    的頭像 發表于 09-24 09:43 ?786次閱讀
    瑞芯微RK3566<b class='flag-5'>鴻蒙</b>開發板Android11修改第<b class='flag-5'>三方</b>輸入法為默認輸入法

    維天地低代碼開發平臺助力第三方質檢行業數據可視化

    三方檢驗是由獨立于買賣雙方利益之外的第三方機構(例如專業的監督檢驗機構)執行的,這些機構以公正、公平、權威的非當事人身份,依據雙方共同認可的法律、標準和合同等進行商品的符合性檢驗和認證活動
    的頭像 發表于 08-09 13:59 ?454次閱讀
    <b class='flag-5'>三</b>維天地低代碼開發平臺助力第<b class='flag-5'>三方</b>質檢行業數據可視化

    請問esp8266會開放使用第三方云服務器嗎?

    如題,esp8266會開放使用第三方云服務器嗎,如百度,阿里云服務器?
    發表于 07-12 11:40

    微軟或將開放Xbox主機授權給第三方廠商

    據悉,5 月 26 日,知名媒體 Windows Central 的編輯 Jez Corden 揭露了微軟即將遵循第三方手柄流程,允許在其 XBOX 主機上引入第三方產品。
    的頭像 發表于 05-27 15:18 ?854次閱讀

    蘋果更新配件設計指南,第三方廠商可生產非MFi認證頭顯配件

    值得注意的是,該指南中最關鍵的部分是關于Vision Pro頭戴式設備的頭帶卡扣裝置,它使蘋果原裝頭帶能方便地與頭顯相連。參照蘋果列出的具體規格,第三方制造商可更易生產出同樣尺寸且價格更為親民的頭帶。
    的頭像 發表于 05-20 16:53 ?805次閱讀
    主站蜘蛛池模板: 前后灌满白浆护士 | 国产精品久久大陆 | 米奇在线8888在线精品视频 | 2019精品国产品在线不卡 | 人妻超级精品碰碰在线97视频 | 青青视频 在线 在线播放 | 亚洲人成网站在线观看90影院 | 海角国精产品一区一区三区糖心 | 无码国产色欲XXXX视频 | 扒开校花粉嫩小泬喷潮漫画 | 国产精品夜夜春夜夜爽久久小 | 嫩草影院成人 | 龙泽罗拉av | 韩国羞羞秘密教学子开车漫书 | 欧美丰满白嫩bbxx | 一个人高清在线观看日本免费 | 麻豆精品一卡2卡三卡4卡免费观看 | 日本在线高清不卡免费播放 | 伊人久久精品中文字幕 | 久久久无码精品无码国产人妻丝瓜 | 俄罗斯bbbb| 九色终合九色综合88 | 99国内精品 | 精品国产美女AV久久久久 | 国产中文字幕乱码一区 | 伦理片97影视网 | 成人免费视频在线看 | 国产高清免费视频免费观看 | 国产露脸A片国语露对白 | 看 视频一一级毛片 | 欧美GV肉片视频免费观看 | 日韩毛片大全 | 寻找最美乡村教师颁奖晚会 | 免费撕开胸罩吮胸视频 | 男人的天堂久久精品激情a 男人的天堂黄色片 | 亚洲精品久久7777777 | 俄罗斯18xv在线观看 | 日本一本免费线观看视频 | 青青草久久伊人 | 俄罗斯大肥BBXX | 迅雷成人论坛 |

    電子發燒友

    中國電子工程師最喜歡的網站

    • 2931785位工程師會員交流學習
    • 獲取您個性化的科技前沿技術信息
    • 參加活動獲取豐厚的禮品