When attempting to build the math/atlas port on x86_64 hardware running a 32 bit kernel, userland, and ports, the atlas hardware probe detects that it is running on an x86_64 architecture CPU. The build then assumes that it should do a 64 bit build and falls over when gfortran rejects the -m64 option. Strangely, it doesn't attempt this when compiling C code with gcc. cmnd=make IRunCComp CC='gcc46' CCFLAGS='-O -fomit-frame-pointer -Wl,-rpath=/usr/local/lib/gcc46 -fpic -DPIC ' | fgrep SUCCESS gcc46 -O -fomit-frame-pointer -Wl,-rpath=/usr/local/lib/gcc46 -fpic -DPIC : SUCCESS! f951: sorry, unimplemented: 64-bit mode not compiled in cmnd=make IRunF77Comp F77='gfortran46' F77FLAGS='-fomit-frame-pointer -mfpmath=387 -O2 -falign-loops=4 -Wl,-rpath=/usr/local/lib/gcc46 -fpic -DPIC -m64' | fgrep SUCCESS gfortran46 -fomit-frame-pointer -mfpmath=387 -O2 -falign-loops=4 -Wl,-rpath=/usr/local/lib/gcc46 -fpic -DPIC -m64 : FAILURE! f951: sorry, unimplemented: 64-bit mode not compiled in cmnd=make IRunF77Comp F77='gfortran46' F77FLAGS='-O -Wl,-rpath=/usr/local/lib/gcc46 -fpic -DPIC -m64' | fgrep SUCCESS gfortran46 -O -Wl,-rpath=/usr/local/lib/gcc46 -fpic -DPIC -m64 : FAILURE! g77: not found cmnd=make IRunF77Comp F77='g77' F77FLAGS='-O -Wl,-rpath=/usr/local/lib/gcc46 -fpic -DPIC ' | fgrep SUCCESS g77 -O -Wl,-rpath=/usr/local/lib/gcc46 -fpic -DPIC : FAILURE! f77: not found cmnd=make IRunF77Comp F77='f77' F77FLAGS='-O -Wl,-rpath=/usr/local/lib/gcc46 -fpic -DPIC ' | fgrep SUCCESS f77 -O -Wl,-rpath=/usr/local/lib/gcc46 -fpic -DPIC : FAILURE! Unable to find usable compiler for F77; abortingMake sure compilers are in your path, and specify good compilers to configure (see INSTALL.txt or 'configure --help' for details)*** Error code 7 Stop in /usr/ports/math/atlas/work/ATLAS/shared. *** Error code 1 Stop in /usr/ports/math/atlas/work/ATLAS/shared. Assertion failed: (!system(ln)), function ProbeComp, file /usr/ports/math/atlas/work/ATLAS/shared/..//CONFIG/src/config.c, line 125. cmnd=make IRun_OS args="-v 2 " | fgrep 'OS=' OS configured as FreeBSD (10) cmnd=make IRun_asm args="-v 2 -O 10" | fgrep 'ASM=' Assembly configured as GAS_x8632 (1) cmnd=make IRun_vec args="-v 2 -O 10 -s 1" | fgrep 'VECFLAG=' Vector ISA Extension configured as SSE3 (2,60) cmnd=make IRun_arch args="-v 2 -O 10 -s 1 -a" | fgrep 'MACHTYPE=' Architecture configured as HAMMER (24) cmnd=make IRun_arch args="-v 2 -O 10 -s 1 -m" | fgrep 'CPU MHZ=' Clock rate configured as 2500Mhz cmnd=make IRun_arch args="-v 2 -O 10 -s 1 -n" | fgrep 'NCPU=' Maximum number of threads configured as 2 cmnd=make IRun_arch args="-v 2 -O 10 -s 1 -b" | fgrep 'PTR BITS=' Pointer width configured as 64 cmnd=make IRun_arch args="-v 2 -O 10 -s 1 -t" | fgrep 'CPU THROTTLE=' Cannot detect CPU throttling. Abort trap (core dumped) xconfig exited with 134 *** Error code 134 Stop in /usr/ports/math/atlas. *** Error code 1 Stop in /usr/ports/math/atlas. Fix: There is probably a way that the hardware probe could detect that the CPU is running in 32 bit mode on x86_64 hardware that could be added to the generic probe code. The following patch just skips the generic probe so that the FreeBSD specific probe is executed instead. How-To-Repeat: Attempt to build the math/atlas port on x86_64 hardware running a 32 bit kernel and userland.
Responsible Changed From-To: freebsd-ports-bugs->bf I'll take it.
Don: Sorry about the delay in my response -- this port is intimately connected with math/lapack, and we are just finishing making some alterations to some of the other lapack-related ports -- soon afterward, I'll try to fix this problem, although in a slightly different way (by restoring the pointer width argument to the configure script that was removed in the last revision of atlas), since other architectures (e.g., powerpc/powerpc64) could also be affected. Regards, b.
On 1/23/12, b. f. <bf1783@googlemail.com> wrote: > Don: > > Sorry about the delay in my response -- this port is intimately > connected with math/lapack, and we are just finishing making some > alterations to some of the other lapack-related ports -- soon > afterward, I'll try to fix this problem, although in a slightly > different way (by restoring the pointer width argument to the > configure script that was removed in the last revision of atlas), > since other architectures (e.g., powerpc/powerpc64) could also be > affected. Don: Would you please check if the following patch solves your problem, and inform me of the result? Regards, b.
On 7 Feb, b. f. wrote: > On 1/23/12, b. f. <bf1783@googlemail.com> wrote: >> Don: >> >> Sorry about the delay in my response -- this port is intimately >> connected with math/lapack, and we are just finishing making some >> alterations to some of the other lapack-related ports -- soon >> afterward, I'll try to fix this problem, although in a slightly >> different way (by restoring the pointer width argument to the >> configure script that was removed in the last revision of atlas), >> since other architectures (e.g., powerpc/powerpc64) could also be >> affected. > > Don: > > Would you please check if the following patch solves your problem, and > inform me of the result? The build seems to run way to quickly and exits here: [snip] cp /usr/ports/math/atlas/work/ATLAS/shared/bin/INSTALL_LOG/?PerfSumm.txt /usr/p orts/math/atlas/work/ATLAS/shared/ARCHS/HAMMER32SSE3/. rm -f xnegflt rm HAMMER32SSE3.tgz HAMMER32SSE3.tar rm: HAMMER32SSE3.tgz: No such file or directory rm: HAMMER32SSE3.tar: No such file or directory *** Error code 1 (ignored) tar cvf HAMMER32SSE3.tar HAMMER32SSE3 a HAMMER32SSE3 a HAMMER32SSE3/kern a HAMMER32SSE3/sPerfSumm.txt a HAMMER32SSE3/dPerfSumm.txt a HAMMER32SSE3/zPerfSumm.txt a HAMMER32SSE3/cPerfSumm.txt a HAMMER32SSE3/gcc46 a HAMMER32SSE3/gemm [snip] a HAMMER32SSE3/kern/gcc46/dCPSC_SUMM a HAMMER32SSE3/kern/gcc46/dCOPY_SUMM a HAMMER32SSE3/kern/gcc46/dAXPY_SUMM a HAMMER32SSE3/kern/gcc46/sSWAP_SUMM a HAMMER32SSE3/kern/gcc46/dAXPBY_SUMM a HAMMER32SSE3/kern/gcc46/zSWAP_SUMM gzip --best HAMMER32SSE3.tar mv HAMMER32SSE3.tar.gz HAMMER32SSE3.tgz Building ATLAS shared libraries: Full build log at: <http://people.freebsd.org/~truckman/math_atlas_make.out>
bf 2012-02-13 22:28:14 UTC FreeBSD ports repository Modified files: math/atlas Makefile Log: restore the explicit pointer bitwidth configure argument, to prevent misconfiguration on some machines PR: 162686 Submitted by: truckman (different patch) Revision Changes Path 1.66 +10 -3 ports/math/atlas/Makefile _______________________________________________ cvs-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/cvs-all To unsubscribe, send any mail to "cvs-all-unsubscribe@freebsd.org"
State Changed From-To: open->closed Committed, with minor changes. Thanks!