bugGNU Octave - Bugs: bug #45230, Failed to build packages: control,...

 
 

bug #45230: Failed to build packages: control, general, image with g++5.1

Submitted by:  -Deleted Account- <ckp>
Submitted on:  Mon 01 Jun 2015 09:38:52 PM UTC  
 
Category: Octave Forge PackageSeverity: 3 - Normal
Priority: 5 - NormalItem Group: Build Failure
Status: Works For MeAssigned to: None
Originator Name: Open/Closed: Closed
Release: 4.0.0Operating 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 Jump to the original submission)

Tue 02 Jun 2015 04:09:29 PM UTC, comment #7:

Retagging release from 4.0.0-rc4 to 4.0.0.

John W. Eaton <jwe>
Project Administrator
Tue 02 Jun 2015 03:20:14 PM UTC, comment #6:

Small correction, to build Octave, you would pass CPPFLAGS=.... to the configure command line, so like I said in comment #1, build Octave with

and then you won't have to set it in your environment for further Octave package installs because Octave will already be passing it along.

Mike Miller <mtmiller>
Project Administrator
Tue 02 Jun 2015 03:18:18 PM UTC, comment #5:

Yes, but keep in mind that all C++ code must be built with the same ABI. So if at some point in the future your distro starts using the new ABI, then you can drop that macro.

I first ran into this trying to build Octave with gcc 5.1 and it complained about missing symbols in the GraphicsMagick++ library, which is C++ but is built for my distro with the old ABI, so I had to also build Octave with the old ABI. At some point I'm sure that will change and I'll have to start building Octave with the new ABI.

Closing report as resolved.

Mike Miller <mtmiller>
Project Administrator
Tue 02 Jun 2015 03:00:05 PM UTC, comment #4:

Thank you that was useful and managed to build the packages: general, control and signal. Though the image package still fails with similar errors. As you suspected the octave-4.0.0-rc4 was built with an older g++ compiler (I think 4.6) and afterwards installed the g++5.1 which I use now. I suppose would have to re-build the octave from start with the new g++5.1 compiler, and with the flag "setenv CPPFLAGS -D_GLIBCXX_USE_CXX11_ABI=0".

-Deleted Account- <ckp>
Tue 02 Jun 2015 03:06:30 AM UTC, comment #3:

If you don't want to rebuild Octave, try

in the Octave interpreter before running mkoctfile or pkg install.

I suspect that you built Octave with a version of gcc that defaulted to the old ABI version, but your current gcc defaults to the new ABI. I suspect this transition will affect a lot of people.

Mike Miller <mtmiller>
Project Administrator
Mon 01 Jun 2015 10:51:16 PM UTC, comment #2:

Thank you for your comment.
I would appreciate if you could tell me please how to set that flag ( _GLIBCXX_USE_CXX11_ABI = 0) for the case of building a forge-package, as I would try first to build the forge-package with that flag and if not successful, I would rebuild octave with the new flag.

It is not very obvious (also from the link: https://www.gnu.org/software/octave/doc/interpreter/Installing-and-Removing-Packages.html), how to set the CPPFLAGS flag in the command "pkg install <package-name>". Thank you.

-Deleted Account- <ckp>
Mon 01 Jun 2015 09:51:26 PM UTC, comment #1:

Thanks for your bug report. I believe the errors you are seeing are due to the recent C++ ABI change in gcc, see https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html.

Try building Octave and/or Octave Forge packages with the _GLIBCXX_USE_CXX11_ABI macro set to 0. For example I now build Octave with

This is stored in Octave and passed along to subsequent builds of oct-files using mkoctfile or pkg install. I do not have the undefined symbol errors you are seeing with this macro defined.

Mike Miller <mtmiller>
Project Administrator
Mon 01 Jun 2015 09:38:52 PM UTC, original submission:

Any octave-forge-package that I tried failed to build. I tried the following 3 packages:

general-2.0.0.tar.gz
control-2.8.1.tar.gz
image-2.4.0.tar.gz

C++ Compiler:
$ g++ --version
g++ (GCC) 5.1.0
Copyright (C) 2015 Free Software Foundation, Inc.

Operating system:
Scientific Linux 2.6.32-431.el6.i686

Error messages:

>> pkg install general-2.0.0.tar.gz

.../octave/general-2.0.0/i686-pc-linux-gnu-api-v50+/SHA1.oct: failed to load: .../octave/general-2.0.0/i686-pc-linux-gnu-api-v50+/SHA1.oct: undefined symbol: _ZNK5ArrayINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEE17resize_fill_valueEv
error: called from 'doc_cache_create>create_cache' in file .../octave/rc4_160515/octave-4.0.0-rc4/scripts/help/doc_cache_create.m near line 102, column 18

>> pkg install control-2.8.1.tar.gz

.../octave/control-2.8.1/i686-pc-linux-gnu-api-v50+/__control_slicot_functions__.oct: failed to load: .../octave/control-2.8.1/i686-pc-linux-gnu-api-v50+/__control_slicot_functions__.oct: undefined symbol: _ZNK5ArrayINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEE17resize_fill_valueEv
error: called from 'doc_cache_create>create_cache' in file .../octave/rc4_160515/octave-4.0.0-rc4/scripts/help/doc_cache_create.m near line 102, column 18

For pkg install image-2.4.0.tar.gz, the errors are similar with
the bug #45096: image package: imreconstruct FTBFS with g++ 5.1

-Deleted Account- <ckp>

 

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

Attach File(s):
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -unavailable- added by jwe (Posted a comment)
  • -unavailable- added by mtmiller (Posted a comment)
  • -unavailable- added by ckp (Submitted the item)
  •  

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

    Only project members can vote.

     

    Please enter the title of George Orwell's famous dystopian book (it's a date):

     

     

    Follow 3 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Tue 02 Jun 2015 04:09:29 PM UTCjweRelease4.0.0-rc4=>4.0.0
    Tue 02 Jun 2015 03:18:18 PM UTCmtmillerOpen/ClosedOpen=>Closed
    Mon 01 Jun 2015 09:51:26 PM UTCmtmillerStatusNone=>Works For Me

    Back to the top


    Powered by Savane 3.1-cleanup1