LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1630|回复: 10

fcitx 2.1.0 编译错误

[复制链接]
发表于 2004-5-21 17:46:24 | 显示全部楼层 |阅读模式
我在下载了北南兄弟提供的fcitx2.1.0源码,在slackware9.1中试图编译。我的Xfree86是4.4.0版,另外fontconfig是2.2.2,freetype是2.1.7。不加任何选项configure && make,结果出错,内容如下:

  1. In file included from ime.c:5:
  2. /usr/X11R6/include/X11/Xft/Xft.h:53: syntax error before "_XftFTlibrary"
  3. cc1: warnings being treated as errors
  4. /usr/X11R6/include/X11/Xft/Xft.h:53: warning: type defaults to `int' in declaration of `_XftFTlibrary'
  5. /usr/X11R6/include/X11/Xft/Xft.h:53: warning: data definition has no type or storage class
  6. /usr/X11R6/include/X11/Xft/Xft.h:87: syntax error before "FT_UInt"
  7. /usr/X11R6/include/X11/Xft/Xft.h:87: warning: no semicolon at end of struct or union
  8. /usr/X11R6/include/X11/Xft/Xft.h:90: syntax error before '}' token
  9. /usr/X11R6/include/X11/Xft/Xft.h:90: warning: type defaults to `int' in declaration of `XftGlyphSpec'
  10. /usr/X11R6/include/X11/Xft/Xft.h:90: warning: data definition has no type or storage class
  11. /usr/X11R6/include/X11/Xft/Xft.h:94: syntax error before "FT_UInt"
  12. /usr/X11R6/include/X11/Xft/Xft.h:94: warning: no semicolon at end of struct or union
  13. /usr/X11R6/include/X11/Xft/Xft.h:97: syntax error before '}' token
  14. /usr/X11R6/include/X11/Xft/Xft.h:97: warning: type defaults to `int' in declaration of `XftGlyphFontSpec'
  15. /usr/X11R6/include/X11/Xft/Xft.h:97: warning: data definition has no type or storage class
  16. /usr/X11R6/include/X11/Xft/Xft.h:191: warning: type defaults to `int' in declaration of `FT_UInt'
  17. /usr/X11R6/include/X11/Xft/Xft.h:191: syntax error before '*' token
  18. /usr/X11R6/include/X11/Xft/Xft.h:257: warning: type defaults to `int' in declaration of `XftGlyphSpec'
  19. /usr/X11R6/include/X11/Xft/Xft.h:257: syntax error before '*' token
  20. /usr/X11R6/include/X11/Xft/Xft.h:263: warning: type defaults to `int' in declaration of `XftGlyphFontSpec'
  21. /usr/X11R6/include/X11/Xft/Xft.h:263: syntax error before '*' token
  22. /usr/X11R6/include/X11/Xft/Xft.h:296: warning: type defaults to `int' in declaration of `FT_UInt'
  23. /usr/X11R6/include/X11/Xft/Xft.h:296: syntax error before '*' token
  24. /usr/X11R6/include/X11/Xft/Xft.h:355: syntax error before "XftLockFace"
  25. /usr/X11R6/include/X11/Xft/Xft.h:355: warning: type defaults to `int' in declaration of `XftLockFace'
  26. /usr/X11R6/include/X11/Xft/Xft.h:355: warning: data definition has no type or storage class
  27. /usr/X11R6/include/X11/Xft/Xft.h:394: warning: type defaults to `int' in declaration of `FT_UInt'
  28. /usr/X11R6/include/X11/Xft/Xft.h:394: syntax error before '*' token
  29. /usr/X11R6/include/X11/Xft/Xft.h:400: warning: type defaults to `int' in declaration of `FT_UInt'
  30. /usr/X11R6/include/X11/Xft/Xft.h:400: syntax error before '*' token
  31. /usr/X11R6/include/X11/Xft/Xft.h:409: syntax error before "FT_UInt"
  32. /usr/X11R6/include/X11/Xft/Xft.h:419: syntax error before "XftCharIndex"
  33. /usr/X11R6/include/X11/Xft/Xft.h:421: warning: type defaults to `int' in declaration of `XftCharIndex'
  34. /usr/X11R6/include/X11/Xft/Xft.h:421: warning: data definition has no type or storage class
  35. /usr/X11R6/include/X11/Xft/Xft.h:462: warning: type defaults to `int' in declaration of `FT_UInt'
  36. /usr/X11R6/include/X11/Xft/Xft.h:462: syntax error before '*' token
  37. /usr/X11R6/include/X11/Xft/Xft.h:473: warning: type defaults to `int' in declaration of `XftGlyphSpec'
  38. /usr/X11R6/include/X11/Xft/Xft.h:473: syntax error before '*' token
  39. /usr/X11R6/include/X11/Xft/Xft.h:494: warning: type defaults to `int' in declaration of `XftGlyphFontSpec'
  40. /usr/X11R6/include/X11/Xft/Xft.h:494: syntax error before '*' token
  41. make[1]: *** [ime.o] 错误 1
  42. make[1]: Leaving directory `/home/yk/src/fcitx-2.1.0/src'
  43. make: *** [all-recursive] 错误 1
复制代码


configure --disable-xft && make 也出错,信息:

  1. ui.o(.text+0x63): In function `InitX':
  2. /home/yk/src/fcitx-2.1.0/src/ui.c:71: undefined reference to `libiconv_open'
  3. xim.o(.text+0x73b): In function `SendHZtoClient':
  4. /home/yk/src/fcitx-2.1.0/src/xim.c:357: undefined reference to `libiconv'
  5. collect2: ld returned 1 exit status
  6. make[1]: *** [fcitx] 错误 1
  7. make[1]: Leaving directory `/home/yk/src/fcitx-2.1.0/src'
  8. make: *** [all-recursive] 错误 1
复制代码


请兄弟看看。
另外,北南自己在slackware里面编译的,在我这里也可以用。发现输入窗口的字体很大,我在config里面改了字体大小,只会影响状态条,不影响输入窗。
多谢兄弟的辛劳。

ps. 本想用站内短信,但内容太多,只好发帖了。
发表于 2004-5-24 08:33:17 | 显示全部楼层
编译错是因为使用了参数-Wall,但我不知道如何在configure里将它去掉。您可以手工修改src/Makefile,将这个参数去掉,然后再make。
字大是因为我将它默认设为24了。应该可以改的啊,我再试试
 楼主| 发表于 2004-5-24 10:34:37 | 显示全部楼层
只是不用-Wall恐怕不行(我还没找到不用的办法 ),因为上面的错误信息中显示有syntax error。我估计还是和新版的xft,fontconfig之类的兼容问题。
发表于 2004-5-24 10:41:04 | 显示全部楼层
默认设为24太大了,第一次吓了我一跳
发表于 2004-5-25 17:12:31 | 显示全部楼层
我的编译倒是无错!不过我的系统是redhat的,安装了fcitx不知为何调用不出来!
 楼主| 发表于 2004-5-26 14:08:23 | 显示全部楼层
编译时xft的问题解决了,办法是安装新版本的freetype时, configure --prefix=/usr/X11R6 ,xft的部分能通过。但是,由于我单独安装了libiconv,出现找不到iconv的错误。应该如何解决?
发表于 2004-5-26 15:56:30 | 显示全部楼层
最初由 windrose 发表
由于我单独安装了libiconv,出现找不到iconv的错误。应该如何解决?


我就是这个问题,所以只好用别人编译的了
发表于 2004-5-26 16:38:11 | 显示全部楼层
这个应该在configure中解决,可惜这部分我是完全不懂,只能请别人帮忙解决了
发表于 2004-5-26 16:44:23 | 显示全部楼层
或是这样行不行?
LDFLAGS=-liconv ./configure
最初由 windrose 发表
编译时xft的问题解决了,办法是安装新版本的freetype时, configure --prefix=/usr/X11R6 ,xft的部分能通过。但是,由于我单独安装了libiconv,出现找不到iconv的错误。应该如何解决?
 楼主| 发表于 2004-5-27 09:11:15 | 显示全部楼层
最初由 Yuking 发表
或是这样行不行?
LDFLAGS=-liconv ./configure


解决了。开心
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表