bugManeage - Bugs: bug #58353, bsd/unistd.h configure fails

 
 

You are not allowed to post comments on this tracker with your current authentication level.

bug #58353: bsd/unistd.h configure fails

Submitted by:  Boud Roukema <boud>
Submitted on:  Mon 11 May 2020 04:15:59 PM UTC  
 
Category:  None Severity:  3 - Normal
Item Group:  None Status:  None
Privacy:  Public Assigned to:  None
Open/Closed:  Closed

Wed 13 May 2020 05:58:34 PM UTC, comment #5: 

I did separate clean builds on commits:

  • 8266607 - the only slow build was gcc
  • b1e1522 - the only slow build was gcc, but it was faster than in 8266607
  • 96a299b - the only slow build was gcc, but it was faster than in 8266607

All three builds finished fine. No sign of anything unusual with isl.

So I consider the revised bug to be irreproducible.

I still have a system in the state the reproduces the original bug; I'll try doing a clean build there too. But I think it's safe to close this bug for now. I'll re-open it if needed.

I agree that some sort of hardware hibernation type effect would have to explain the apparent 10-hour isl compile, which is irrelevant here.

Boud Roukema <boud>
Project Member
Tue 12 May 2020 10:45:39 PM UTC, comment #4: 

That is very strange! I just done a clean build and looking at the output of '--check-config', I see that isl was built in 1.5 minutes!

(Just a guess: maybe the computer went on hibernation at that time and re-started after it was turned on?)

Can you try deleting it and re-building to confirm if this always happens?

mv .local/version-info/proglib/isl ./
./project configure -e

It it takes more than five minutes, you can assume that it will take long again.

Mohammad Akhlaghi <makhlaghi>
Project Administrator
Tue 12 May 2020 06:04:34 PM UTC, comment #3: 

A clean build on one machine bypasses this problem, but took 11 hours:

-rw-r--r-- 1 myuser mygroup 46 May 12 13:37 gnuastro
-rw-r--r-- 1 myuser mygroup 21 May 12 13:34 ghostscript
-rw-r--r-- 1 myuser mygroup 27 May 12 13:33 gsl
-rw-r--r-- 1 myuser mygroup 15 May 12 13:29 libgit2
-rw-r--r-- 1 myuser mygroup 11 May 12 13:28 wcslib
-rw-r--r-- 1 myuser mygroup 13 May 12 13:28 cmake
-rw-r--r-- 1 myuser mygroup 15 May 12 13:28 libtiff
-rw-r--r-- 1 myuser mygroup 13 May 12 13:27 cfitsio
-rw-r--r-- 1 myuser mygroup 14 May 12 13:27 libpng
-rw-r--r-- 1 myuser mygroup 12 May 12 13:27 libjpeg
-rw-r--r-- 1 myuser mygroup 36 May 12 13:26 gcc
-rw-r--r-- 1 myuser mygroup 18 May 12 13:04 binutils
-rw-r--r-- 1 myuser mygroup 39 May 12 13:03 mpc
-rw-r--r-- 1 myuser mygroup 36 May 12 13:02 metastore
-rw-r--r-- 1 myuser mygroup 14 May 12 13:02 gawk
-rw-r--r-- 1 myuser mygroup 53 May 12 13:02 mpfr
-rw-r--r-- 1 myuser mygroup 29 May 12 12:59 isl
-rw-r--r-- 1 myuser mygroup 48 May 12 02:48 gmp
-rw-r--r-- 1 myuser mygroup 11 May 12 02:47 git
-rw-r--r-- 1 myuser mygroup 12 May 12 02:44 curl
-rw-r--r-- 1 myuser mygroup 20 May 12 02:43 findutils
-rw-r--r-- 1 myuser mygroup 16 May 12 02:43 wget
-rw-r--r-- 1 myuser mygroup 13 May 12 02:43 grep
-rw-r--r-- 1 myuser mygroup 18 May 12 02:43 diffutils
-rw-r--r-- 1 myuser mygroup 12 May 12 02:42 sed
-rw-r--r-- 1 myuser mygroup 13 May 12 02:42 libbsd
-rw-r--r-- 1 myuser mygroup 10 May 12 02:42 file
-rw-r--r-- 1 myuser mygroup 15 May 12 02:42 which
-rw-r--r-- 1 myuser mygroup 19 May 12 02:42 coreutils
-rw-r--r-- 1 myuser mygroup 16 May 12 02:40 bash
-rw-r--r-- 1 myuser mygroup 19 May 12 02:40 gettext
-rw-r--r-- 1 myuser mygroup 18 May 12 02:31 glibtool
-rw-r--r-- 1 myuser mygroup 14 May 12 02:31 m4
-rw-r--r-- 1 myuser mygroup 16 May 12 02:30 texinfo
-rw-r--r-- 1 myuser mygroup 12 May 12 02:29 perl
-rw-r--r-- 1 myuser mygroup 15 May 12 02:29 openssl
-rw-r--r-- 1 myuser mygroup 18 May 12 02:29 libiconv
-rw-r--r-- 1 myuser mygroup 24 May 12 02:29 libunistring
-rw-r--r-- 1 myuser mygroup 14 May 12 02:28 libxml2
-rw-r--r-- 1 myuser mygroup 18 May 12 02:28 pkg-config
-rw-r--r-- 1 myuser mygroup 17 May 12 02:23 readline
-rw-r--r-- 1 myuser mygroup 16 May 12 02:23 ncurses
-rw-r--r-- 1 myuser mygroup 14 May 12 02:22 patchelf
-rw-r--r-- 1 myuser mygroup 13 May 12 02:22 make
-rw-r--r-- 1 myuser mygroup 13 May 12 02:22 tar
-rw-r--r-- 1 myuser mygroup 14 May 12 02:21 gzip
-rw-r--r-- 1 myuser mygroup 10 May 12 02:21 unzip
-rw-r--r-- 1 myuser mygroup 10 May 12 02:20 lzip
-rw-r--r-- 1 myuser mygroup 12 May 12 02:20 bzip2
-rw-r--r-- 1 myuser mygroup 12 May 12 02:20 zlib
-rw-r--r-- 1 myuser mygroup 15 May 12 02:20 xz
-rw-r--r-- 1 myuser mygroup  8 May 12 02:19 zip
-rw-r--r-- 1 myuser mygroup  0 May 12 02:18 low-level-links
-rw-r--r-- 1 myuser mygroup 21 May 12 02:18 flock

This default includes gnuastro in TARGETS.conf .

The literal interpretation of the timestamps is that isl took 10 hours to compile, which seems ridiculous! This timing is not quite accurate, since the compilations are done in parallel. But to me this sounds like something is wrong with the compilation, apparently with isl = https://www.gnu.org/software/libc/manual/html_node/Integers.html Maybe a closed loop of dependencies which in the end is broken by a random event?

I'm trying fresh builds of earlier commits. Commit 8266607 does not block at isl .

It's unclear if this 10-hour compile of isl is related to the original bug report, but for the moment I think we can keep this as one bug, but I'm downgrading from blocker to normal . A 10-hour compilation is most likely a waste of cpu time, but it doesn't literally block compilation.

Boud Roukema <boud>
Project Member
Mon 11 May 2020 09:03:10 PM UTC, comment #2: 

Is this on a new system? These are pretty low-level tools and were successfully built in your previous trials of Maneage, so given that we haven't changed anything basic, I am a little confused why they have crashed now.

If it is the same system, do they happen after a clean build?

Mohammad Akhlaghi <makhlaghi>
Project Administrator
Mon 11 May 2020 04:21:01 PM UTC, comment #1: 

The log is at: this framadrop URL.

Boud Roukema <boud>
Project Member
Mon 11 May 2020 04:15:59 PM UTC, original submission:  

DESCRIPTION:

With commit 96a299b, the reconfigure

./project configure --existing-conf

fails with ./project --check-config listing

curl-7.65.3  libbsd-0.9.1  wget-1.20.3

The first error is for libbsd :

    546 checking for limits.h... In file included from ../include/bsd/getopt.h:29,
    547                  from /usr/include/unistd.h:873,
    548                  from ../include/bsd/unistd.h:29,
    549                  from setproctitle_ctor.c:27:
    550 ../include/bsd/unistd.h: In function 'setproctitle':
    551 ../include/bsd/unistd.h:68:2: error: expected declaration specifiers before '__printflike'
    552    68 |  __printflike(1, 2);
    553       |  ^~~~~~~~~~~~

Another error is that openssl cannot be found by the wget configure rule:

  28563 checking for dlopen in -ldl... config.status: creating lib/curl_config.h
  28564 config.status: executing depfiles commands
  28565 yes
  28566 checking for libssl... no
  28567 configure: error: --with-ssl=openssl was given, but SSL is not available.
  28568 reproduce/software/make/basic.mk:896: recipe for target '/mnt/tmpbuild/software/installed/version-info/proglib/wget' failed
  28569 make: *** [/mnt/tmpbuild/software/installed/version-info/proglib/wget] Error 1

A log file is attached.

HYPOTHESIS:

This sounds very much like a library/include path issue in both cases, in which case it would be related to bug https://savannah.nongnu.org/bugs/?58351 .

A clue to this is that /usr/include/unistd.h has around line 873:

    872 # define __need_getopt
    873 # include <getopt.h>
    874 #endif

so there seems to be a mix of libbsd's own versions of files and the host system's choices of files being successively included.

Solving this needs knowing which packages are to be compiled starting with the host system tools, which should be purely internally created within maneage (for maximum reproducibility), and which should be a blend between these.

Boud Roukema <boud>
Project Member

 

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by makhlaghi (Posted a comment)
  • -email is unavailable- added by boud (Submitted the item)
  •  

    Do you think this task is very important?
    If so, you can add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.

     

     

     

    Follow 2 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2020-05-13 boud Open/ClosedOpen => Closed
    2020-05-12 boud Severity5 - Blocker => 3 - Normal

    Back to the top


    Powered by Savane 3.6