Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 3469 - xine-ui can't build with gcc-3.1
Summary: xine-ui can't build with gcc-3.1
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] GCC Porting (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Matthew Kennedy (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2002-06-06 22:47 UTC by Rufiao Valhacouto
Modified: 2003-02-04 19:42 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Rufiao Valhacouto 2002-06-06 22:47:16 UTC
follows the relevant build output:

/bin/sh ../../libtool --mode=link gcc  -O3 -pipe -fomit-frame-pointer
-malign-functions=4 -malign-loops=4 -malign-jumps=4 -malign-functions=4 
-mpreferred-stack-boundary=2 -fexpensive-optimizations -fschedule-insns2
-fno-strict-aliasing -ffast-math -funroll-loops -funroll-all-loops
-finline-functions -mcpu=athlon -Wall -D_FILE_OFFSET_BITS=64   
-I/usr/X11R6/include  -I/usr/include -I../../src/xitk/xine-toolkit  -o
xine-remote  xine-remote.o -lcurses -lnsl  -lpthread ../../readline/libreadline.la 
mkdir .libs
gcc -O3 -pipe -fomit-frame-pointer -malign-functions=4 -malign-loops=4
-malign-jumps=4 -malign-functions=4 -mpreferred-stack-boundary=2
-fexpensive-optimizations -fschedule-insns2 -fno-strict-aliasing -ffast-math
-funroll-loops -funroll-all-loops -finline-functions -mcpu=athlon -Wall
-D_FILE_OFFSET_BITS=64 -I/usr/X11R6/include -I/usr/include
-I../../src/xitk/xine-toolkit -o xine-remote xine-remote.o  -lcurses -lnsl
-lpthread ../../readline/.libs/libreadline.a
../../readline/.libs/libreadline.a(display.o): In function `rl_redisplay':
display.o(.text+0x60f): undefined reference to `tputs'
../../readline/.libs/libreadline.a(display.o): In function `update_line':
display.o(.text+0x1268): undefined reference to `tputs'
../../readline/.libs/libreadline.a(display.o): In function
`_rl_move_cursor_relative':
display.o(.text+0x15c1): undefined reference to `tputs'
../../readline/.libs/libreadline.a(display.o): In function `_rl_move_vert':
display.o(.text+0x1631): undefined reference to `tputs'
display.o(.text+0x1678): undefined reference to `tputs'
../../readline/.libs/libreadline.a(display.o)(.text+0x17fc): more undefined
references to `tputs' follow
../../readline/.libs/libreadline.a(display.o): In function `insert_some_chars':
display.o(.text+0x1930): undefined reference to `tgoto'
display.o(.text+0x1948): undefined reference to `tputs'
../../readline/.libs/libreadline.a(display.o): In function `delete_chars':
display.o(.text+0x19b5): undefined reference to `tputs'
display.o(.text+0x19d8): undefined reference to `tgoto'
display.o(.text+0x19ec): undefined reference to `tputs'
../../readline/.libs/libreadline.a(display.o): In function `cr':
display.o(.text+0x1a27): undefined reference to `tputs'
../../readline/.libs/libreadline.a(display.o): In function `_rl_clear_screen':
display.o(.text+0x1e53): undefined reference to `tputs'
../../readline/.libs/libreadline.a(display.o): In function
`_rl_redisplay_after_sigwinch':
display.o(.text+0x1f77): undefined reference to `tputs'
display.o(.text+0x1fb2): undefined reference to `tputs'
../../readline/.libs/libreadline.a(terminal.o): In function `_rl_get_screen_size':
terminal.o(.text+0xe2): undefined reference to `tgetnum'
terminal.o(.text+0x154): undefined reference to `tgetnum'
../../readline/.libs/libreadline.a(terminal.o): In function `_rl_init_terminal_io':
terminal.o(.text+0x22b): undefined reference to `tgetstr'
terminal.o(.text+0x255): undefined reference to `PC'
terminal.o(.text+0x265): undefined reference to `BC'
terminal.o(.text+0x271): undefined reference to `UP'
terminal.o(.text+0x28c): undefined reference to `tgetflag'
terminal.o(.text+0x2e5): undefined reference to `tgetflag'
terminal.o(.text+0x43e): undefined reference to `tgetflag'
terminal.o(.text+0x457): undefined reference to `tgetflag'
terminal.o(.text+0x4d3): undefined reference to `PC'
terminal.o(.text+0x57c): undefined reference to `BC'
terminal.o(.text+0x582): undefined reference to `UP'
terminal.o(.text+0x5ec): undefined reference to `tgetent'
../../readline/.libs/libreadline.a(terminal.o): In function `_rl_backspace':
terminal.o(.text+0x845): undefined reference to `tputs'
../../readline/.libs/libreadline.a(terminal.o): In function `rl_ding':
terminal.o(.text+0x92a): undefined reference to `tputs'
../../readline/.libs/libreadline.a(terminal.o): In function `_rl_enable_meta_key':
terminal.o(.text+0x974): undefined reference to `tputs'
../../readline/.libs/libreadline.a(terminal.o): In function `_rl_control_keypad':
terminal.o(.text+0x9b4): undefined reference to `tputs'
collect2: ld returned 1 exit status
make[4]: *** [xine-remote] Error 1
make[4]: *** Waiting for unfinished jobs....
make[4]: Leaving directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9'
make: *** [all-recursive-am] Error 2
make  all-recursive
make[1]: Entering directory `/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9'
Making all in readline
make[2]: Entering directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/readline'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/readline'
Making all in intl
make[2]: Entering directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/intl'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/intl'
Making all in src
make[2]: Entering directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src'
Making all in common
make[3]: Entering directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/common'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/common'
Making all in Imlib-light
make[3]: Entering directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/Imlib-light'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/Imlib-light'
Making all in corba
make[3]: Entering directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/corba'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/corba'
Making all in xitk
make[3]: Entering directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk'
Making all in xine-toolkit
make[4]: Entering directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk/xine-toolkit'
Making all in po
make[5]: Entering directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk/xine-toolkit/po'
make[5]: Nothing to be done for `all'.
make[5]: Leaving directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk/xine-toolkit/po'
make[5]: Entering directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk/xine-toolkit'
make[5]: Nothing to be done for `all-am'.
make[5]: Leaving directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk/xine-toolkit'
make[4]: Leaving directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk/xine-toolkit'
Making all in skins
make[4]: Entering directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk/skins'
Making all in lcd
make[5]: Entering directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk/skins/lcd'
make[5]: Nothing to be done for `all'.
make[5]: Leaving directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk/skins/lcd'
Making all in pitt
make[5]: Entering directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk/skins/pitt'
make[5]: Nothing to be done for `all'.
make[5]: Leaving directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk/skins/pitt'
Making all in xinetic
make[5]: Entering directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk/skins/xinetic'
make[5]: Nothing to be done for `all'.
make[5]: Leaving directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk/skins/xinetic'
Making all in cloudy
make[5]: Entering directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk/skins/cloudy'
make[5]: Nothing to be done for `all'.
make[5]: Leaving directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk/skins/cloudy'
Making all in mp2k
make[5]: Entering directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk/skins/mp2k'
make[5]: Nothing to be done for `all'.
make[5]: Leaving directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk/skins/mp2k'
Making all in CelomaGold
make[5]: Entering directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk/skins/CelomaGold'
make[5]: Nothing to be done for `all'.
make[5]: Leaving directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk/skins/CelomaGold'
Making all in CelomaMdk
make[5]: Entering directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk/skins/CelomaMdk'
make[5]: Nothing to be done for `all'.
make[5]: Leaving directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk/skins/CelomaMdk'
Making all in CelomaChrome
make[5]: Entering directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk/skins/CelomaChrome'
make[5]: Nothing to be done for `all'.
make[5]: Leaving directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk/skins/CelomaChrome'
make[5]: Entering directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk/skins'
make[5]: Nothing to be done for `all-am'.
make[5]: Leaving directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk/skins'
make[4]: Leaving directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk/skins'
make[4]: Entering directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk'
/bin/sh ../../libtool --mode=link gcc  -O3 -pipe -fomit-frame-pointer
-malign-functions=4 -malign-loops=4 -malign-jumps=4 -malign-functions=4 
-mpreferred-stack-boundary=2 -fexpensive-optimizations -fschedule-insns2
-fno-strict-aliasing -ffast-math -funroll-loops -funroll-all-loops
-finline-functions -mcpu=athlon -Wall -D_FILE_OFFSET_BITS=64   
-I/usr/X11R6/include  -I/usr/include -I../../src/xitk/xine-toolkit  -o xine 
utils.o xscreensaver-remote.o main.o event.o control.o playlist.o videowin.o
panel.o kbindings.o lirc.o actions.o mrl_browser.o snapshot.o skins.o setup.o
viewlog.o lang.o errors.o network.o -L/usr/lib -lxineutils -lxine -lz -lpthread
../../src/xitk/xine-toolkit/libxitk.la 	-L/usr/lib -lxineutils -lxine -lz
-lpthread  -ldl 	-L/usr/X11R6/lib  -lX11 -lm 
gcc -O3 -pipe -fomit-frame-pointer -malign-functions=4 -malign-loops=4
-malign-jumps=4 -malign-functions=4 -mpreferred-stack-boundary=2
-fexpensive-optimizations -fschedule-insns2 -fno-strict-aliasing -ffast-math
-funroll-loops -funroll-all-loops -finline-functions -mcpu=athlon -Wall
-D_FILE_OFFSET_BITS=64 -I/usr/X11R6/include -I/usr/include
-I../../src/xitk/xine-toolkit -o xine utils.o xscreensaver-remote.o main.o
event.o control.o playlist.o videowin.o panel.o kbindings.o lirc.o actions.o
mrl_browser.o snapshot.o skins.o setup.o viewlog.o lang.o errors.o network.o 
-L/usr/lib ../../src/xitk/xine-toolkit/.libs/libxitk.al -L/usr/X11R6/lib -lSM
-lICE -lXinerama -lXxf86vm -lpng -lXext /usr/lib/libxineutils.so
/usr/lib/libxine.so -lz -lpthread -ldl -lX11 -lm
/bin/sh ../../libtool --mode=link gcc  -O3 -pipe -fomit-frame-pointer
-malign-functions=4 -malign-loops=4 -malign-jumps=4 -malign-functions=4 
-mpreferred-stack-boundary=2 -fexpensive-optimizations -fschedule-insns2
-fno-strict-aliasing -ffast-math -funroll-loops -funroll-all-loops
-finline-functions -mcpu=athlon -Wall -D_FILE_OFFSET_BITS=64   
-I/usr/X11R6/include  -I/usr/include -I../../src/xitk/xine-toolkit  -o
xine-remote  xine-remote.o -lcurses -lnsl  -lpthread ../../readline/libreadline.la 
gcc -O3 -pipe -fomit-frame-pointer -malign-functions=4 -malign-loops=4
-malign-jumps=4 -malign-functions=4 -mpreferred-stack-boundary=2
-fexpensive-optimizations -fschedule-insns2 -fno-strict-aliasing -ffast-math
-funroll-loops -funroll-all-loops -finline-functions -mcpu=athlon -Wall
-D_FILE_OFFSET_BITS=64 -I/usr/X11R6/include -I/usr/include
-I../../src/xitk/xine-toolkit -o xine-remote xine-remote.o  -lcurses -lnsl
-lpthread ../../readline/.libs/libreadline.a
../../readline/.libs/libreadline.a(display.o): In function `rl_redisplay':
display.o(.text+0x60f): undefined reference to `tputs'
../../readline/.libs/libreadline.a(display.o): In function `update_line':
display.o(.text+0x1268): undefined reference to `tputs'
../../readline/.libs/libreadline.a(display.o): In function
`_rl_move_cursor_relative':
display.o(.text+0x15c1): undefined reference to `tputs'
../../readline/.libs/libreadline.a(display.o): In function `_rl_move_vert':
display.o(.text+0x1631): undefined reference to `tputs'
display.o(.text+0x1678): undefined reference to `tputs'
../../readline/.libs/libreadline.a(display.o)(.text+0x17fc): more undefined
references to `tputs' follow
../../readline/.libs/libreadline.a(display.o): In function `insert_some_chars':
display.o(.text+0x1930): undefined reference to `tgoto'
display.o(.text+0x1948): undefined reference to `tputs'
../../readline/.libs/libreadline.a(display.o): In function `delete_chars':
display.o(.text+0x19b5): undefined reference to `tputs'
display.o(.text+0x19d8): undefined reference to `tgoto'
display.o(.text+0x19ec): undefined reference to `tputs'
../../readline/.libs/libreadline.a(display.o): In function `cr':
display.o(.text+0x1a27): undefined reference to `tputs'
../../readline/.libs/libreadline.a(display.o): In function `_rl_clear_screen':
display.o(.text+0x1e53): undefined reference to `tputs'
../../readline/.libs/libreadline.a(display.o): In function
`_rl_redisplay_after_sigwinch':
display.o(.text+0x1f77): undefined reference to `tputs'
display.o(.text+0x1fb2): undefined reference to `tputs'
../../readline/.libs/libreadline.a(terminal.o): In function `_rl_get_screen_size':
terminal.o(.text+0xe2): undefined reference to `tgetnum'
terminal.o(.text+0x154): undefined reference to `tgetnum'
../../readline/.libs/libreadline.a(terminal.o): In function `_rl_init_terminal_io':
terminal.o(.text+0x22b): undefined reference to `tgetstr'
terminal.o(.text+0x255): undefined reference to `PC'
terminal.o(.text+0x265): undefined reference to `BC'
terminal.o(.text+0x271): undefined reference to `UP'
terminal.o(.text+0x28c): undefined reference to `tgetflag'
terminal.o(.text+0x2e5): undefined reference to `tgetflag'
terminal.o(.text+0x43e): undefined reference to `tgetflag'
terminal.o(.text+0x457): undefined reference to `tgetflag'
terminal.o(.text+0x4d3): undefined reference to `PC'
terminal.o(.text+0x57c): undefined reference to `BC'
terminal.o(.text+0x582): undefined reference to `UP'
terminal.o(.text+0x5ec): undefined reference to `tgetent'
../../readline/.libs/libreadline.a(terminal.o): In function `_rl_backspace':
terminal.o(.text+0x845): undefined reference to `tputs'
../../readline/.libs/libreadline.a(terminal.o): In function `rl_ding':
terminal.o(.text+0x92a): undefined reference to `tputs'
../../readline/.libs/libreadline.a(terminal.o): In function `_rl_enable_meta_key':
terminal.o(.text+0x974): undefined reference to `tputs'
../../readline/.libs/libreadline.a(terminal.o): In function `_rl_control_keypad':
terminal.o(.text+0x9b4): undefined reference to `tputs'
collect2: ld returned 1 exit status
make[4]: *** [xine-remote] Error 1
make[4]: Leaving directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory
`/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9'
make: *** [all-recursive-am] Error 2
Comment 1 Juan L. 2002-06-14 15:37:33 UTC
I have the same problem 
Comment 2 Johannes Günther 2002-06-14 15:58:00 UTC
It seems to me that this has something to do with the libreadline that is 
shipped with xine-ui (xitk does not use the systems libreadline).

When I manually move the "-lcurses"-switch to gcc to the end of the 
commandline I can successfully compile xine-ui.
Comment 3 Rufiao Valhacouto 2002-06-14 18:10:03 UTC
Can you provide a patch for testing?
Comment 4 Johannes Günther 2002-06-15 07:37:58 UTC
Sorry, I am afraid I can not. I have too little knowledge about
automake/autoconf to patch the Makefile.[am/in] of xine-ui to reorder
the options given to gcc.

All I can offer is a step-by-step instruction how I did it:

1. compile xine-ui manually (see also FAQ for details:
   http://www.gentoo.org/doc/faq.html#_sect9)
| ebuild /usr/portage/media-video/xine-ui/xine-ui-0.9.9-r1.ebuild compile
   (aborts with the error in question in scr/xitk)
2. go to the subdir src/xitk
| cd /var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9/src/xitk/
3. copy&paste the last command (that one that failed) and add "-lcurses"
   to the commandline; gives something like this, depending on your
   system/configuration (all in one line):
| gcc -O3 -pipe -fomit-frame-pointer -malign-functions=4 -malign-loops=4
| -malign-jumps=4 -malign-functions=4 -mpreferred-stack-boundary=2
| -fexpensive-optimizations -fschedule-insns2 -fno-strict-aliasing
| -ffast-math -funroll-loops -funroll-all-loops -finline-functions
| -mcpu=athlon -Wall -D_FILE_OFFSET_BITS=64 -I/usr/X11R6/include
| -I/usr/include -I../../src/xitk/xine-toolkit -o xine-remote
| xine-remote.o  -lcurses -lnsl -lpthread
| ../../readline/.libs/libreadline.a -lcurses
4. continue with make in the basedir
   (/var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9)
| cd ../..
| make
5. trick emerge/ebuild to think they compiled the package
   (also in /var/tmp/portage/xine-ui-0.9.9-r1/work/xine-ui-0.9.9)
| touch .compiled
6. merge xine-ui
| ebuild /usr/portage/media-video/xine-ui/xine-ui-0.9.9-r1.ebuild merge
   if everything worked, you now have xine-ui installed
7. clean up the tmp-dir
| ebuild /usr/portage/media-video/xine-ui/xine-ui-0.9.9-r1.ebuild clean
Comment 5 Brandon Low (RETIRED) gentoo-dev 2002-06-16 12:43:50 UTC
I had a fight with some sed and a little Makefile.in today, and this is now
fixed in xine-ui-0.9.9-r1, please note that there is some other issue with
directfb support for xine-ui and gcc-3.1 which I didn't fix, I simply made sure
that xine-ui doesn't try to build dfb support if it is not in use.