在 OBS 上編譯新版 gcin
最後出現這些錯誤訊息
這些 .so 模組可以變更安裝的位置嗎?
謝謝
gcin.i586: W: binary-or-shlib-calls-gethostbyname /usr/bin/gcin The binary calls gethostbyname(). Please port the code to use getaddrinfo(). gcin-anthy-module.i586: E: arch-dependent-file-in-usr-share (Badness: 590) /usr/share/gcin/table/anthy-module.so gcin.i586: E: arch-dependent-file-in-usr-share (Badness: 590) /usr/share/gcin/table/chewing-module.so This package installs an ELF binary in the /usr/share hierarchy, which is reserved for architecture-independent files.
|
|
GCIN_MODULE+=anthy-module.so
加上
GCIN_MODULE+=chewing-module.so
等於
anthy-module.sochewing-module.so
好像會讓兩個都要編譯時時都不能編譯
還是現在仍有不能同時編譯的限制?
謝謝版主,麻煩您了
|
確定可以兩個都 compile,我用 gmake 3.81
少了 install 的部份
$(MAKE) -C modules install
在 pre13 中修正
edited: 3
|
|
謝謝老大,已經編譯出來了
最後一個問題請教
anthy-module.so 和 chewing-module.so 是不是 32位元only的程式?
要加什麼參數編譯或做什麼處理才能支援64位元系統
還是只能依現狀加裝32bit的 libanthy 和 libchewing?
謝謝
|
在 x64 linux gcc 內定應該是 compile 成 64-bit。在 32-bit linux 可能可以 -m64 compile 64-bit,可能還要 install 64-bit library,沒試過。
|
swyear | anthy-module.so 和 chewing-module.so 是不是 32位元only的程式?
要加什麼參數編譯或做什麼處理才能支援64位元系統
還是只能依現狀加裝32bit的 libanthy 和 libchewing? |
應該是因為沒有 make clean 導致安裝到 tarball prebuild 的 so binary。
請參考 http://hyperrate.com/thread.php?tid=23838
|
謝謝您的建議,patch 可以套用,但是編譯出來仍是 32位元的
(我是看最後rpm自動檢查Requires和Provides
如果是64位元應該要 Requires: libchewing.so.3()(64-bit)
而非 libchewing.so.3)
試著先將 modules/*.so 刪除,編譯會停在
if [ Y = 'Y' ]; then gmake -C modules; fi gmake[1]: Entering directory `/usr/src/packages/BUILD/gcin-1.6.4.pre13/modules' gcc -shared -o anthy-module.so anthy.pico -pthread -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lm -lcairo -lpng14 -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lrt -lglib-2.0 -lX11 -ldl -lanthy /usr/lib64/gcc/x86_64-suse-linux/4.5/../../../../x86_64-suse-linux/bin/ld: i386 architecture of input file `anthy.pico' is incompatible with i386:x86-64 output anthy.pico: In function `module_flush_input': /home/dhliu/gcin/modules/anthy.cpp:807: undefined reference to `hide_selections_win' anthy.pico: In function `module_feedkey': /home/dhliu/gcin/modules/anthy.cpp:861: undefined reference to `current_time' anthy.pico: In function `module_init_win': /home/dhliu/gcin/modules/anthy.cpp:1147: undefined reference to `__gcin_dbg_' anthy.pico: In function `module_change_font_size': /home/dhliu/gcin/modules/anthy.cpp:1246: undefined reference to `__gcin_dbg_' /home/dhliu/gcin/modules/anthy.cpp:1255: undefined reference to `set_label_font_size' anthy.pico: In function `module_feedkey_release': /home/dhliu/gcin/modules/anthy.cpp:1298: undefined reference to `current_time' collect2: ld returned 1 exit status gmake[1]: *** [anthy-module.so] Error 1 gmake[1]: Leaving directory `/usr/src/packages/BUILD/gcin-1.6.4.pre13/modules' make: *** [all] Error 2 error: Bad exit status from /var/tmp/rpm-tmp.9aRzTA (%build)
請大家幫忙看看
謝謝
|
swyear | /usr/lib64/gcc/x86_64-suse-linux/4.5/../../../../x86_64-suse-linux/bin/ld: i386 architecture of input file `anthy.pico' is incompatible with i386:x86-64 output
|
anthy.pico 有沒有刪除?
|
謝謝
刪除 modules/*.pico 後可以編譯了
但是在 firefox 使用時必當...
不知道有沒有人有較好的使用經驗分享
|
|