LinuxSir.cn,穿越时空的Linuxsir!

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

关于stardict安装

[复制链接]
发表于 2006-5-27 03:04:20 | 显示全部楼层 |阅读模式
有哪个仁兄在slackware/KDE下载成功了stardict
好像对KDE支持不太好.
郁闷了,,跟gimp一样,gnome支持非常好.而kde下安装就麻烦了      
请在KDE下安装startdict留下你的下载地址和字典下载地址,还有安装步骤/tp

真是晕了.....搞了一夜上没搞好.......都3点多了....先睡吧.
发表于 2006-5-27 08:46:19 | 显示全部楼层

我的编译脚本

stardict-2.4.7.tar.bz2 和 stardict.SlackBuild 放在同一个目录里:
  1. [hzg@PSI:stardict]$ pwd
  2. /home/hzg/misc/stardict
  3. [hzg@PSI:stardict]$ ls -lh
  4. total 82M
  5. -rw-r--r--  1 hzg users  81M 2006-05-20 03:01 WyabdcRealPeopleTTS.tar.bz2
  6. drwxr-xr-x  2 hzg users 1.5K 2006-05-24 22:14 dic/
  7. -rw-r--r--  1 hzg users  906 2006-05-21 18:16 err_x86_64.log
  8. -rw-r--r--  1 hzg users 1.1M 2006-05-19 22:23 stardict-2.4.7.tar.bz2
  9. -rw-r--r--  1 hzg users 1.3K 2006-05-22 13:33 stardict.SlackBuild
  10. drwxr-xr-x  2 hzg users  112 2006-05-21 16:51 treedic/
  11. [hzg@PSI:stardict]$ ls -lh dic
  12. total 126M
  13. -rw-r--r--  1 hzg users  591 2006-05-22 13:36 dic.SlackBuild
  14. -rw-r--r--  1 hzg users  13M 2006-05-20 01:20 stardict-21shijishuangxiangcidian-2.4.2.tar.bz2
  15. -rw-r--r--  1 hzg users  14M 2006-05-20 01:19 stardict-21shijishuangyukejicidian-2.4.2.tar.bz2
  16. -rw-r--r--  1 hzg users 8.3M 2006-05-19 23:54 stardict-ProECCE-2.4.2.tar.bz2
  17. -rw-r--r--  1 hzg users 312K 2006-05-21 16:30 stardict-bcgm-2.4.2.tar.bz2
  18. -rw-r--r--  1 hzg users 4.3M 2006-05-21 16:48 stardict-cdict-gb-2.4.2.tar.bz2
  19. -rw-r--r--  1 hzg users 708K 2006-05-21 16:11 stardict-cedict-gb-2.4.2.tar.bz2
  20. -rw-r--r--  1 hzg users 6.1M 2006-05-20 00:22 stardict-gaojihanyudacidian-2.4.2.tar.bz2
  21. -rw-r--r--  1 hzg users 1.5M 2006-05-19 23:42 stardict-guojibiaozhunhanzidacidian-2.4.2.tar.bz2
  22. -rw-r--r--  1 hzg users 2.0M 2006-05-20 00:03 stardict-hanyuchengyucidian-2.4.2.tar.bz2
  23. -rw-r--r--  1 hzg users 424K 2006-05-19 22:59 stardict-hanzim-2.4.2.tar.bz2
  24. -rw-r--r--  1 hzg users  67K 2006-05-20 01:20 stardict-kdic-computer-gb-2.4.2.tar.bz2
  25. -rw-r--r--  1 hzg users 2.3M 2006-05-20 01:29 stardict-kdic-ec-11w-2.4.2.tar.bz2
  26. -rw-r--r--  1 hzg users 7.1M 2006-05-21 17:42 stardict-langdao-ce-gb-2.4.2.tar.bz2
  27. -rw-r--r--  1 hzg users 8.4M 2006-05-21 17:44 stardict-langdao-ec-gb-2.4.2.tar.bz2
  28. -rw-r--r--  1 hzg users 1.7M 2006-05-19 22:29 stardict-lazyworm-ce-2.4.2.tar.bz2
  29. -rw-r--r--  1 hzg users 9.5M 2006-05-19 23:45 stardict-lazyworm-ec-2.4.2.tar.bz2
  30. -rw-r--r--  1 hzg users 9.2M 2006-05-20 02:00 stardict-ncce-ce-2.4.2.tar.bz2
  31. -rw-r--r--  1 hzg users 9.2M 2006-05-20 01:11 stardict-ncce-ec-2.4.2.tar.bz2
  32. -rw-r--r--  1 hzg users 7.4M 2006-05-21 16:56 stardict-oxford-gb-2.4.2.tar.bz2
  33. -rw-r--r--  1 hzg users 3.6M 2006-05-19 22:54 stardict-oxfordjm-ec-2.4.2.tar.bz2
  34. -rw-r--r--  1 hzg users 9.5M 2006-05-20 00:59 stardict-quick_eng-zh_CN-2.4.2.tar.bz2
  35. -rw-r--r--  1 hzg users 2.4M 2006-05-21 16:24 stardict-xdict-ce-gb-2.4.2.tar.bz2
  36. -rw-r--r--  1 hzg users 3.5M 2006-05-21 16:25 stardict-xdict-ec-gb-2.4.2.tar.bz2
  37. -rw-r--r--  1 hzg users 3.2M 2006-05-20 00:08 stardict-xiandaihanyucidian-2.4.2.tar.bz2
  38. -rw-r--r--  1 hzg users 325K 2006-05-20 01:25 stardict-zigenzidian-2.4.2.tar.bz2
  39. [hzg@PSI:stardict]$
复制代码

stardict 的编译脚本:stardict-2.4.7 在 32 位系统上没问题,在 slamd64 上有问题。
注意:这个脚本没有任何检测错误的部分。如果某一步没有成功,它也会继续下去,并打一个安装包出来,这个包显然是不能用的。
  1. [hzg@PSI:stardict]$ cat stardict.SlackBuild
  2. #!/bin/sh
  3. # Set initial variables:
  4. NAME=stardict
  5. CWD=`pwd`
  6. if [ "$TMP" = "" ]; then
  7.         TMP=/tmp
  8. fi
  9. PKG=$TMP/package-$NAME
  10. rm -rf $PKG
  11. mkdir -p $PKG

  12. VERSION=2.4.7
  13. ARCH=${ARCH:-i686}
  14. BUILD=1

  15. if [ "$ARCH" = "x86_64" ]; then
  16.         SLKCFLAGS="-O2"
  17.         LIB=lib64
  18. elif [ "$ARCH" = "i686" ]; then
  19.         SLKCFLAGS="-O2"
  20.         LIB=lib
  21. fi

  22. cd $TMP
  23. rm -rf $NAME-$VERSION
  24. tar jxvf $CWD/$NAME-$VERSION.tar.bz2
  25. cd $NAME-$VERSION
  26. chown -R root:root .

  27. export PKG_CONFIG=`which pkg-config`
  28. CFLAGS="$SLKCFLAGS" \
  29. CXXFLAGS="$SLKCFLAGS" \
  30. ./configure \
  31.   --prefix=/usr/local \
  32.   --disable-gnome-support \
  33.   --libdir=/usr/local/$LIB
  34. make -j3
  35. make install DESTDIR=$PKG
  36. ( cd $PKG
  37.   find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
  38.   find . | xargs file | grep "shard object" | grep ELF | cut -f 1 -d : | xargs strip -strip-unneeded 2> /dev/null
  39. )
  40. chmod 755 $PKG/usr/local/bin/*
  41. gzip -9 $PKG/usr/local/man/man?/*

  42. mkdir -p $PKG/usr/local/share/stardict/dic
  43. mkdir -p $PKG/usr/local/share/stardict/treedict

  44. # Package description:
  45. mkdir -p $PKG/install
  46. cat $CWD/slack-desc > $PKG/install/slack-desc

  47. # Build the package:
  48. cd $PKG
  49. makepkg -l y -c n $TMP/$NAME-$VERSION-$ARCH-$BUILD.tgz

  50. # Clean up the package:
  51. if [ "$1" = "--cleanup" ]; then
  52.         rm -rf $TMP/$NAME-$VERSION
  53.         rm -rf $PKG
  54. fi

  55. [hzg@PSI:stardict]$  
复制代码

一个一个解压字典可能比较麻烦,也弄一个脚本,以后就方便了...
  1. [hzg@PSI:stardict]$ cat dic/dic.SlackBuild
  2. #!/bin/sh
  3. # Set initial variables:
  4. NAME=stardict-dic
  5. CWD=`pwd`
  6. if [ "$TMP" = "" ]; then
  7.         TMP=/tmp
  8. fi
  9. PKG=$TMP/package-$NAME
  10. rm -rf $PKG
  11. mkdir -p $PKG

  12. VERSION=2.4.2
  13. ARCH=noarch
  14. BUILD=1

  15. mkdir -p $PKG/usr/local/share/stardict/dic
  16. cd $PKG/usr/local/share/stardict/dic
  17. for DIC in $CWD/*.bz2; do
  18.         tar jxvf $DIC
  19. done

  20. # Package description:
  21. mkdir -p $PKG/install
  22. cat $CWD/slack-desc > $PKG/install/slack-desc

  23. # Build the package:
  24. cd $PKG
  25. makepkg -l y -c n $TMP/$NAME-$VERSION-$ARCH-$BUILD.tgz

  26. # Clean up the package:
  27. if [ "$1" = "--cleanup" ]; then
  28.         rm -rf $TMP/$NAME-$VERSION
  29.         rm -rf $PKG
  30. fi

  31. [hzg@PSI:stardict]$
复制代码


附:x86_64 下编译时的错误提示,有碰到这个问题的朋友不吝赐教...
  1. [hzg@PSI:stardict]$ cat err_x86_64.log
  2. if g++ -DHAVE_CONFIG_H -I. -I. -I.. -Wall -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_API -I/usr/include/gtk-2.0 -I/usr/lib64/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include   -DDATADIR=""/usr/local/share"" -DGNOME_ICONDIR=""/usr/local/share/pixmaps"" -DSTARDICT_LOCALEDIR=""/usr/local/share/locale"" -DSTARDICT_DATA_DIR=""/usr/local/share/stardict""                 -I/usr/X11R6/include  -O2 -MT pangoview.o -MD -MP -MF ".deps/pangoview.Tpo" -c -o pangoview.o pangoview.cpp; \
  3. then mv -f ".deps/pangoview.Tpo" ".deps/pangoview.Po"; else rm -f ".deps/pangoview.Tpo"; exit 1; fi

  4. lib.cpp: In member function `const gchar* offset_index::read_first_on_page_key(glong)':
  5. lib.cpp:509: error: no matching function for call to `min(long unsigned int, guint32&)'

  6. [hzg@PSI:stardict]$
复制代码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-5-27 13:44:51 | 显示全部楼层
太感谢了!~
回复 支持 反对

使用道具 举报

发表于 2008-6-23 10:38:47 | 显示全部楼层
sudo make
口令:
make  all-recursive
make[1]: Entering directory `/home/jack/downLoad/sdcv-0.4.2'
Making all in m4
make[2]: Entering directory `/home/jack/downLoad/sdcv-0.4.2/m4'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/home/jack/downLoad/sdcv-0.4.2/m4'
Making all in src
make[2]: Entering directory `/home/jack/downLoad/sdcv-0.4.2/src'
Making all in lib
make[3]: Entering directory `/home/jack/downLoad/sdcv-0.4.2/src/lib'
if g++ -DHAVE_CONFIG_H -I. -I. -I../.. -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include      -g -O2 -MT lib.o -MD -MP -MF ".deps/lib.Tpo" -c -o lib.o lib.cpp; \
        then mv -f ".deps/lib.Tpo" ".deps/lib.Po"; else rm -f ".deps/lib.Tpo"; exit 1; fi
lib.cpp: In member function 'const gchar* offset_index::read_first_on_page_key(glong)':
lib.cpp:516: error: no matching function for call to 'min(long unsigned int, guint32&)'
make[3]: *** [lib.o] 错误 1
make[3]: Leaving directory `/home/jack/downLoad/sdcv-0.4.2/src/lib'
make[2]: *** [all-recursive] 错误 1
make[2]: Leaving directory `/home/jack/downLoad/sdcv-0.4.2/src'
make[1]: *** [all-recursive] 错误 1
make[1]: Leaving directory `/home/jack/downLoad/sdcv-0.4.2'
make: *** [all] 错误 2
jack@jack:~/downLoad/sdcv-0.4.2>
我也碰到了这个问题,不知道该怎么解决--!
回复 支持 反对

使用道具 举报

发表于 2008-6-24 13:07:29 | 显示全部楼层
翻前面的贴子,有直接的tgz包
回复 支持 反对

使用道具 举报

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

本版积分规则

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