首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

Linux 下安裝 loudmouth 庫遇到的問題及解決方案

     編輯:關於C語言

參與 XMPP 協議項目,需 C 庫支持。iksemel 過於底層,libstrophe 缺文檔,最終選 loudmouth 1.4.3。記錄踩坑過程。

1. 學習 XMPP

核心 RFC:RFC3920 (XMPP-CORE)、RFC3921 (XMPP-IM)。推薦論文 Extensible Messaging and Presence Protocol (Mikko Laukkanen)。辦公室有 XMPP Server,或用 GTalk 測試。

2. 編譯安裝 loudmouth

標準三部曲:./configure && make && make install。
./configure 報 glib 版本過低。解決:VMware 裝 Ubuntu 9.04,編譯安裝 glib 2.13 到 /usr(./configure --prefix=/usr)。建議:舊系統 glib 升級麻煩,不如重裝新發行版。

3. 調用 loudmouth

自帶 examples 複雜(bash 包裝、自動生成 Makefile)。自寫 test.c:

#include <loudmouth/loudmouth.h>
int main(void) { return 0; }

編譯需指定頭文件與庫路徑(含 glib):

project = test
$(project) : $(project).c
    gcc -o $@ -I/usr/local/include/loudmouth-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -L/usr/local/lib -lloudmouth-1 $<

運行報 libloudmouth-1.so.0: cannot open shared object file,屬 ldconfig 問題:

echo "/usr/local/lib" >> /etc/ld.so.conf
ldconfig

即可運行。

4. 其他

  • 庫自帶 HTML 手冊,較好用。
  • 推薦代碼閱讀工具 Source Insight:除編輯不如 Vim,其他(調用圖、跳轉等)極方便,勝過 vim+ctags+tlist。
  • 後續需移植到 ARM,擔心 glib 再惹麻煩。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved