New Ticket     Tickets     Wiki     Browse Source     Timeline     Roadmap     Ticket Reports     Search

Ticket #30750 (closed defect: fixed)

Opened 22 months ago

Last modified 21 months ago

atlas @3.9.47: build fails on PPC G4 under Leopard

Reported by: razzfazz@… Owned by: jameskyle@…
Priority: Normal Milestone:
Component: ports Version: 2.0.1
Keywords: Cc: dersh@…, vince@…, trog24@…
Port: atlas

Description

When trying to update atlas on my PowerBook G4 under Leopard 10.5.8, I get the following build failure:

razzepb:~ dub$ port installed atlas
The following ports are currently installed:
  atlas @3.9.37_0+gcc44 (active)

razzepb:~ dub$ sudo port -cuv upgrade atlas
--->  Computing dependencies for atlas.
--->  Building atlas
[...]
make[7]: Entering directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_math_atlas/atlas/work/atlas-3.9.47/build/src/blas/gemm/KERNEL'
/usr/bin/gcc -DL2SIZE=4194304 -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_math_atlas/atlas/work/atlas-3.9.47/build/include -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_math_atlas/atlas/work/atlas-3.9.47/build/..//include -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_math_atlas/atlas/work/atlas-3.9.47/build/..//include/contrib -DAdd_ -DF77_INTEGER=int -DStringSunStyle -DATL_OS_OSX -DATL_ARCH_PPCG4 -DATL_CPUMHZ=1499 -DATL_AltiVec -DATL_GAS_PPC -DATL_AVgcc -DWALL -DATL_FULL_LAPACK -DATL_UCLEANM -DATL_UCLEANN -DATL_UCLEANK -DATL_BETA=0 -c -x assembler-with-cpp -maltivec -mabi=altivec ATL_dNBmm_b0.c
ATL_dNBmm_b0.c:406:dst vector instruction is optional for the PowerPC (not allowed without -force_cpusubtype_ALL option)
ATL_dNBmm_b0.c:417:dst vector instruction is optional for the PowerPC (not allowed without -force_cpusubtype_ALL option)
ATL_dNBmm_b0.c:519:dst vector instruction is optional for the PowerPC (not allowed without -force_cpusubtype_ALL option)
ATL_dNBmm_b0.c:523:dstst vector instruction is optional for the PowerPC (not allowed without -force_cpusubtype_ALL option)
ATL_dNBmm_b0.c:801:dst vector instruction is optional for the PowerPC (not allowed without -force_cpusubtype_ALL option)
ATL_dNBmm_b0.c:802:dstst vector instruction is optional for the PowerPC (not allowed without -force_cpusubtype_ALL option)
make[7]: *** [ATL_dNBmm_b0.o] Error 1
[...]

It looks like this issue had previously been fixed in #28413 for atlas 3.9.33, but apparently it has somehow been re-introduced since then.

Attachments

main.log (1.0 MB) - added by trog24@… 22 months ago.
Latest failed to build log.

Change History

comment:1 Changed 22 months ago by jmr@…

  • Owner changed from macports-tickets@… to jameskyle@…

Please remember to cc the maintainer.

comment:2 Changed 22 months ago by vince@…

This is a regression in Atlas code, the flag used to be added by the configuration mechanism without having to specify it. I've changed the Portfile in r82453 so that it is included in the compilation flags. Update and try again.

comment:3 Changed 22 months ago by trog24@…

Tried:

Franks-Power-Mac-G4:~ frank$ sudo port selfupdate
Password:
--->  Updating the ports tree
^[[B--->  Updating MacPorts base sources using rsync
MacPorts base version 2.0.1 installed,
MacPorts base version 2.0.1 downloaded.
--->  MacPorts base is already the latest version
Franks-Power-Mac-G4:~ frank$ sudo port clean atlas
Password:
--->  Cleaning atlas
Franks-Power-Mac-G4:~ frank$ sudo port upgrade installed
--->  Computing dependencies for atlas
--->  Fetching archive for atlas
--->  Attempting to fetch atlas-3.9.47_0+gcc44.darwin_9.ppc.tgz from http://packages.macports.org/atlas
--->  Fetching atlas
--->  Verifying checksum(s) for atlas
--->  Extracting atlas
--->  Applying patches to atlas
--->  Configuring atlas
--->  Building atlas
Error: Target org.macports.build returned: shell command failed (see log for details)
Log for atlas is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_ports_math_atlas/atlas/main.log
Error: Unable to upgrade port: 1
To report a bug, see <http://guide.macports.org/#project.tickets>
F

and got the same error. Attaching the log.

Changed 22 months ago by trog24@…

Latest failed to build log.

comment:4 Changed 22 months ago by vince@…

Ok, I see. I've witnessed the same phenomenon using clang. At some point, the Atlas build system puts aside what you told it to use (compiler and flags) and forces the use of gcc with some weird options. That's what cause your error, and that is maybe why Atlas does not compile with clang. I'm going to report that upstream and see what I can do meanwhile about it.

comment:5 Changed 22 months ago by dersh@…

I am trying to upgrade atlas on a G5 machine, and i am also getting an error (it also failed with .46 as well). On this machine I get the following warning as well:

--->  Configuring atlas
--- Compiling for G4 arch (ppc) on a G5 (ppc64) machine.
--- This will lead to inferior performance.
--->  Building atlas
Error: Target org.macports.build returned: shell command failed (see log for details)
Log for atlas is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_ports_math_atlas/atlas/main.log
Error: Unable to upgrade port: 1

Atlas was installed as a dependency to something else, and so is configured with +gcc44.

comment:6 Changed 22 months ago by dersh@…

  • Cc dersh@… added

Cc Me!

comment:7 Changed 22 months ago by vince@…

I've committed a patch in r82670. I hope it will solve this issue. Please update and try again.

comment:8 Changed 22 months ago by jmr@…

  • Cc vince@… added

Why did you revert r82612? And where is patch-clang.diff?

comment:9 Changed 22 months ago by vince@…

Sorry Josh, it was a just a silly mistake of mine. r82683 should be correct (and puts patch-clang.diff in). Thanks for pointing this out.

comment:10 Changed 22 months ago by dersh@…

I just did a sync and upgrade, but got the same error:

Portfile changed since last build; discarding previous state.
--->  Computing dependencies for atlas
--->  Fetching archive for atlas
--->  Attempting to fetch atlas-3.9.47_0+gcc44.darwin_9.ppc.tgz from http://packages.macports.org/atlas
--->  Fetching atlas
--->  Verifying checksum(s) for atlas
--->  Extracting atlas
--->  Applying patches to atlas
--->  Configuring atlas
--- Compiling for G4 arch (ppc) on a G5 (ppc64) machine.
--- This will lead to inferior performance.
--->  Building atlas
Error: Target org.macports.build returned: shell command failed (see log for details)
Log for atlas is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_ports_math_atlas/atlas/main.log
Error: Unable to upgrade port: 1
To report a bug, see <http://guide.macports.org/#project.tickets>

I can post the new log if that might help.

thanks,

comment:11 Changed 22 months ago by vince@…

Sorry for being so inefficient, but I have no G4 computer at hand and Atlas, as you might have realized, is really complex (I wouldn't say it’s a piece of c* but sometimes it comes close). What happens is that, at some point (still unknown), the standard compiler and options defined in the Portfile get overridden by a mere “gcc”, for whatever unknown and surely stupid reason. Result: the -force… flag is discarded and the build fails.

I have reported a bunch of bugs upstream, but Clint, the unique maintainer of Atlas, seems in vacation. I hope to get a fix before his return.

comment:12 Changed 22 months ago by vince@…

I have committed some further patches in r82700. Update, try again and while compiling light a candle at the nearest church!

comment:13 Changed 22 months ago by dersh@…

Thank you much for working on this. No luck. Same errors with the new version.

comment:14 Changed 22 months ago by vince@…

No luck :( I give up for tonight, I hope I find something more potent tomorrow.

comment:15 Changed 22 months ago by vince@…

I just noticed (after a good sleep, things are somewhat neater) that I inadvertently removed at some point from the Portfile the patch that was intended to fix this bug. I have reincorporated it in r82722, so please try once more… with good hope this time.

comment:16 Changed 21 months ago by dersh@…

Sleep solved it! It now builds for me.

Thank you!

comment:17 Changed 21 months ago by vince@…

  • Status changed from new to closed
  • Resolution set to fixed

Hurrah at last! That's was my fault: I am the one to blame, since I made the mistake. I apologize for the delay. Sorry once again. Have fun.

comment:18 Changed 21 months ago by trog24@…

  • Cc trog24@… added

Cc Me!

comment:19 Changed 21 months ago by trog24@…

I forgot to cc me and so I will try and see if this w

comment:20 Changed 21 months ago by trog24@…

The fix worked. Thank you.

Note: See TracTickets for help on using tickets.