bugGNU Octave - Bugs: bug #50266, [mxe-octave] incremental builds...

 
 

bug #50266: [mxe-octave] incremental builds fail and require "make clean"

Submitted by:  Rik <rik5>
Submitted on:  Thu 09 Feb 2017 06:28:23 PM UTC  
 
Category:  Configuration and Build System Severity:  3 - Normal
Priority:  4 Item Group:  Build Failure
Status:  Confirmed Assigned to:  None
Originator Name:  Open/Closed:  Open
Release:  dev Operating System:  GNU/Linux

Add a New Comment(Rich Markup)
   

You are not logged in

Please log in, so followups can be emailed to you.

 

( Jump to the original submission)

Wed 06 Sep 2017 11:46:48 PM UTC, comment #8:

Just noting that this may only affect some of the "build-foo" targets. I can safely do an incremental build when one of the later dependencies is updated. For example if I touch src/qt5.mk and run make, it rebuilds only qt5 and subsequent targets, including default-octave.

I've also been able to do a full clean rebuild by simply deleting all of the stamp files under installed-packages and running make.

I wonder if it may be only some of the early "build-foo" targets that need to be built in a cohort and may not have proper dependency relationships declared.

Does someone want to dig into making these targets rebuild properly, or can we close this won't fix?

Mike Miller <mtmiller>
Project Administrator
Tue 11 Apr 2017 03:09:37 PM UTC, comment #7:

Currently, I think the only reliable way to do an incremental build is the slow "make clean; make" route. Anything else could leave obsolete files in the install tree (usr/...).

We do maintain lists of installed files for each package (look in the installed-packages directory) and are even creating tar files of the files installed by each package (look in the built-packages directory). But these files are not used to keep the installed files in usr/... up to date.

One solution would be to use the file lists to remove previously installed files. Fixing this would require changing the rules for installing packages. This change is probably not too difficult.

Another would be to install the binary packages from built-packages/ to usr/ if they are up to date. This would be a nice option to have because it would allow deleting everything in usr/ and then only building packages whose sources (or dependencies) have changed. I think we are close to having that capability, but the dependency chain is not quite right and somehow not all packages have corresponding built-packages/PKG.tar.xz files.

John W. Eaton <jwe>
Project Administrator
Tue 11 Apr 2017 07:46:53 AM UTC, comment #6:

Answer to https://savannah.gnu.org/bugs/?50266#comment5:
I can not download the m4 sources =>
wget ftp://ftp.gnu.org/pub/gnu/m4/m4-1.4.17.tar.gz
--2017-04-11 09:37:28-- ftp://ftp.gnu.org/pub/gnu/m4/m4-1.4.17.tar.gz
=> ‘m4-1.4.17.tar.gz’
Resolving ftp.gnu.org (ftp.gnu.org)... 208.118.235.20, 2001:4830:134:3::b
Connecting to ftp.gnu.org (ftp.gnu.org)|208.118.235.20|:21... failed: Connection timed out.
Connecting to ftp.gnu.org (ftp.gnu.org)|2001:4830:134:3::b|:21... failed: Network is unreachable.

Addendum to https://savannah.gnu.org/bugs/?50266#comment4:
On another computer with different network setting this error does not appear. So please delete/do not consider this comment.

-X- <sinac>
Mon 10 Apr 2017 03:33:53 PM UTC, comment #5:

looks like it isn't connected to the internet to download the m4 sources

Can you verify you can download?

wget ftp://ftp.gnu.org/pub/gnu/m4/m4-1.4.17.tar.gz

John Donoghue <lostbard>
Project Member
Mon 10 Apr 2017 02:35:11 PM UTC, comment #4:

Related to to https://savannah.gnu.org/bugs/?50266#comment3:

The suggested solution:

  1. make clean
  2. ./configure
  3. make (or make nsis-installer)

does not work in case of the error build-m4. I still get the same error after executing the suggested solution:
_Warning - could not find native build version 4.2.1 of octave - some packages may fail, but continuing
[download] build-m4

Wrong checksum of package build-m4!
------------------------------------------------------------
Connecting to s3.amazonaws.com (s3.amazonaws.com)|52.216.2.3|:80... connected.
HTTP request sent, awaiting response... 404 Not Found
2017-04-10 16:22:35 ERROR 404: Not Found.
--2017-04-10 16:22:35-- http://d1yihgixbnrglp.cloudfront.net/m4-1.4.17.tar.gz
Resolving d1yihgixbnrglp.cloudfront.net (d1yihgixbnrglp.cloudfront.net)... 13.32.16.41, 13.32.16.112, 13.32.16.76, ...
Connecting to d1yihgixbnrglp.cloudfront.net (d1yihgixbnrglp.cloudfront.net)|13.32.16.41|:80... connected.
HTTP request sent, awaiting response... 404 Not Found
2017-04-10 16:22:35 ERROR 404: Not Found.
------------------------------------------------------------
[log] /home/chiste/mxe-octave/log/build-m4-download

Makefile:832: recipe for target '/home/chiste/mxe-octave/installed-packages/build-m4' failed
make[1]: *** [/home/chiste/mxe-octave/installed-packages/build-m4] Error 1
make[1]: Leaving directory '/home/chiste/mxe-octave'
Makefile:553: recipe for target 'all' failed
make: *** [all] Error 2_

Used system: Ubuntu 16.04 LTS

-X- <sinac>
Fri 10 Feb 2017 02:53:24 PM UTC, comment #3:

I confirmed John D.'s hypothesis. The incremental build of MXE Octave occasionally will fail after certain packages source versions have been updated which triggers a partial build.

The resolution is simple, but very slow. Use "make clean" to clear out all the compiled code. Then run "./configure". Then run make to re-build the whole thing which takes a very long time.

Rik <rik5>
Project Administrator
Fri 10 Feb 2017 12:12:29 AM UTC, comment #2:

comment #1 is unrelated - it is just warning that it couldnt find a comptible natve octave, so octave forge packages 'may' fail.

I saw teh original issue on a machine a few days ago - doing build from a clean build didnt show the same issue (at least for me) so I am guessing there is some issue when rebuilding the build-gcc after it has already been built.

build-gcc would be rebuilt because build-xz was updated, even though it doesnt depend on it -

John Donoghue <lostbard>
Project Member
Thu 09 Feb 2017 07:28:15 PM UTC, comment #1:

Maybe this is related. After I run configure in the MXE directory, and then run make I get

Rik <rik5>
Project Administrator
Thu 09 Feb 2017 06:28:23 PM UTC, original submission:

The MXE Octave target is failing on the build-gcc target. The bottom of the build-gcc log file is:

I tried re-running make, I tried restricting JOBS to 1, but nothing worked.

Rik <rik5>
Project Administrator

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

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 mtmiller (Posted a comment)
  • -email is unavailable- added by jwe (Posted a comment)
  • -email is unavailable- added by sinac (Posted a comment)
  • -email is unavailable- added by lostbard (Posted a comment)
  • -email is unavailable- added by rik5 (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 project members can vote.

     

     

     

    Follow 4 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2017-09-06 mtmiller SummaryMXE-Octave fails incremental builds and requires "make clean" => [mxe-octave] incremental builds fail and require "make clean"
    2017-02-10 rik5 Priority5 - Normal => 4
    2017-02-10 rik5 StatusNone => Confirmed
        SummaryCannot build MXE-Octave #2 => MXE-Octave fails incremental builds and requires "make clean"

    Back to the top


    Powered by Savane 3.3