[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Issues building the g-i on PowerPC



Frans Pop wrote:
The only thing that can tell exactly what happens is the full output
of mklibs with three times the '-v' option ("-v -v -v").
and updated the gzipped logfile [1], but at my inexerienced eyes it
looks like the previous.

No, it now provides the correct info. Here is what seems to happen.

If I call readelf on libslang from unstable on a PPC system, I get:
$ readelf -s libslang.so.2 | grep SLsmg_write_string
   319: 000680c0    80 FUNC    GLOBAL DEFAULT   11 SLsmg_write_string@@SLANG2

In the log you provided I see:

[...]
reducing libslang.so.2
using: SLang_init_tty@SLANG2 SLcurses_nil@SLANG2 SLutf8_enable@SLANG2 SLcurses_wscrl@SLANG2 SLcurses_wnoutrefresh@SLANG2 SLcurses_wrefresh@SLANG2 SLcurses_wattron@SLANG2 SLsmg_refresh@SLANG2 SLtt_set_cursor_visibility@SLANG2 SLcurses_wattroff@SLANG2 SLcurses_waddch@SLANG2 SLcurses_wclrtobot@SLANG2 SLcurses_cbreak@SLANG2 SLcurses_nodelay@SLANG2 SLcurses_wmove@SLANG2 SLcurses_endwin@SLANG2 SLsmg_touch_screen@SLANG2 SLcurses_delwin@SLANG2 SLcurses_wgetch@SLANG2 SLcurses_initscr@SLANG2 SLcurses_newwin@SLANG2 SLcurses_waddnstr@SLANG2 SLtt_beep@SLANG2
resolving /usr/lib//libslang_pic.a
resolved to /usr/lib//libslang_pic.a
extracting from: /usr/lib//libslang_pic.a so_file: /lib//libslang.so.2
calling mklibs-readelf --print-soname /lib//libslang.so.2
soname: libslang.so.2
calling mklibs-readelf --print-needed /lib//libslang.so.2
calling gcc -nostdlib -nostartfiles -shared -Wl,-soname=libslang.so.2 -uSLcurses_nodelay -uSLsmg_refresh -uSLcurses_wnoutrefresh -uSLcurses_wgetch -uSLcurses_wscrl -uSLcurses_nil -uSLcurses_initscr -uSLcurses_endwin -uSLsmg_touch_screen -uSLcurses_wrefresh -uSLcurses_delwin -uSLcurses_wattron -uSLcurses_wmove -uSLutf8_enable -uSLcurses_wclrtobot -uSLtt_set_cursor_visibility -uSLcurses_wattroff -uSLcurses_waddnstr -uSLcurses_waddch -uSLang_init_tty -uSLcurses_cbreak -uSLcurses_newwin -uSLtt_beep -o ./tmp/powerpc_netboot-gtk/tree/lib/libslang.so.2-so /usr/lib//libslang_pic.a -lgcc -L./tmp/powerpc_netboot-gtk/tree/lib -L./tmp/powerpc_netboot-gtk/tree/usr/lib -L./tmp/powerpc_netboot-gtk/udeblibs -L./tmp/powerpc_netboot-gtk/tree/usr/lib/cdebconf/frontend -L/lib/ -L/usr/lib/ -L/usr/X11R6/lib/ -L./tmp/powerpc_netboot-gtk/tree//usr/lib/cdebconf:/usr/lib/libcairo-directfb/lib -L./tmp/powerpc_netboot-gtk/tree//usr/lib/cdebconf -ldl -lm -lc /lib//ld.so.1
calling objcopy --strip-unneeded -R .note -R .comment ./tmp/powerpc_netboot-gtk/tree/lib/libslang.so.2-so ./tmp/powerpc_netboot-gtk/tree/lib/libslang.so.2-so-stripped
/lib//libslang.so.2 	 868280L
./tmp/powerpc_netboot-gtk/tree/lib/libslang.so.2-so 	 331859L
./tmp/powerpc_netboot-gtk/tree/lib/libslang.so.2-so-stripped 	 306308L
[...]
calling mklibs-readelf --print-symbols-undefined \
        ./tmp/powerpc_netboot-gtk/tree/lib/libnewt.so.0.52-so-stripped
needed_symbols adding SLsmg_write_string@SLANG2, weak: False
[...]
calling mklibs-readelf --print-symbols-provided \
        ./tmp/powerpc_netboot-gtk/tree/lib/libslang.so.2-so-stripped
present_symbols adding SLsmg_write_string@Base

So it looks like somehow the "@SLANG2" extension changes to "@Base" during
library reduction and that causes that the symbol cannot be found.
Please file a serious BR against mklibs with this info and links to this BR
and the logfile.

I'll do

2) I have rebuilt some udebs (gtk+, cairo, pango, cdebconf) against
dfb 1.0
Change $debug=0 to 1 in installer/build/util/pkg-list to see what's
pulling it in.
i patched the pkg-list perl script as

That is correct, but your log is incomplete.

You should be getting a lot of output like this near the beginning of the
log (before the line starting with "get-packages"):
pkg-lists:  reading pkg-lists for netboot
pkg-lists:      processing pkg-lists/netboot/amd64.cfg
pkg-lists:          adding console-keymaps-at
pkg-lists:          collecting dependencies for console-keymaps-at
pkg-lists:              added cdebconf-udeb for console-keymaps-at
pkg-lists:              collecting dependencies for cdebconf-udeb
pkg-lists:                  added libc6 for cdebconf-udeb
pkg-lists:                  collecting dependencies for libc6
pkg-lists:                  added libdebian-installer4-udeb for cdebconf-udeb
pkg-lists:                  collecting dependencies for libdebian-installer4-udeb
pkg-lists:                      added libc6 for libdebian-installer4-udeb
[...]

Did you 'make reallyclean'?

sure, i always call

fakeroot make reallyclean; fakeroot make build_powerpc_netboot-gtk

to build the images: the problem is that i'm not getting those lines and that's the reason why i had to remove from the UDEBS variable in the Makefile the entry about directfb 0.9.25

Attilio



Reply to: