Bug 188684 - app-dicts/stardict-3.0.1 version bump
|
Bug#:
188684
|
Product: Gentoo Linux
|
Version: unspecified
|
Platform: All
|
|
OS/Version: Linux
|
Status: RESOLVED
|
Severity: enhancement
|
Priority: P2
|
|
Resolution: FIXED
|
Assigned To: cjk@gentoo.org
|
Reported By: jjmmma@gmail.com
|
|
Component: Ebuilds
|
|
|
URL:
|
|
Summary: app-dicts/stardict-3.0.1 version bump
|
|
Keywords:
|
|
Status Whiteboard:
|
|
Opened: 2007-08-13 07:13 0000
|
Hi,
I find a new version of StarDict 3.0.0 released on 2007-08-12
jjmmma
Reproducible: Always
Portage 2.1.3.5 (default-linux/x86/2007.0, gcc-4.2.0, glibc-2.6.1-r0,
2.6.21-gentoo i686)
=================================================================
System uname: 2.6.21-gentoo i686 Intel(R) Pentium(R) D CPU 3.00GHz
Gentoo Base System release 1.12.10
Timestamp of tree: Mon, 13 Aug 2007 06:00:01 +0000
dev-java/java-config: 1.3.7, 2.0.33-r1
dev-lang/python: 2.4.4-r4
dev-python/pycrypto: 2.0.1-r6
sys-apps/sandbox: 1.2.18.1
sys-devel/autoconf: 2.13, 2.61-r1
sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils: 2.17-r1
sys-devel/gcc-config: 1.3.16
sys-devel/libtool: 1.5.24
virtual/os-headers: 2.6.22-r2
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=prescott -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config
/usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/revdep-rebuild
/etc/terminfo /etc/texmf/web2c"
CXXFLAGS="-O2 -march=prescott -pipe -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="distlocks metadata-transfer sandbox sfperms strict unmerge-orphans
userfetch"
GENTOO_MIRRORS="http://distfiles.gentoo.org
http://distro.ibiblio.org/pub/linux/distributions/gentoo"
LC_ALL="en_US.UTF-8"
LINGUAS="zh_CN en ko"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress
--force --whole-file --delete --delete-after --stats --timeout=180
--exclude=/distfiles --exclude=/local --exclude=/packages
--filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local/layman/gentoo-china /usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X acl aiglx alsa berkdb bitmap-fonts cdr cjk cli cracklib crypt dri esd
fortran gdbm gnome gpm gtk gtk2 iconv isdnlog jpeg midi mmx mudflap ncurses nls
nptl nptlonly openmp oss pam pcre perl pppd python readline reflection session
spl sse sse2 ssl tcpd truetype-fonts type1-fonts unicode x86 xorg zlib"
ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1
emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m
maestro3 trident usb-audio via82xx via82xx-modem ymfpci"
ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file
hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route
share shm softvol" CAMERAS="samsung" ELIBC="glibc" INPUT_DEVICES="keyboard
mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216
lcdm001 mtxorb ncurses text" LINGUAS="zh_CN en ko" USERLAND="GNU"
VIDEO_CARDS="i810"
Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LDFLAGS,
PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Created an attachment (id=127952) [details]
stardict-3.0.0.ebuild
I have added several use flags to this ebuild and several missing dependencies.
Previous ebuild didn't make it through configure stage at my machine. My
configures ok, but compilation fails with:
prefsdlg.cpp: In member function ‘void
PrefsDlg::setup_dictionary_sound_page()’:
prefsdlg.cpp:738: error: ‘label’ was not declared in this scope
prefsdlg.cpp:751: error: redeclaration of ‘GtkWidget* label’
prefsdlg.cpp:738: error: ‘<typeprefixerror>label’ previously declared here
The ebuild I've uploaded is already in gentoo-china overlay.
You can try it, just run the following:
layman -a gentoo-china
emerge -av stardict
(In reply to comment #9)
> The ebuild I've uploaded is already in gentoo-china overlay.
> You can try it, just run the following:
> layman -a gentoo-china
> emerge -av stardict
>
Just tried it, but without success. Here's the error:
-----------------------------------------------------------------------
* Failed Running autoconf !
*
* Include in your bugreport the contents of:
*
* /var/tmp/portage/app-dicts/stardict-3.0.0/temp/autoconf-5439.out
!!! ERROR: app-dicts/stardict-3.0.0 failed.
Call stack:
ebuild.sh, line 1632: Called dyn_unpack
ebuild.sh, line 763: Called qa_call 'src_unpack'
ebuild.sh, line 44: Called src_unpack
stardict-3.0.0.ebuild, line 45: Called eautoreconf
autotools.eclass, line 95: Called eautoconf
autotools.eclass, line 165: Called autotools_run_tool 'autoconf'
autotools.eclass, line 218: Called die
!!! Failed Running autoconf !
!!! 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-dicts/stardict-3.0.0/temp/build.log'.
!!! This ebuild is from an overlay: '/usr/portage/local/layman/gentoo-china'
-----------------------------------------------------------------------
and here's the contents of
/var/tmp/portage/app-dicts/stardict-3.0.0/temp/autoconf-5439.out :
-----------------------------------------------------------------------
***** autoconf *****
configure.in:217: error: possibly undefined macro: AM_GCONF_SOURCE_2
If this token and others are legitimate, please use m4_pattern_allow.
See the Autoconf documentation.
-----------------------------------------------------------------------
Tell me if you need any other information about my setup (emerge --info, list
of packages, etc.)
(In reply to comment #10)
> Tell me if you need any other information about my setup (emerge --info, list
> of packages, etc.)
emerge --info, please
(In reply to comment #10)
> configure.in:217: error: possibly undefined macro: AM_GCONF_SOURCE_2
> If this token and others are legitimate, please use m4_pattern_allow.
> See the Autoconf documentation.
>
I found the cause.
It is because you don't have gconf, and thus don't have gconf-2.m4.
And you have disabled gnome support.
But aclocal required gconf-2.m4 to produce a correct aclocal.m4 to be used by
autoconf.
The solution is to place a gconf-2.m4 under m4 dir.
A patch and new ebuild is coming.
I build it failed. my buildlog below:
x86_64-pc-linux-gnu-g++ -shared -nostdlib
/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/../../../../lib64/crti.o
/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/crtbeginS.o .libs/stardict_festival.o
-L/usr/lib64 /usr/lib64/libSM.so /usr/lib64/libICE.so -lFestival -lestools
-lestbase -leststring /usr/lib64/libX11.so
-L/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2
-L/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/../../../../lib64 -L/lib/../lib64
-L/usr/lib/../lib64
-L/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/../../../../x86_64-pc-linux-gnu/lib
-L/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/../../.. -lstdc++ -lm -lc -lgcc_s
/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/crtendS.o
/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/../../../../lib64/crtn.o
-Wl,--version-script=stardict_festival.v -Wl,-soname -Wl,stardict_festival.so
-o .libs/stardict_festival.so
/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/../../../../x86_64-pc-linux-gnu/bin/ld:
/usr/lib64/libFestival.a(festival.o): relocation R_X86_64_32 against `a local
symbol' can not be used when making a shared object; recompile with -fPIC
/usr/lib64/libFestival.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
make[3]: *** [stardict_festival.la] Error 1
make[3]: Leaving directory
`/var/tmp/portage/app-dicts/stardict-3.0.0/work/stardict-3.0.0/stardict-plugins/stardict-festival-tts-plugin'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory
`/var/tmp/portage/app-dicts/stardict-3.0.0/work/stardict-3.0.0/stardict-plugins'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory
`/var/tmp/portage/app-dicts/stardict-3.0.0/work/stardict-3.0.0'
make: *** [all] Error 2
!!! ERROR: app-dicts/stardict-3.0.0 failed.
Call stack:
ebuild.sh, line 1632: Called dyn_compile
ebuild.sh, line 983: Called qa_call 'src_compile'
ebuild.sh, line 44: Called src_compile
stardict-3.0.0.ebuild, line 55: Called gnome2_src_compile
gnome2.eclass, line 71: Called die
!!! compile failure
!!! 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-dicts/stardict-3.0.0/temp/build.log'.
I replaced the festival in the gentoo-china overlay with the newly added
festival-1.96_beta. Then the emerge of stardict success. But when I run it. It
display:
Gucharmap插件加载成功。
更新信息插件加载成功。
HTML数据解析插件加载成功。
Then crashed.
Thank you Zhang for new ebuild and investigation of problems. Just a few
notes...
Please quote ${S} and ${FILESDIR}. Recent repoman should warn you about that.
Also there is trailing space.
Also it's worth to add elog with information about changes in plugins.
Something like:
'Note: plugins are not built any more. For additional information, please, see:
http://r0bertz.blogspot.com/2007/11/myths-about-stardict-301s-text-to.html
If you wish to enable speak engine, please, enable 'Use TTS program.' at
Preferences -> Sound and fill in Commandline with "echo %s | festival --tts"
or "espeak %s" depending on engine you wish. You can do the same from command
line, e.g. for festival run:
gconftool-2 --type string --set
/apps/stardict/preferences/dictionary/tts_program_cmdline "echo %s | festival
--tts"
gconftool-2 --type boolean --set
/apps/stardict/preferences/dictionary/use_tts_program 1
'
BTW, how do you enable/disable plugin at run time? I wanted to reproduce you
crash but failed to find out how... In any case IMO it's worth to report crash
upstream.
And last note. I do not think that plugins are dispensable. Do not have real
numbers but I'm sure that they should work with less delay (they are already
loaded and at least time to link external program is avoided). On my system I
very often run cpu consuming programs and large delay to pronounce words could
become very large on busy system. Another argument is that this is upstream
desision to provide both mechanisms: plugins and external program and in
gentoo we ordinary follow upstream desisions. That said, I think in this
version of stardict it's better to keep things as they are in your ebuild
until bug is fixed:
https://sourceforge.net/tracker/index.php?func=detail&aid=1830330&group_id=80679&atid=560632
But may be next version could have plugins enabled again.
Thank you again for your work.
(In reply to comment #20)
> Thank you Zhang for new ebuild and investigation of problems. Just a few
> notes...
>
> Please quote ${S} and ${FILESDIR}. Recent repoman should warn you about that.
> Also there is trailing space.
>
> Also it's worth to add elog with information about changes in plugins.
> Something like:
>
> 'Note: plugins are not built any more. For additional information, please, see:
> http://r0bertz.blogspot.com/2007/11/myths-about-stardict-301s-text-to.html
> If you wish to enable speak engine, please, enable 'Use TTS program.' at
> Preferences -> Sound and fill in Commandline with "echo %s | festival --tts"
> or "espeak %s" depending on engine you wish. You can do the same from command
> line, e.g. for festival run:
> gconftool-2 --type string --set
> /apps/stardict/preferences/dictionary/tts_program_cmdline "echo %s | festival
> --tts"
> gconftool-2 --type boolean --set
> /apps/stardict/preferences/dictionary/use_tts_program 1
> '
Thank you for your comments!
> BTW, how do you enable/disable plugin at run time? I wanted to reproduce you
> crash but failed to find out how... In any case IMO it's worth to report crash
> upstream.
Click the button in the right upper corner, choose "manage plugins",
check/uncheck those checkboxes to enable/disable plugins.
> And last note. I do not think that plugins are dispensable. Do not have real
> numbers but I'm sure that they should work with less delay (they are already
> loaded and at least time to link external program is avoided).
That seems appealing to me. We can add it back when it is fixed.
there is no amd64 support in gentoo-china overlay
I'm sorry, can anyone make it clear, what exactly is the problem with
stardict-3? The bug was posted half a year ago and there are still no ebuilds
in portage.
I'm not complaining, really. If any testing is needed, I can try to help.
I get:
/usr/include/festival/festival.h:47:17: error: EST.h: No such file or directory
(and some others) if I try to compile stardict 3.0.1 (renamed the ebuild) with
festival flag enabled. The files are in /usr/share/speech-tools/include/, but I
have not yet understood how to add --icludedir=/usr/share/speech-tools/include/
to ebuild.
(In reply to comment #24)
> I get:
> /usr/include/festival/festival.h:47:17: error: EST.h: No such file or directory
> (and some others) if I try to compile stardict 3.0.1 (renamed the ebuild) with
> festival flag enabled. The files are in /usr/share/speech-tools/include/, but I
> have not yet understood how to add --icludedir=/usr/share/speech-tools/include/
> to ebuild.
Try to add gentoo-china overlay to layman and install stardict from there. For
me it works also with festival flag enabled. My only problem is that it doesn't
work for me with festival but this can just be problem with my local festival
configuration. But with espeak it works without any problems.
If you don't want to keep gentoo-china overlay you can just copy the stardict
directory to your local overlay and remove gentoo-china overlay again.
Btw., it would be great if the ebuild from gentoo-china overlay could be
attached to this bug report and added to the official portage tree.
Finally stardict-3.0.1 is in the tree. Thank you all for all the
work/tests/suggestions!
Zhen, I still hope that you'll finish ebuild quiz and help with this package ;)
Until that I've added myself as maintainer.