LinuxSir.cn,穿越时空的Linuxsir!

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

emerge fcitx error[SOLVED]

[复制链接]
发表于 2009-10-5 12:20:24 | 显示全部楼层 |阅读模式
arch=amd64
fcitx 3.6.1 is masked, so I already edited /etc/portage/package.keywords
but when I run
  1. emerge fcitx
复制代码

I got this:
x86_64-pc-linux-gnu-gcc -DPKGDATADIR=\"/usr/share/fcitx\" -I. -I.. -I. -I../lib -I../xpm   -O2 -fno-strength-reduce -march=nocona -mtune=nocona -O2 -pipe   -D_ENABLE_TRAY  -D_ENABLE_LOG  -Wall -MT InputWindow.o -MD -MP -MF .deps/InputWindow.Tpo -c -o InputWindow.o InputWindow.c                                                
In file included from /usr/include/X11/Xft/Xft.h:39,                                                         
                 from TrayWindow.h:6,                                                                        
                 from ime.c:42:                                                                              
/usr/include/ft2build.h:56:38: error: freetype/config/ftheader.h: No such file or directory                  
In file included from TrayWindow.h:6,                                                                        
                 from ime.c:42:                                                                              
/usr/include/X11/Xft/Xft.h:40:10: error: #include expects "FILENAME" or <FILENAME>                           
In file included from TrayWindow.h:6,                                                                        
                 from ime.c:42:                                                                              
/usr/include/X11/Xft/Xft.h:60: error: expected '=', ',', ';', 'asm' or '__attribute__' before '_XftFTlibrary'
/usr/include/X11/Xft/Xft.h:94: error: expected specifier-qualifier-list before 'FT_UInt'                     
/usr/include/X11/Xft/Xft.h:101: error: expected specifier-qualifier-list before 'FT_UInt'                    
/usr/include/X11/Xft/Xft.h:198: error: expected ';', ',' or ')' before '*' token                             
/usr/include/X11/Xft/Xft.h:303: error: expected ';', ',' or ')' before '*' token                             
/usr/include/X11/Xft/Xft.h:362: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'XftLockFace'
/usr/include/X11/Xft/Xft.h:401: error: expected ';', ',' or ')' before '*' token                             
/usr/include/X11/Xft/Xft.h:407: error: expected ';', ',' or ')' before '*' token                             
/usr/include/X11/Xft/Xft.h:416: error: expected declaration specifiers or '...' before 'FT_UInt'            
/usr/include/X11/Xft/Xft.h:417: error: expected declaration specifiers or '...' before 'FT_UInt'            
/usr/include/X11/Xft/Xft.h:426: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'XftCharIndex'
/usr/include/X11/Xft/Xft.h:459: error: expected ';', ',' or ')' before '*' token                             
make[2]: *** [ime.o] Error 1                                                                                 
make[2]: *** Waiting for unfinished jobs....                                                                 
mv -f .deps/InputWindow.Tpo .deps/InputWindow.Po                                                            
mv -f .deps/IC.Tpo .deps/IC.Po                                                                              
make[2]: Leaving directory `/var/tmp/portage/app-i18n/fcitx-3.6.1/work/fcitx-3.6.1/src'                     
make[1]: *** [all-recursive] Error 1                                                                        
make[1]: Leaving directory `/var/tmp/portage/app-i18n/fcitx-3.6.1/work/fcitx-3.6.1'                          
make: *** [all] Error 2                                                                                      
*                                                                                                           
* ERROR: app-i18n/fcitx-3.6.1 failed.
* Call stack:
*               ebuild.sh, line   49:  Called src_compile
*             environment, line  176:  Called die
* The specific snippet of code:
*       emake || die "make failed"
*  The die message:
*   make failed
*
* If you need support, post the topmost build error, and the call stack if relevant.
* A complete build log is located at '/var/tmp/portage/app-i18n/fcitx-3.6.1/temp/build.log'.
* The ebuild environment file is located at '/var/tmp/portage/app-i18n/fcitx-3.6.1/temp/environment'.
*

>>> Failed to emerge app-i18n/fcitx-3.6.1, Log file:

>>>  '/var/tmp/portage/app-i18n/fcitx-3.6.1/temp/build.log'

* Messages for package app-i18n/fcitx-3.6.1:

*
* ERROR: app-i18n/fcitx-3.6.1 failed.
* Call stack:
*               ebuild.sh, line   49:  Called src_compile
*             environment, line  176:  Called die
* The specific snippet of code:
*       emake || die "make failed"
*  The die message:
*   make failed
*
* If you need support, post the topmost build error, and the call stack if relevant.
* A complete build log is located at '/var/tmp/portage/app-i18n/fcitx-3.6.1/temp/build.log'.
* The ebuild environment file is located at '/var/tmp/portage/app-i18n/fcitx-3.6.1/temp/environment'.
*

what's wrong?

看了一下 ebuild ,需要添加 USE 才能启用 xft ,禁用 xft 时编译会出错。
  1. USE='xft' emerge fcitx
复制代码
OK
发表于 2009-10-5 12:26:42 | 显示全部楼层
屏蔽版本本來就是沒有確保可以基本安裝……這個你去找作者提交Bug可能更有效率。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-10-5 14:04:53 | 显示全部楼层
It seems like something wrong with fcitx-3.6.1.ebuild  
in build.log default configure like this:
  1. ./configure --prefix=/usr --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --libdir=/usr/lib64 [b]--disable-xft[/b]
复制代码
I delete the --disable-xft and it works:
  1. ./configure --prefix=/usr --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --libdir=/usr/lib64
复制代码
回复 支持 反对

使用道具 举报

发表于 2009-10-5 16:00:39 | 显示全部楼层
也许你应该在USE里添加xft
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

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