2008年12月29日 星期一

gcin-1.4.3.pre12 的 qt3-im and qt4-im makefile

如何編譯 gcin qt3/qt4 的輸入法 module

作業環境:

in ubuntu 8.04。
QT_IM_MODULE=gcin
gcin version: gcin-1.4.3.pre12

原來 qt3 的 input method plugin 是要另外 patch 的。

http://www.puppylinux.org/wiki/multi-lingual-puppy/how-tos-advanced/compiling-qt-and-scim-qt-modules

qt4 則是直接整進去了。

我用了 qmake 來產生 makefile, 減輕我測試不同 qt 版本的問題, 這樣比較容易,
不用自己寫 makfile。

qt3 version qmake


qmake-qt3 qt3-im.pro 產生 Makefile。

qt3-im.pro
TEMPLATE = lib
TARGET = im-gcin
#include(../../qpluginbase.pri)
CONFIG += qt plugin

#QTDIR_build:DESTDIR = $$QT_BUILD_TREE/plugins/inputmethods

HEADERS += qgcininputcontext.h \
qgcininputcontextplugin.h


SOURCES += qgcininputcontextplugin_my.cpp \
qgcininputcontext_x11.cpp


LIBS += -L.. -L../im-client/ -lgcin-im-client -lX11

#target.path += $$[QT_INSTALL_PLUGINS]/inputmethods

# qt3 在 patch 後產生的 inputmethods 目錄
target.path += $$plugins.path/inputmethods


INSTALLS += target

sudo ln -s libim-gcin.so libqgcin.so
需要 rename 成 libqgcin.so (/usr/lib/qt3/plugins/inputmethods)。

konsole (kde 3) 測試可使用 gcin。

qt4 version qmake

qmake-qt4 qt4-im.pro 產生 Makefile。

qt4-im.pro
TEMPLATE = lib
TARGET = im-gcin
#include(../../qpluginbase.pri)
CONFIG += qt plugin

#QTDIR_build:DESTDIR = $$QT_BUILD_TREE/plugins/inputmethods

HEADERS += gcin-common-qt.h \
gcin-imcontext-qt.h \
gcin-qt.h

SOURCES += gcin-imcontext-qt.cpp \
gcin-qt.cpp \
im-gcin-qt.cpp

LIBS += -L.. -L../im-client/ -lgcin-im-client -lX11

target.path += $$[QT_INSTALL_PLUGINS]/inputmethods
INSTALLS += target

konsole (kde 4) 測試可使用 gcin。

我有一些不同的 QT 版本, 這樣一來就方便多了。

沒有留言:

張貼留言

使用 google 的 reCAPTCHA 驗證碼, 總算可以輕鬆留言了。

我實在受不了 spam 了, 又不想讓大家的眼睛花掉, 只好放棄匿名留言。這是沒辦法中的辦法了。留言的朋友需要有 google 帳號。