View previous topic :: View next topic |
Author |
Message |
aciliketcap n00b
Joined: 25 Jun 2012 Posts: 2
|
Posted: Mon Jun 25, 2012 12:10 pm Post subject: unable to emerge qemu because of texi2html error (Solved) |
|
|
Hi,
I tried to emerge qemu (app-emulation/qemu-0.11.1) but it fails while compiling the source in an interesting step. It seems to be failing while generating documentation, qemu-doc.html via texi2html program. Here is the part of emerge output:
Code: | >>> Compiling source in /var/tmp/portage/app-emulation/qemu-0.11.1/work/qemu-0.11.1 ...
make -j1
CC qemu-nbd.o
CC qemu-tool.o
CC tool-osdep.o
CC cutils.o
CC cache-utils.o
CC qemu-malloc.o
CC qemu-option.o
CC module.o
CC nbd.o
CC block.o
CC aio.o
CC aes.o
CC posix-aio-compat.o
CC block/cow.o
CC block/qcow.o
CC block/vmdk.o
CC block/cloop.o
CC block/dmg.o
CC block/bochs.o
CC block/vpc.o
CC block/vvfat.o
CC block/qcow2.o
CC block/qcow2-refcount.o
CC block/qcow2-cluster.o
CC block/qcow2-snapshot.o
CC block/parallels.o
CC block/nbd.o
CC block/raw-posix.o
CC block/curl.o
LINK qemu-nbd
CC qemu-io.o
CC cmd.o
LINK qemu-io
GEN qemu-img-cmds.h
CC qemu-img.o
LINK qemu-img
GEN qemu-options.texi
GEN qemu-monitor.texi
GEN qemu-img-cmds.texi
GEN qemu-doc.html
Option number is ambiguous (number-footnotes, number-sections)
Try `texi2html --help' for more information.
make: *** [qemu-doc.html] Error 2
emake failed
|
After that emerge gives the usual "package compile failed" output.
I don't need documentation, so I can edit the makefiles, remove all lines containing texi2html (and not break whole makefile hopefully) but that can be messy.
Is there anyone else having the same problem? May be this should be reported to manager of the qemu package.
I am using 5.0-r1 version of texi2html. I didn't tried to compile with an older version (I also don't exactly know how, since qemu depends on this version I think)
What should I do? What would you do in a similar situation?
Thanks,
Sinan Akpolat
Last edited by aciliketcap on Tue Jun 26, 2012 7:36 am; edited 1 time in total |
|
Back to top |
|
|
SamuliSuominen Retired Dev
Joined: 30 Sep 2005 Posts: 2133 Location: Finland
|
Posted: Mon Jun 25, 2012 12:50 pm Post subject: |
|
|
texi2html argument "-number" should be replaced with argument "-number-sections"
so i'd patch the source to use the correct argument, get an diff out of it, and post a bug with the patch attached in https://bugs.gentoo.org/ if the failing package is from portage |
|
Back to top |
|
|
aciliketcap n00b
Joined: 25 Jun 2012 Posts: 2
|
Posted: Mon Jun 25, 2012 5:27 pm Post subject: |
|
|
Thank you, that really solved my problem.
I fetched and unpacked the ebuild and changed the Makefile. It was just one line.
Code: | $(call quiet-command,texi2html -I=. -monolithic -number $<," GEN $@") |
So I filed a bug report, explaining the problem and solution is to change that line.
I didn't check the doc file though. I hope -number-sections parameter gives the correct result. (not that I will need it) |
|
Back to top |
|
|
zwheel n00b
Joined: 07 Mar 2008 Posts: 8 Location: Toledo, OH
|
Posted: Wed Oct 10, 2012 6:48 pm Post subject: How to duplicate your sollution |
|
|
How did you fix it?
I tried going directly into the work folder and changing the Makefile. That doesn't work because it just writes over it. I'm guessing the configure step does that? Or does portage re-untar each time. I don't see a Makefile.in and searching all the text files for occurances of "-number" doesn't find me anything interesting other than in Makefile itself.
Next I tried making a patch file for it. I copied Makefile to Makefile.old. The I edited Makefile and ran diff -u. the Resulting file of course had Makefile.old in it so I edited the .old out. I copied the ebuild and patch files to my local repository and renamed the ebuild to 0.11.1-r2. First I tried referencing my patch file in the src_prepare section. Patch can't find the Makefile! I looked at the other patch files that come with qemu. I see some have a and b in front of their paths. I guessed that portage must have 'in and out' directories then for when it patches files? Making my paths a/Makefile and b/Makefile didn't help. Another patch file seemed to use a different method, it included the folder name and included a '.old' extension at the end of one of them. How can that work, two ways of doing things? I tried this and it still didn't work for me.
I thought maybe Makefile doesn't exist until after configure runs, that makes sense to me although I'm not sure since i didn't see any Makefile.in. I moved my epatch call to just after the configure call in src_configure. Then I tried the plain, a/b/ and .old stuff all over again. It still doesn't work. I did a little searching but I can't find a clear and concise description of how to add patch files to an ebuild, or particularly how to make patch find the file you want to patch. Maybe if I dug deeper into the long documents... Mostly all I found was how to use the epatch function, I didn't find anything about paths.
I know this version of qemu is old now but I have an older computer which cannot run KVM. I don't have virtualization extensions in my processor. QEMU without KQEMU is too slow on my computer, it is pretty useless. This means I can't use any Qemu v 0.12 or newer. I'd be very grateful just for a way to make it work on my own computer. Even nicer would be a patch in bugzilla which the package maintainers actually pick up and integrate. It would be nice to have one last 0.11.x version of QEMU in portage and actually buildable for a while longer for anybody else who also has an older processor.
Thanks for any help!
Here's my pastebin data:
http://pastebin.com/yRN8DPJm
I didn't paste the whole files because I'm working through ssh and it is hard to select the whole file (more than fits on screen) anyway. What I posted of the ebuild is all that I have changed from the original anyway... well, that and changing r1 to r2 in the header |
|
Back to top |
|
|
Jaglover Watchman
Joined: 29 May 2005 Posts: 8291 Location: Saint Amant, Acadiana
|
|
Back to top |
|
|
|