Created attachment 62180 [details] Log of failed "make install" LibreOffice 3.5.3.2 fails to install after a successful build. I configure with: ./configure --prefix=/package/libreoffice-3.5.3.2 --disable-odk --disable-python --with-system-cairo --with-system-zlib --with-system-openssl --with-system-jpeg --with-system-expat --with-system-libxml --disable-gnome-vfs --without-java I run "make". It appears to do the 'configure' part again, at the end giving: checking whether to build with Java support... yes checking for java... /opt/jdk1.7.0_04/bin/java checking the installed JDK... checked (JDK 1.7.0_04) checking for target Java bytecode version... 1.7 configure: error: 1.7 is not a supported Java bytecode version! At this point "make" bombs out. I know what you're thinking, right? - "he said no java, what's all this guff about Java?" At least that's what *I* was thinking. Get this - I run configure again, exactly the same as before. Then I run "make" again. And *this time it works*. It actually builds (well, after several hours - but yeah, it builds, successfully). What the heck? I didn't actually change *anything*, I just re-ran configure, re-ran make, and this time no error. This is repeatable - that is, if I wipe everything, unpack the core tarball, and do the configure/make combo - I get the same error, and can get around it with the same strategy. So, this is weird, and indicative of something screwy, but it builds, so what the hey. However, I can't install the dang thing. "make install" gives the output shown in the attached log. Something about missing files... I don't know what's going on, but frankly if "make" succeeds it's pretty screwy that "make install" doesn't.
After poking around a bit, I've discovered there are source tarballs for a later version - 3.5.4.2. The main libreoffice.org site still directs to 3.5.3.2 by default, though ("Downloads", "source code") - can I suggest fixing that? Especially as the 'version selection' page says that 3.5.4.2 is the 'recommended' version. I'll try building it and report back.
I've gotten a bit further with this. I can avoid the need to run configure a second time by running 'autogen.sh' instead of configure (and passing it arguments for configure). It seems that configure will itself run autogen.sh, if that hasn't already been done, but neglects to pass appropriate arguments. This seems like a bug to me. Also, my 'tar' was apparently too old to be able to unpack the .xz files that some of the downloaded source is distributed as. I've rectified this now; hopefully I'm on my way to a successful build (but it remains to be seen). This seems like a bug too; the build should have aborted when the source files couldn't be extracted, rather than just continuing on and yielding an apparently 'successful' build. The build documentation for this software is woeful (and barely existent).
http://wiki.documentfoundation.org/Development/Native_Build I actually think the documentation for building is pretty solid but feel free to edit the wiki and make it better.
Frankly, I'd be worried that I'd be spreading misinformation. I eventually stumbled through a process that seemed to build a working libreoffice but so much of it is voodoo, I don't know why it works. I downgraded gcc for example but I'm not sure if that was really necessary or not and I'm hesitant to recommend it to anyone else. I used a certain combination of configure options and I'm not sure which were really necessary (nor even what effect they all have). Main questions are: what's the deal with the different tarballs (-binfilter, -core, -dictionaries etc)? - which ones do I need? I seemed to manage just by downloading the -core, but I don't understand if that means I'm missing out on something. The build docs you linked to don't talk about building from source tarballs at all. If I download tars other than -core, do I need to build them separately or can I do something else to get them included in the build process? Also: what do the various configure options *really* do? I mean if I --disable-mozilla for instance, what functionality does that affect? I'd happily contribute to the wiki but I just don't have the answers. Your suggestion is, to be frank, a bit patronizing. Regardless, there are some real bugs evident in the build process, as documented in comments above.
By far the easiest build method is using the git method described in the wiki. As far as my comment being patronizing, I apologize, didn't mean that at all. Simply put we are a group of volunteers that try to make things clear, if something is unclear for a user and they feel like it can be corrected, they can and should correct it. Getting on the chat and asking specific questions can get you live feedback often which is helpful for new users. On my side, I can say that the build process is incredibly straight forward (again just for me) so I wouldn't be helpful changing it as I think the current directions are really good. Most everything is in the core tarball but there area few things that are kept outside of the core, as for why, no clue I'm sure someone else can tell you. You're fine with just the core, dictionaries are for the dictionary packages (which it's up to you if you want), the other package I really don't know what it's for and I don't have it installed. For each module, the documentation isn't the greatest as to what it would add. For mozilla it adds the ability to import address book from thunderbird and a couple other minor features. My understanding is that we're trying to purge mozilla completely and add the features in other modules. Because we're a team of volunteers, a lot of things is a matter of persistence of the contributor. I had a relatively hard time at the beginning but thankfully, most users, and a few in particular, have done a lot to help me through the baby steps at the beginning.
Davin: a lot of this is changed for 4.0, so if you do not want to "spread misinformation" I'd suggest to close this bug as informations are getting outdated rather quickly. You can find all distro release configs at http://cgit.freedesktop.org/libreoffice/core/tree/distro-configs. Documentation is available at: http://wiki.documentfoundation.org/Development/Native_Build http://wiki.documentfoundation.org/Development/Linux_Build_Dependencies http://wiki.documentfoundation.org/Development/How_to_build/Configure_options Answers for most of your questions are on libreoffice@lists.freedesktop.org Dev mailing list and you are always welcomed to post more of them. If you agree - please close this one. Thanks. P.S. Contribution to wiki pages is always welcomed.
bfoman: Well, the bug is primarily about "make install" failure. The cause of that was a too-old version of tar, as per comments above, which I think should either be identified or at least cause a build error during "make" processing. I can check whether this has been fixed and will do so soon; if so I'll close the bug, although no-ones even confirmed it yet, so there's little evidence at this point that anything's been done about it. As for the other things you mention: - "Native Build" page doesn't say how to build from release tarballs, and it doesn't seem to be documented anywhere which tarballs I need - distro-configs are potentially useful but also not mentioned in build documentation - "Configure options" page doesn't say what the configure options actually affect. For instance, --disable-mozilla LibO usually includes a strangely hacked up mozilla binary for your platform, to build without this version, use this option. What functionality is affected by this, though? (yes, partially answered by Joel above, but not documented). Also, the text is ambiguous - "to build without this version, use this option" - does that mean if I use this option, it will build with some other version? - a mailing list is not documentation! - sure, next time I build I may try to update the wiki to include information on building from tarballs and point to the distro configs. Thanks.
(In reply to comment #7) > processing. I can check whether this has been fixed and will do so soon; if > so I'll close the bug, NEEDINFO - as we are waiting for your input.
(In reply to comment #8) > NEEDINFO - as we are waiting for your input. Still occurs with 3.6.4.3 in exactly the same manner. Using GNU tar 1.18 (without support for .xz compressed tarballs). "make" succeeds but should fail, "make install" fails with cryptic error.
I see there are 4.0-beta tarballs available, let me give those a spin too. Might be a few days before I can get to it.
The situation is improved, though still not ideal, with LibreOffice 4.0.4.2. The call to untar the libreoffice-dictionaries fails with tar 1.18, yet the build doesn't abort immediately, and fails at a later stage. Build log attached (this was the second run of "make" after the first failed, and so is somewhat more compact). I really think the build should fail as soon as the tarball extraction fails.
Created attachment 81335 [details] Log of failed "make" run with LibreOffice 4.0.4.2
Note I actually still get the build error with tar 1.26, which supports extraction of .xz files (and successfully extracts the libreoffice-dictionaries tarball). It seems the build expects the 'dictionaries' folder to exist in the source root, whereas it in fact exists in 'src/libreoffice-4.0.4.2' inside the source root.
Requesting additional input on this one
@david: if your build (result) fails: going to irc or the dev-list is the best IMO. Hope you can do that: full expert and fast help avaiable there :) Succes with building & so more! Cor
Cor, I appreciate the advice, but I'm not here (anymore) to get help on building, rather to report an issue. I can build successfully with some workarounds (in reference to the problem in my previous comment, I just created a couple of symbolic links and all was fine). I don't see how you can possibly classify this as "not a bug". To re-iterate: the build does not abort when un-tarring the downloaded external sources fails. Do you not want reports of problems with the build system / release tarballs?
Hi David, (In reply to comment #16) > Cor, I appreciate the advice, but I'm not here (anymore) to get help on > building, rather to report an issue. I can build successfully with some Maybe I did not get your report and the goal wel enough. To be honust: I did not read it quite extensive. But knowing, seeing, at which speed developers improve & change all build-related stuff, I have the idea that a report that lies here for more than a year, is not at the right place. I may be wrong though. So I reopen. for others to reconsider. Regards,
This seems to be a conglomerate of build issues that might or might not be present yet. I will not try to untangle that. Instead, I will pretend that the problem is that build does not fail if unpacking of a source tarball fails... If you have other problems, please open a separate bug for every one of them.
David Tardon committed a patch related to this issue. It has been pushed to "master": http://cgit.freedesktop.org/libreoffice/core/commit/?id=5621aa6b5cc5151eebc8b7cc591ebd25cd23307f fdo#50436 fail if unpacking of tarball failed The patch should be included in the daily builds available at http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: http://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
If DevnerCoder9 shows up here trying to build LO from 2012 or earlier with the following error: /dictionaries/Module_dictionaries.mk: No such file or directory Makefile:17: *** Corrupted module target stack! . Stop. You need to # ln -s clone/dictionaries dictionaries # ln -s clone/help help