bugGNU Octave - Bugs: bug #55608, [MXE Octave] lib vs lib64

 
 

bug #55608: [MXE Octave] lib vs lib64

Submitter:  Guillaume <gyom>
Submitted:  Wed 30 Jan 2019 01:16:17 PM UTC
   
 
Category:  Configuration and Build System Severity:  3 - Normal
Priority:  5 - Normal Item Group:  Build Failure
Status:  Fixed Assigned to:  None
Originator Name:  Guillaume Open/Closed:  * Closed
Release:  * other Operating System:  * GNU/Linux
Fixed Release:  None Planned Release:  None
* Mandatory Fields

Add a New Comment Rich Markup
   

Jump to the original submission

Wed 06 Feb 2019 11:25:49 AM UTC, comment #12: 

Closing as fixed

John Donoghue <lostbard>
Group Member
Tue 05 Feb 2019 09:47:52 PM UTC, comment #11: 
John Donoghue <lostbard>
Group Member
Sun 03 Feb 2019 06:03:35 PM UTC, comment #10: 

If it isnt going to effect other builds, we could just unset in in the makefile like a group of other env vars already are

John Donoghue <lostbard>
Group Member
Sun 03 Feb 2019 03:50:38 PM UTC, comment #9: 

Is there anything we need to do in the MXE configuration to resolve this report ahead of the 5.1 release?  Or is this just a note for users of OpenSuSE, in which case the bug can be closed, but will always be searchable.

Rik <rik5>
Group administrator
Fri 01 Feb 2019 11:50:38 AM UTC, comment #8: 

Thanks to you both. I confirm that a full build ran fine after unsetting CONFIG_SITE, and --enable-lib64-directory had not to be used. A directory usr/lib64 was still created but it didn't seem to be an issue.


ls mxe-octave/usr/lib64
libcc1.la  libcc1.so  libcc1.so.0  libcc1.so.0.0.0


Guillaume <gyom>
Thu 31 Jan 2019 06:14:31 PM UTC, comment #7: 

I had added
unexport CONFIG_SITE

in Makefile.in and it got past gcc for me and only has a usr/lib directory, so that looks like its probally it

John Donoghue <lostbard>
Group Member
Thu 31 Jan 2019 01:53:12 PM UTC, comment #6: 

On SuSE Leap 15, this lib64 choice appears to be happening because of the config.site file that is installed by default.  My environment had a CONFIG_SITE variable set that caused it to be used.  So instead of configure defaulting to libdir=${exec_prefix}/lib, it was set to ${exec_prefix}/lib64.

I unset CONFIG_SITE and started a new build.  I'll report back when it finishes.

John W. Eaton <jwe>
Group administrator
Wed 30 Jan 2019 09:46:31 PM UTC, comment #5: 

If I get some spare time, I'll try openSUSE and take a look

John Donoghue <lostbard>
Group Member
Wed 30 Jan 2019 05:42:32 PM UTC, comment #4: 

Not using --enable-lib64-directory returns the same error with libraries still to be found in usr/lib64.

It seems to be a frequent issue with openSUSE. In the link below, it says that there would be a similar issue on Mac:
https://github.com/sparklemotion/nokogiri/issues/1562


Guillaume <gyom>
Wed 30 Jan 2019 05:18:11 PM UTC, comment #3: 

Maybe the issue is the --enable-lib64-directory. The only time I have used it was when building a native version of octave in mxe.

I havent tried suse, just fedora and ubuntu, on both my configure is:

./configure --enable-devel-tools --enable-windows-64=yes --enable-octave=stable --enable-64 --enable-binary-packages

Looking at the build, there is then only the lib, not a lib64 directory under usr

John Donoghue <lostbard>
Group Member
Wed 30 Jan 2019 04:23:34 PM UTC, comment #2: 

Yes, I use:


./configure --enable-octave=stable --enable-binary-packages --enable-devel-tools --enable-qt5 --disable-system-opengl --enable-windows-64 --enable-64 --enable-lib64-directory


With this, one gets an error when building gcc-cloog:


/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: cannot find -lisl


All the libraries are in usr/lib64 but looking at log/gcc-cloog:


checking our pkgconfig ldflags... -L/tmp/mxe-octave/usr/lib


If one creates a symbolic link lib -> lib64, cloog is successfully build but there will be further issues down the line with gcc.

Guillaume <gyom>
Wed 30 Jan 2019 02:11:34 PM UTC, comment #1: 

Did you try the --enable-lib64-directory option when running configure ?

John Donoghue <lostbard>
Group Member
Wed 30 Jan 2019 01:16:17 PM UTC, original submission:  

I am trying to build mxe-octave on openSUSE 15.0 and I come across a number of issues due to the fact that the built libraries are stored in usr/lib64 while they seem to be expected in usr/lib. Adding a symbolic link between them before the beginning of the built of any library allows me to proceed further (`mkdir usr; cd usr; ln -s lib64 lib`).

Other errors occurs later on due a similar issue with usr/x86_64-w64-mingw32/lib vs usr/x86_64-w64-mingw32/lib64 but it's harder to deal with as both directories are used and symbolic links become replaced by hard links when a built package installs its libraries.

This would mean that different packages use a different strategy to define where libraries are stored (/usr/lib vs /usr/lib64) for which openSUSE returns different answers. I could find a related discussion here:
https://stackoverflow.com/questions/9247769/

Guillaume <gyom>

 

(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 rik5 (Posted a comment)
  • -email is unavailable- added by jwe (Posted a comment)
  • -email is unavailable- added by lostbard (Posted a comment)
  • -email is unavailable- added by gyom (Submitted the item)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only group members can vote.

     

    Follow 2 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2019-02-06 lostbard StatusNone Fixed
        Open/ClosedOpen Closed

    Back to the top

    Powered by Savane 3.13-02a9.
    Corresponding source code