dbus pc機上開發環境的建立

2021-07-06 06:27:08 字數 1850 閱讀 5396

這幾天開始弄dbus通訊協議,理論知識不多說,網上一大堆,基於dbus開發,首先得搭建dbus開發環境,本人用紅帽和centos搭建的。

tar解壓之後,執行./configure出現錯誤:

後來發現是某個依賴包沒有安裝,利用yum search expat  ,發現:

也就是expat-devel.i686這個依賴包。 

執行:yum install expat-devel.i686 安裝好這個依賴包之後,再次執行./configure,發現成功了,然後make,make install,這個時候,dbus庫就安裝到了pc機了。

yum install *dbus* 這樣就安裝好了庫。

接下來是centos的情況:

搜尋 yum search expat ,安裝yum install expat-devel.x86_64,./configure,make, make install,這樣就把庫安裝好了。

用yum的庫也和紅帽差不多,yum search dbus

挑選出和系統匹配的處理安裝,我的是 x86_64的,所用安裝所用x86_64的yum包。

環境搭建好了之後,編寫好dbus程式,但是會發現很多錯誤,下面以centos為例解決常見錯誤。

錯誤1 

dbus/dbus.h

:no such file or directory

這是dbus庫的標頭檔案位置不對。進入/usr/include/dbus-1.0/dbus,發現dbus.h在此目錄下:

進入/usr/include目錄,

ln -sf 

/usr/include/dbus-1.0/dbus ./dbus 或者cp -rf 

/usr/include/dbus-1.0/dbus /usr/include。

錯誤2 :dbus/dbus-arch-deps.h

:no such file or directory

解決方法 :cp /usr/lib/glib-2.0/include/glibconfig.h /usr/include

錯誤3:

(.text+0xbb6): undefined reference to `dbus_message_iter_get_basic'

..........

(.text+0xbd4): 

undefined reference to `dbus_message_unref'

這是需要連線動態庫

解決方法:

特別注意:紅帽的系統是用

gcc send.c -l dbus-glib-1 -o send

下面是解決#include 錯誤的方法:

ln –sf ./glib-2.0/glib glib 

ln –sf ./glib-2.0/gobject ./gobject

注意,路徑可能不同,以實際的pc機為準

ARM uClinux開發環境的建立

開發環境的建立。先說兩句廢話為和我以前一樣對作業系統 尤其是嵌入式作業系統 迷惑的弟兄解釋些概念。因為總是有人在問是不是一定要用作業系統,我的cpu能不能移植作業系統,可以移植什麼作業系統,有了作業系統可不可以執行某些程式。從我的個人經歷來講,這其實就是許多硬體出身的弟兄對作業系統這個東西有神秘感 ...

Ubuntu開發環境的建立

基本編譯器 sudo apt get install build essential 包含gcc g libc6 dev make 等等,是最基本也是比較全面的工具和庫集合。編譯核心 apt get install libncurses5 dev make menuconfig 命令依賴這一庫。gt...

建立NFS的開發環境

在dm270上建立nfs的開發環境 1 nfs簡介 nfs是network filesystem的縮寫,nfs是由sun開發並發展起來的一項用於在不同機器,不同作業系統之間通過網路互相分享檔案的技術。nfs可以讓你的pc通過網路將遠端的nfs 伺服器共享出來的檔案mount到自己的系統中,在客戶端看...