Bug#319527: qemu: FTBFS on i386
[Reinhard Tartler] It got built now on i386 and amd64. It stills FTBFS for ppc, but this seems to be an issue with binutils: [Octavian Cerna] For PPC you can try the following patch, already applied to Qemu CVS: http://lists.gnu.org/archive/html/qemu-devel/2005-06/msg4.html [Sebastian Dröge] The patch to the ppc linker script doesn't work for me on my ibook with binutils 2.16,etc on breezy. I get the same error as without the patch [...] /usr/bin/ld: qemu-i386: Not enough room for program headers (allocated 8, need 9 ) /usr/bin/ld: final link failed: Bad value [Roger Leigh] It also fails on Debian/powerpc: [...] /usr/bin/ld: qemu-i386: Not enough room for program headers (allocated 8, need 9) /usr/bin/ld: final link failed: Bad value Thank you for reporting the build failures on PowerPC. It seems that the patch from qemu-devel is not enough to fix the problem. Attached is the second version of my patch, against qemu_0.7.0-2: * debian/control (Build-Depends): add missing zlib1g-dev, depend on gcc-3.4, depend on binutils-2.16 for the updated ppc linker script * debian/rules: compile with gcc-3.4 * debian/patches/02_fix_librt_linkage.patch: link with librt for clock_gettime (Reinhard Tartler) * debian/patches/34_syscalls_types.patch: new, fix compile error with linux-kernel-headers 2.6.12 (it's a hack: include linux/types.h before any other glibc header) * debian/patches/41_ppc_ldscript.patch: new, update the ppc linker script from /usr/lib/ldscripts/elf32ppclinux.x in binutils-2.16 With this patch I was able to build and run qemu on an uptodate Debian sid emulated by qemu-system-ppc. Octavian diff -urN qemu-0.7.0-orig/debian/control qemu-0.7.0/debian/control --- qemu-0.7.0-orig/debian/control 2005-07-23 01:13:01.488124413 +0300 +++ qemu-0.7.0/debian/control 2005-07-24 22:58:45.240500629 +0300 @@ -3,7 +3,7 @@ Priority: optional Maintainer: Debian QEMU Team [EMAIL PROTECTED] Uploaders: Guilherme de S. Pastore [EMAIL PROTECTED], Guillem Jover [EMAIL PROTECTED], Elrond [EMAIL PROTECTED] -Build-Depends: cdbs, debhelper (= 4.1.0), libx11-dev | xlibs-dev, libsdl1.2-dev ( 1.2.1), texi2html, sharutils, libgpmg1-dev [amd64 i386 powerpc alpha sparc arm s390] +Build-Depends: cdbs, debhelper (= 4.1.0), gcc-3.4, binutils (= 2.16), libx11-dev | xlibs-dev, libsdl1.2-dev ( 1.2.1), zlib1g-dev, texi2html, sharutils, libgpmg1-dev [amd64 i386 powerpc alpha sparc arm s390] Standards-Version: 3.6.1.1 Package: qemu diff -urN qemu-0.7.0-orig/debian/patches/02_fix_librt_linkage.patch qemu-0.7.0/debian/patches/02_fix_librt_linkage.patch --- qemu-0.7.0-orig/debian/patches/02_fix_librt_linkage.patch 1970-01-01 02:00:00.0 +0200 +++ qemu-0.7.0/debian/patches/02_fix_librt_linkage.patch2005-07-24 21:55:41.816348746 +0300 @@ -0,0 +1,12 @@ +#DPATCHLEVEL=1 +--- qemu-0.7.0.orig/Makefile.target2005-04-27 20:52:05.0 + qemu-0.7.0/Makefile.target 2005-07-23 11:07:19.449003328 + +@@ -212,7 +212,7 @@ + # + + DEFINES+=-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE +-LIBS+=-lm ++LIBS+=-lm -lrt + ifndef CONFIG_USER_ONLY + LIBS+=-lz + endif diff -urN qemu-0.7.0-orig/debian/patches/34_syscalls_types.patch qemu-0.7.0/debian/patches/34_syscalls_types.patch --- qemu-0.7.0-orig/debian/patches/34_syscalls_types.patch 1970-01-01 02:00:00.0 +0200 +++ qemu-0.7.0/debian/patches/34_syscalls_types.patch 2005-07-24 21:55:41.817348539 +0300 @@ -0,0 +1,11 @@ +#DPATCHLEVEL=0 +--- linux-user/syscall.c.orig 2005-07-23 01:55:22.169404147 +0300 linux-user/syscall.c 2005-07-23 01:52:31.157924629 +0300 +@@ -17,6 +17,7 @@ + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + */ ++#include linux/types.h + #include stdlib.h + #include stdio.h + #include stdarg.h diff -urN qemu-0.7.0-orig/debian/patches/41_ppc_ldscript.patch qemu-0.7.0/debian/patches/41_ppc_ldscript.patch --- qemu-0.7.0-orig/debian/patches/41_ppc_ldscript.patch1970-01-01 02:00:00.0 +0200 +++ qemu-0.7.0/debian/patches/41_ppc_ldscript.patch 2005-07-24 21:55:41.817348539 +0300 @@ -0,0 +1,286 @@ +#DPATCHLEVEL=0 +--- ppc.ld.old 2005-07-24 01:10:38.705795341 +0300 ppc.ld 2005-07-24 01:01:45.0 +0300 +@@ -1,106 +1,190 @@ +-/* ld script to make i386 Linux kernel +- * Written by Martin Mares [EMAIL PROTECTED]; +- */ +-OUTPUT_FORMAT(elf32-powerpc, elf32-powerpc, elf32-powerpc) +-OUTPUT_ARCH(powerpc) +-SEARCH_DIR(/lib); SEARCH_DIR(/usr/lib); SEARCH_DIR(/usr/local/lib); SEARCH_DIR(/usr/alpha-unknown-linux-gnu/lib); ++/* Default linker script, for normal executables */ ++OUTPUT_FORMAT(elf32-powerpc, elf32-powerpc, ++elf32-powerpc) ++OUTPUT_ARCH(powerpc:common) + ENTRY(_start) ++SEARCH_DIR(/usr/powerpc-linux-gnu/lib); SEARCH_DIR(/usr/local/lib); SEARCH_DIR(/lib); SEARCH_DIR(/usr/lib);
Bug#319527: qemu: FTBFS on i386
On Sat, Jul 23, 2005 at 03:27:53AM +0300, Octavian Cerna wrote: I attached a patch that fixes the FTBFS: * debian/control (Build-Depends): add missing zlib1g-dev, depend on gcc-3.4 * debian/rules: compile with gcc-3.4 * debian/patches/34_syscalls_types.patch: new, fix compile error with linux-kernel-headers 2.6.12 (it's a hack: include linux/types.h before any other glibc header) Tested with a sid pbuilder. thank you very much for this patch. I uploaded an updated package to ubuntu, debdiff to the current package is here: https://bugzilla.ubuntu.com/show_bug.cgi?id=12021 It got built now on i386 and amd64. It stills FTBFS for ppc, but this seems to be an issue with binutils: http://people.ubuntu.com/~lamont/buildLogs/q/qemu/0.7.0-2ubuntu1/qemu_0.7.0-2ubuntu1_20050723-1324-powerpc-failed.gz I don't have access to ppc hardware to verify if this applies to debian, too. Gruesse, Reinhard -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#319527: qemu: FTBFS on i386
Reinhard Tartler wrote: It got built now on i386 and amd64. It stills FTBFS for ppc, but this seems to be an issue with binutils: http://people.ubuntu.com/~lamont/buildLogs/q/qemu/0.7.0-2ubuntu1/qemu_0.7.0-2ubuntu1_20050723-1324-powerpc-failed.gz I don't have access to ppc hardware to verify if this applies to debian, too. For PPC you can try the following patch, already applied to Qemu CVS: http://lists.gnu.org/archive/html/qemu-devel/2005-06/msg4.html It updates the ppc.ld linker script to work with binutils 2.16. Octavian -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#319527: qemu: FTBFS on i386
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Reinhard Tartler [EMAIL PROTECTED] writes: On Sat, Jul 23, 2005 at 03:27:53AM +0300, Octavian Cerna wrote: It got built now on i386 and amd64. It stills FTBFS for ppc, but this seems to be an issue with binutils: http://people.ubuntu.com/~lamont/buildLogs/q/qemu/0.7.0-2ubuntu1/qemu_0.7.0-2ubuntu1_20050723-1324-powerpc-failed.gz I don't have access to ppc hardware to verify if this applies to debian, too. It also fails on Debian/powerpc: gcc-3.4 -Wall -O2 -g -fno-strict-aliasing -D__powerpc__ -I. -I/tmp/qe/qemu-0.7.0/./target-i386 -I/tmp/qe/qemu-0.7.0/. -I/tmp/qe/qemu-0.7.0/./linux-user -I/tmp/qe/qemu-0.7.0/./linux-user/i386 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -I/tmp/qe/qemu-0.7.0/./fpu -I/tmp/qe/qemu-0.7.0/./slirp -c -o gdbstub.o /tmp/qe/qemu-0.7.0/./gdbstub.c gcc-3.4 -g -Wl,-T,/tmp/qe/qemu-0.7.0/./ppc.ld -o qemu-i386 elfload.o main.o syscall.o mmap.o signal.o path.o osdep.o thunk.o vm86.o libqemu.a gdbstub.o -lm -lrt /usr/bin/ld: qemu-i386: Not enough room for program headers (allocated 8, need 9) /usr/bin/ld: final link failed: Bad value collect2: ld returned 1 exit status make[2]: *** [qemu-i386] Error 1 - -- Roger Leigh Printing on GNU/Linux? http://gimp-print.sourceforge.net/ Debian GNU/Linuxhttp://www.debian.org/ GPG Public Key: 0x25BFB848. Please sign and encrypt your mail. -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.1 (GNU/Linux) Comment: Processed by Mailcrypt 3.5.8 http://mailcrypt.sourceforge.net/ iD8DBQFC4mnLVcFcaSW/uEgRAi8OAKClwNvwODl/a/WtVt4PrSti0a5IsgCeM/3/ xH7L6NVj1fZuHjHcEH/eQeU= =zi6c -END PGP SIGNATURE- -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#319527: qemu: FTBFS on i386
Package: qemu Severity: serious Justification: no longer builds from source I'm trying to get qemu build in current sid. First issue is missing zlib1g-dev. After adding that to debian/control, the build stops shortly later. I assume this is a gcc-4.0 issue, but I don't have time atm to get deeper into this :( regards, Reinhard -- System Information: Debian Release: testing/unstable APT prefers unstable APT policy: (500, 'unstable') Architecture: i386 (x86_64) Shell: /bin/sh linked to /bin/bash -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#319527: qemu: FTBFS on i386
On Fri, Jul 22, 2005 at 09:53:07PM +0100, Roger Leigh wrote: I'm trying to get qemu build in current sid. First issue is missing zlib1g-dev. After adding that to debian/control, the build stops shortly later. Do you have a transcript of the failure? Sure, I attached the buildlog showing the failure to this email. This is inside an uptodate sid chroot. regards, Reinhard dpkg-buildpackage: source package is qemu dpkg-buildpackage: source version is 0.7.0-2 dpkg-buildpackage: source changed by Guillem Jover [EMAIL PROTECTED] dpkg-buildpackage: host architecture i386 fakeroot debian/rules clean test -x debian/rules test `id -u` = 0 if test -n test != .; then rmdir ; fi if test . != .; then rmdir .; fi dh_clean /usr/bin/make -f debian/rules reverse-config make[1]: Entering directory `/home/siretart/src/debian/qemu/qemu-0.7.0' make[1]: Nothing to be done for `reverse-config'. make[1]: Leaving directory `/home/siretart/src/debian/qemu/qemu-0.7.0' patches: debian/patches/01_doc_typos.patch debian/patches/04_do_not_print_rtc_freq_if_ok.patch debian/patches/05_non-fatal_if_linux_hd_missing.patch debian/patches/10_signal_jobs.patch debian/patches/11_signal_sigaction.patch debian/patches/12_signal_silent.patch debian/patches/20_net_socket.patch debian/patches/21_net_sockopt.patch debian/patches/30_syscall_ipc.patch debian/patches/31_syscalls.patch debian/patches/32_syscall_sysctl.patch debian/patches/33_syscall_truncate64.patch debian/patches/40_fpu_arm_sigfpe.patch Trying patch debian/patches/40_fpu_arm_sigfpe.patch at level 0...0...success. Trying patch debian/patches/33_syscall_truncate64.patch at level 0...0...success. Trying patch debian/patches/32_syscall_sysctl.patch at level 0...0...success. Trying patch debian/patches/31_syscalls.patch at level 0...0...success. Trying patch debian/patches/30_syscall_ipc.patch at level 0...0...success. Trying patch debian/patches/21_net_sockopt.patch at level 0...0...success. Trying patch debian/patches/20_net_socket.patch at level 0...0...success. Trying patch debian/patches/12_signal_silent.patch at level 0...0...success. Trying patch debian/patches/11_signal_sigaction.patch at level 0...0...success. Trying patch debian/patches/10_signal_jobs.patch at level 0...0...success. Trying reversed patch debian/patches/05_non-fatal_if_linux_hd_missing.patch at level 0...1...success. Trying patch debian/patches/04_do_not_print_rtc_freq_if_ok.patch at level 1...1...success. Trying patch debian/patches/01_doc_typos.patch at level 1...1...success. if [ reverse-patches = debian/stamp-patched ] ; then touch debian/stamp-patched ; \ elif [ reverse-patches = reverse-patches ] ; then rm -f debian/stamp-patch* ; \ fi # after reverting patches, we don't need update-config because: # - the tree is already in a consistent state. # - the initialisation of this routine is already in charge of making #the tree not only consistent, but also prepared to accept patching. if [ reverse-patches != reverse-patches ] ; then \ /usr/bin/make -f debian/rules update-config ; \ fi for dir in debian/patches ; do \ rm -f $dir/*.log ; \ done make -C . -k distclean || true make[1]: Entering directory `/home/siretart/src/debian/qemu/qemu-0.7.0' rm -f config.mak config.h op-i386.h opc-i386.h gen-op-i386.h op-arm.h opc-arm.h gen-op-arm.h rm -f *.o *.a qemu-img dyngen TAGS *.pod *~ */*~ make -C tests clean make[2]: Entering directory `/home/siretart/src/debian/qemu/qemu-0.7.0/tests' rm -f *~ *.o test-i386.out test-i386.ref \ test-x86_64.log test-x86_64.ref qruncom test-x86_64 sha1 make[2]: Leaving directory `/home/siretart/src/debian/qemu/qemu-0.7.0/tests' for d in i386-user arm-user armeb-user sparc-user ppc-user i386-softmmu ppc-softmmu sparc-softmmu x86_64-softmmu; do \ make -C $d clean || exit 1 ; \ done make[2]: Entering directory `/home/siretart/src/debian/qemu/qemu-0.7.0/i386-user' rm -f *.o *.a *~ qemu-i386 gen-op.h opc.h op.h nwfpe/*.o slirp/*.o fpu/*.o make[2]: Leaving directory `/home/siretart/src/debian/qemu/qemu-0.7.0/i386-user' make[2]: Entering directory `/home/siretart/src/debian/qemu/qemu-0.7.0/arm-user' rm -f *.o *.a *~ qemu-arm gen-op.h opc.h op.h nwfpe/*.o slirp/*.o fpu/*.o make[2]: Leaving directory `/home/siretart/src/debian/qemu/qemu-0.7.0/arm-user' make[2]: Entering directory `/home/siretart/src/debian/qemu/qemu-0.7.0/armeb-user' rm -f *.o *.a *~ qemu-armeb gen-op.h opc.h op.h nwfpe/*.o slirp/*.o fpu/*.o make[2]: Leaving directory `/home/siretart/src/debian/qemu/qemu-0.7.0/armeb-user' make[2]: Entering directory `/home/siretart/src/debian/qemu/qemu-0.7.0/sparc-user' rm -f *.o *.a *~ qemu-sparc gen-op.h opc.h op.h nwfpe/*.o slirp/*.o fpu/*.o make[2]: Leaving directory `/home/siretart/src/debian/qemu/qemu-0.7.0/sparc-user' make[2]: Entering directory `/home/siretart/src/debian/qemu/qemu-0.7.0/ppc-user' rm -f *.o *.a *~ qemu-ppc gen-op.h opc.h op.h nwfpe/*.o slirp/*.o fpu/*.o make[2]: Leaving directory
Bug#319527: qemu: FTBFS on i386
Reinhard Tartler [EMAIL PROTECTED] writes: I'm trying to get qemu build in current sid. First issue is missing zlib1g-dev. After adding that to debian/control, the build stops shortly later. Do you have a transcript of the failure? -- Roger Leigh Printing on GNU/Linux? http://gimp-print.sourceforge.net/ Debian GNU/Linuxhttp://www.debian.org/ GPG Public Key: 0x25BFB848. Please sign and encrypt your mail. -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#319527: qemu: FTBFS on i386
tags 319527 + patch thanks Reinhard Tartler wrote: On Fri, Jul 22, 2005 at 09:53:07PM +0100, Roger Leigh wrote: I'm trying to get qemu build in current sid. First issue is missing zlib1g-dev. After adding that to debian/control, the build stops shortly later. Do you have a transcript of the failure? Sure, I attached the buildlog showing the failure to this email. This is inside an uptodate sid chroot. Hello, Qemu does not support GCC 4.0, see http://www.qemu.org/faq.html I attached a patch that fixes the FTBFS: * debian/control (Build-Depends): add missing zlib1g-dev, depend on gcc-3.4 * debian/rules: compile with gcc-3.4 * debian/patches/34_syscalls_types.patch: new, fix compile error with linux-kernel-headers 2.6.12 (it's a hack: include linux/types.h before any other glibc header) Tested with a sid pbuilder. HTH, Octavian diff -urN qemu-0.7.0-orig/debian/control qemu-0.7.0/debian/control --- qemu-0.7.0-orig/debian/control 2005-07-23 01:13:01.488124413 +0300 +++ qemu-0.7.0/debian/control 2005-07-23 01:58:11.640203677 +0300 @@ -3,7 +3,7 @@ Priority: optional Maintainer: Debian QEMU Team [EMAIL PROTECTED] Uploaders: Guilherme de S. Pastore [EMAIL PROTECTED], Guillem Jover [EMAIL PROTECTED], Elrond [EMAIL PROTECTED] -Build-Depends: cdbs, debhelper (= 4.1.0), libx11-dev | xlibs-dev, libsdl1.2-dev ( 1.2.1), texi2html, sharutils, libgpmg1-dev [amd64 i386 powerpc alpha sparc arm s390] +Build-Depends: cdbs, debhelper (= 4.1.0), gcc-3.4, libx11-dev | xlibs-dev, libsdl1.2-dev ( 1.2.1), zlib1g-dev, texi2html, sharutils, libgpmg1-dev [amd64 i386 powerpc alpha sparc arm s390] Standards-Version: 3.6.1.1 Package: qemu diff -urN qemu-0.7.0-orig/debian/patches/34_syscalls_types.patch qemu-0.7.0/debian/patches/34_syscalls_types.patch --- qemu-0.7.0-orig/debian/patches/34_syscalls_types.patch 1970-01-01 02:00:00.0 +0200 +++ qemu-0.7.0/debian/patches/34_syscalls_types.patch 2005-07-23 01:56:44.864227756 +0300 @@ -0,0 +1,11 @@ +#DPATCHLEVEL=0 +--- linux-user/syscall.c.orig 2005-07-23 01:55:22.169404147 +0300 linux-user/syscall.c 2005-07-23 01:52:31.157924629 +0300 +@@ -17,6 +17,7 @@ + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + */ ++#include linux/types.h + #include stdlib.h + #include stdio.h + #include stdarg.h diff -urN qemu-0.7.0-orig/debian/rules qemu-0.7.0/debian/rules --- qemu-0.7.0-orig/debian/rules2005-07-23 01:13:01.493123375 +0300 +++ qemu-0.7.0/debian/rules 2005-07-23 01:58:44.745327472 +0300 @@ -12,7 +12,7 @@ ppc_rom.bin \ proll.elf -DEB_CONFIGURE_NORMAL_ARGS := --prefix=$(DEB_CONFIGURE_PREFIX) --enable-slirp +DEB_CONFIGURE_NORMAL_ARGS := --prefix=$(DEB_CONFIGURE_PREFIX) --cc=gcc-3.4 --enable-slirp DEB_MAKE_INSTALL_TARGET := install prefix=$(DEB_DESTDIR)/usr \ bindir=$(DEB_DESTDIR)/usr/bin \