Opened 7 years ago

Closed 7 years ago

Last modified 7 years ago

#36445 closed defect (fixed)

atlas @3.10.0+universal fails to install after apparently compiling

Reported by: jsalort (Julien Salort) Owned by: Veence (Vincent)
Priority: Normal Milestone:
Component: ports Version: 2.1.2
Keywords: Cc:
Port: atlas

Description (last modified by mf2k (Frank Schima))

Installing atlas for x86_64 worked. However, I want a universal version. So I did:

% sudo port install atlas +universal
Password:
--->  Computing dependencies for atlas
--->  Fetching archive for atlas
--->  Attempting to fetch atlas-3.10.0_0+gcc45+universal.darwin_12.i386-x86_64.tbz2 from http://lil.fr.packages.macports.org/atlas
--->  Attempting to fetch atlas-3.10.0_0+gcc45+universal.darwin_12.i386-x86_64.tbz2 from http://mse.uk.packages.macports.org/sites/packages.macports.org/atlas
--->  Attempting to fetch atlas-3.10.0_0+gcc45+universal.darwin_12.i386-x86_64.tbz2 from http://packages.macports.org/atlas
--->  Fetching distfiles for atlas
Warning: GCC compilers on OS X do not support AVX instructions.
--->  Verifying checksum(s) for atlas
--->  Extracting atlas
--->  Applying patches to atlas
--->  Configuring atlas
--->  Building atlas
Error: reinplace: couldn't read file "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_math_atlas/atlas/work/atlas-3.10.0/build/lib/Makefile": no such file or directory
Error: org.macports.build for port atlas returned: reinplace sed(1) failed
Please see the log file for port atlas for details:
    /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_math_atlas/atlas/main.log
To report a bug, follow the instructions in the guide:
    http://guide.macports.org/#project.tickets
Error: Processing of port atlas failed

The log file says:

:info:build ATLAS install complete.  Examine 
:info:build ATLAS/bin/<arch>/INSTALL_LOG/SUMMARY.LOG for details.
:info:build make[1]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_math_atlas/atlas/work/atlas-3.10.0-i386/build'
:info:build /usr/bin/make clean
:info:build make[1]: Entering directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_math_atlas/atlas/work/atlas-3.10.0-i386/build'
:info:build rm -rf *.dSYM
:info:build rm -rf *.o x* config?.out *core*
:info:build make[1]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_math_atlas/atlas/work/atlas-3.10.0-i386/build'
:info:build make: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_math_atlas/atlas/work/atlas-3.10.0-i386/build'
:debug:build Executing proc-post-org.macports.build-build-0
:debug:build Executing reinplace: /usr/bin/sed {s|^LIBTOOL=.*$|LIBTOOL=$(GCC) $(GCCFLAGS)|} < /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_math_atlas/atlas/work/atlas-3.10.0/build/lib/Makefile >@ file10
:debug:build couldn't read file "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_math_atlas/atlas/work/atlas-3.10.0/build/lib/Makefile": no such file or directory
    while executing
"exec /usr/bin/sed {s|^LIBTOOL=.*$|LIBTOOL=$(GCC) $(GCCFLAGS)|} < /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_rele..."
    ("eval" body line 1)
    invoked from within
"eval exec $cmdline"
:error:build reinplace: couldn't read file "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_math_atlas/atlas/work/atlas-3.10.0/build/lib/Makefile": no such file or directory
:error:build org.macports.build for port atlas returned: reinplace sed(1) failed
:debug:build Error code: NONE
:debug:build Backtrace: reinplace sed(1) failed

(full log file attached)

So it seems that the actual compilation went fine...

Attachments (2)

main.log (3.6 MB) - added by jsalort (Julien Salort) 7 years ago.
main.2.log (6.6 MB) - added by jsalort (Julien Salort) 7 years ago.
Log for i386 only

Change History (12)

Changed 7 years ago by jsalort (Julien Salort)

Attachment: main.log added

comment:1 Changed 7 years ago by jsalort (Julien Salort)

Additionnally, if I build for i386 only, I get another error, in relation with gfortran:

:info:build cd RCW_tMp ; /opt/local/bin/gcc-mp-4.5 -fomit-frame-pointer -mfpmath=sse -O2 -fno-schedule-insns2 -msse3 -fPIC -m32 -fPIC -dynamiclib -o ../libsatlas.dylib \
:info:build         -install_name /opt/local/lib/libsatlas.dylib -current_version 3.10.0 \
:info:build         -compatibility_version 3.10.0 *.o -lpthread -lm /opt/local/lib/gcc45/libgfortran.dylib
:info:build ld: warning: ignoring file /opt/local/lib/gcc45/libgfortran.dylib, file was built for unsupported file format ( 0xcf 0xfa 0xed 0xfe 0x 7 0x 0 0x 0 0x 1 0x 3 0x 0 0x 0 0x 0 0x 6 0x 0 0x 0 0x 0 ) which is not the architecture being linked (i386): /opt/local/lib/gcc45/libgfortran.dylib
:info:build Undefined symbols for architecture i386:
:info:build   "__gfortran_compare_string", referenced from:
:info:build       _ilaenv_ in ilaenv.o
:info:build   "__gfortran_concat_string", referenced from:
:info:build       _cgesvd_ in cgesvd.o
:info:build       _chseqr_ in chseqr.o
:info:build       _cunmbr_ in cunmbr.o
:info:build       _cunmhr_ in cunmhr.o
:info:build       _cunmlq_ in cunmlq.o
:info:build       _cunmql_ in cunmql.o
:info:build       _cunmqr_ in cunmqr.o
:info:build       ...
:info:build   "__gfortran_pow_i4_i4", referenced from:
:info:build       _claed0_ in claed0.o
:info:build       _claed7_ in claed7.o
:info:build       _clalsa_ in clalsa.o
:info:build       _cstedc_ in cstedc.o
:info:build       _dlaed0_ in dlaed0.o
:info:build       _dlaed7_ in dlaed7.o
:info:build       _dlaeda_ in dlaeda.o
:info:build       ...
:info:build   "__gfortran_st_write", referenced from:
:info:build       _xerbla_ in xerbla.o
:info:build   "__gfortran_st_write_done", referenced from:
:info:build       _xerbla_ in xerbla.o
:info:build   "__gfortran_stop_numeric", referenced from:
:info:build       _xerbla_ in xerbla.o
:info:build   "__gfortran_transfer_character", referenced from:
:info:build       _xerbla_ in xerbla.o
:info:build   "__gfortran_transfer_integer", referenced from:
:info:build       _xerbla_ in xerbla.o
:info:build ld: symbol(s) not found for architecture i386
:info:build collect2: ld returned 1 exit status
:info:build make[1]: *** [dylib] Error 1
:info:build make: *** [shared_all] Error 2

Full log attached.

Changed 7 years ago by jsalort (Julien Salort)

Attachment: main.2.log added

Log for i386 only

comment:2 Changed 7 years ago by Veence (Vincent)

Your gcc has not been compiled with the universal flag set, which triggers the multilib option. In other words, your gfortran library is x86_64 only, wherefore you cannot build an i386 version. You must rebuild gcc.

Last edited 7 years ago by Veence (Vincent) (previous) (diff)

comment:3 in reply to:  2 Changed 7 years ago by jsalort (Julien Salort)

Replying to vince@…:

Your gcc has not been compiled with the universal flag set, which triggers the multilib option. In other words, your gfortran library is x86_64 only, wherefore you cannot build an i386 version. You must rebuild gcc.

I have compiled gcc45 with the universal variant:

port installed gcc*
The following ports are currently installed:
  gcc45 @4.5.4_6+universal (active)
  gcc47 @4.7.2_1+universal (active)
  gcc_select @0.1_7 (active)
  gccmakedep @1.0.2_3 (active)

And I have this:

ls /opt/local/lib/gcc45/i386/*gfortran*
/opt/local/lib/gcc45/i386/libgfortran.3.dylib
/opt/local/lib/gcc45/i386/libgfortran.a
/opt/local/lib/gcc45/i386/libgfortran.dylib
/opt/local/lib/gcc45/i386/libgfortran.la

Therefore, I don't think this is the answer...

comment:4 Changed 7 years ago by Veence (Vincent)

Hmmm… Pretty weird. There was some patch committed recently by someone else, I have to find out if this issue does not proceed from this.

comment:5 Changed 7 years ago by mf2k (Frank Schima)

Description: modified (diff)
Owner: changed from macports-tickets@… to vince@…
Port: atlas added

In the future, please use WikiFormatting, fill in the Port field and Cc the port maintainer(s).

comment:6 Changed 7 years ago by Veence (Vincent)

It is definitely tied to the patch that was committed a while ago. I’m diving into it, but it takes more time than I expected: since I had no time to work on Macports during the last few weeks, I have to catch up and it takes a while. I hope to be able to get something neat tonight.

comment:7 Changed 7 years ago by Veence (Vincent)

Should be fixed in r98544. Try again and tell me.

comment:8 Changed 7 years ago by Veence (Vincent)

Resolution: fixed
Status: newclosed

No response. I close the bug, please reopen it if anything is still wrong.

comment:9 in reply to:  7 Changed 7 years ago by jsalort (Julien Salort)

Replying to vince@…:

Should be fixed in r98544. Try again and tell me.

Sorry for the delay. I couldn't try before today. It seems fixed for me now. Thank you.

comment:10 Changed 7 years ago by Veence (Vincent)

Good news. Thanks for giving a try.

Note: See TracTickets for help on using tickets.