通过openpctv简单学习opkg安装与生成包的一些过程
http://linuxtoy.org/archives/openpctv-adding-full-tv-functionality-to-htpc.html
OpenPCTV - 讓你的HTPC擁有更全面的電視功能
通過linuxtoy了解到openPCTV是使用opkg打包的
獲得源代碼:git clone git://git.code.sf.net/p/openpctv/code openpctv-code
下載完后發現原來不是基于buildroot的,而是采用腳本和makefile方式結合實現的自動化編譯,里面可以選擇cubieboard板子來編譯制作rootfs和iso等,粗略查看腳本,比較適合學習。
目前可參考學習opkg的有openembedded, buildroot外,就是openPCTV.
script/installdev 腳本
使用 --offline-root方式安裝,指定rootfs的目標根目錄
先建立 var/lib/opkg/info目錄, 類似archlinux的pacman安裝時需要建立 var/lib/pacman
index文件用于生成 opkg倉庫索引文件,這個跟OE里腳本是一樣
通過 opkg-make-index參數說明即可, 如果Packages不存在可以先touch生成一個
#!/bin/sh . config/options $SCRIPTS/installdev opkg-utils [ "$VERBOSE" = yes ] && V="-v" opkg-make-index $V -l $PKGROOT/Packages.filelist -p $PKGROOT/Packages $PKGROOTpackagedev文件主要是用于生成opkg包
首先調用解析 package目錄下包的一些meta信息,然后通過add_control 生成control文件,最后通過opkg-build -O -o root -g root $INSTALL ?$DEVPKGROOT >&$VERBOSE_OUT
制作目標包文件, -O表示使用 opk后綴,-o, -g使用的是用戶權限, 傳遞給tar壓縮作為參數使用,
在 configs/目錄下有funtions文件,即為通用函數庫,比如像get_meta等的函數即可在里面查看到代碼
build/build.host/toolchain/bin/ 目錄主native的一些工具
opkg-build 通知制作contol, postinstall等文件后,壓縮后即可生成opk, ipk等包文件
具體過程主要是參考debian打包系統,但要比它的更簡潔些
https://code.google.com/p/opkg/source/browse/tags/opkg-0.2.0-rc2/utils/opkg-key ? opkg-key 簽名
http://git.yoctoproject.org/cgit/cgit.cgi/opkg-utils/ yocto項目的一些工具對opkg打包很有幫助
轉載于:https://blog.51cto.com/axlrose/1293640
總結
以上是生活随笔為你收集整理的通过openpctv简单学习opkg安装与生成包的一些过程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SO_REUSEADDR
- 下一篇: cocos2d-x 实现跨平台的目录遍历