Bug 50436 - "make install" fails; ERROR: Missing files
Summary: "make install" fails; ERROR: Missing files
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Installation (show other bugs)
Version:
(earliest affected)
4.0.4.2 release
Hardware: x86 (IA32) Linux (All)
: medium critical
Assignee: David Tardon
URL:
Whiteboard: target:4.2.0
Keywords:
Depends on:
Blocks:
 
Reported: 2012-05-28 13:08 UTC by Davin McCall
Modified: 2014-12-08 02:46 UTC (History)
4 users (show)

See Also:
Crash report or crash signature:


Attachments
Log of failed "make install" (16.89 KB, text/plain)
2012-05-28 13:08 UTC, Davin McCall
Details
Log of failed "make" run with LibreOffice 4.0.4.2 (5.48 KB, text/plain)
2013-06-24 12:52 UTC, Davin McCall
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Davin McCall 2012-05-28 13:08:06 UTC
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.
Comment 1 Davin McCall 2012-05-28 13:14:35 UTC
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.
Comment 2 Davin McCall 2012-06-03 13:25:34 UTC
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).
Comment 3 Joel Madero 2012-07-15 19:41:20 UTC
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.
Comment 4 Davin McCall 2012-07-23 15:36:23 UTC
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.
Comment 5 Joel Madero 2012-07-23 17:50:04 UTC
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.
Comment 6 bfoman (inactive) 2012-11-27 20:15:35 UTC
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.
Comment 7 Davin McCall 2012-11-30 15:34:26 UTC
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.
Comment 8 bfoman (inactive) 2012-12-18 13:39:51 UTC
(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.
Comment 9 Davin McCall 2012-12-18 22:21:03 UTC
(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.
Comment 10 Davin McCall 2012-12-18 22:24:49 UTC
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.
Comment 11 Davin McCall 2013-06-24 12:51:47 UTC
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.
Comment 12 Davin McCall 2013-06-24 12:52:43 UTC
Created attachment 81335 [details]
Log of failed "make" run with LibreOffice 4.0.4.2
Comment 13 Davin McCall 2013-06-24 13:58:06 UTC
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.
Comment 14 Joel Madero 2013-06-25 23:08:30 UTC
Requesting additional input on this one
Comment 15 Cor Nouws 2013-06-27 20:38:37 UTC
@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
Comment 16 Davin McCall 2013-06-27 23:41:08 UTC
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?
Comment 17 Cor Nouws 2013-06-28 07:55:53 UTC
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,
Comment 18 David Tardon 2013-08-09 09:56:33 UTC
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.
Comment 19 Commit Notification 2013-08-09 10:08:20 UTC
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.
Comment 20 Luke 2014-12-08 02:46:28 UTC
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