dpkg是Debian Linux的套件管理程式,因為管理效果良好,已由許多的Linux移植後用來管理軟體套件,如Ubuntu的apt及Fedora的yum。
但是我使用的Slackware,還未建立豐的套件伺服器,以致於使用特殊軟體時,仍需下載source自行安裝,近日,學習單晶片程式開發時,嘗試在Slackware下建立完整的開發環境如下:
1.小型設備如單晶片及手機等軔體開發用c語言編譯器:SDCC
2.單晶片8051的組合語言編譯器:ASEM-51
3.單晶片整合開發環境套件:MCU8051IDE
可惜的是,MCU8051IDE軟體原始碼下載後,仍需使用dpkg安裝,所以只好先從slackbuikd網站下載dpkg原始碼執行安裝動作,並將MCU8051IDE運行所需相依套件安裝完畢,完成後使用強制模式(dpkg -i --force-depends)測試一番,還是不行,殘念呀!查了查原來是dpkg找不到status及available兩個套件資訊檔,只好先建立兩個空檔案欺騙系統,如下:
touch /var/dpkg/status
touch /var/dpkg/available
接下來重來一遍,總算繼續執行安裝動作了,但天不從人願,安裝完後dpkg照例會執行update-rc.d更新系統,但在Slackware下從未聽過update-rc.d,只好想辦法再騙騙系統囉!如下:
cp /bin/false /tmp
cd /tmp
ln -s false update-rc.d
export PATH=$PATH:/tmp
接下來,重新執行一次,順利過關!完成,順利將MCU8051IDE跑去來,有圖有真像,如下: