Opened 14 months ago

Last modified 14 months ago

#72025 assigned defect

lapack @3.12.1 build error: execv: Argument list too long

Reported by: barracuda156 Owned by: Dave-Allured (Dave Allured)
Priority: Normal Milestone:
Component: ports Version: 2.10.5
Keywords: Cc:
Port: lapack

Description

:info:build [100%] Building C object LAPACKE/CMakeFiles/lapacke_64_obj.dir/utils/lapacke_xerbla.c.o
:info:build cd /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_lapack/lapack/work/build/LAPACKE && /usr/bin/gcc-4.2  -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_lapack/lapack/work/lapack-3.12.1/LAPACKE/include -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_lapack/lapack/work/build/include -pipe -Os -DNDEBUG -I/opt/local/include -DADD_ -arch ppc -fPIC -DLAPACK_ILP64 -DLAPACKE_API64 -DWeirdNEC -DCBLAS_API64 -MD -MT LAPACKE/CMakeFiles/lapacke_64_obj.dir/utils/lapacke_xerbla.c.o -MF CMakeFiles/lapacke_64_obj.dir/utils/lapacke_xerbla.c.o.d -o CMakeFiles/lapacke_64_obj.dir/utils/lapacke_xerbla.c.o -c /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_lapack/lapack/work/lapack-3.12.1/LAPACKE/utils/lapacke_xerbla.c
:info:build make[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_lapack/lapack/work/build'
:info:build [100%] Built target lapacke_64_obj
:info:build /usr/bin/make  -f LAPACKE/CMakeFiles/lapacke.dir/build.make LAPACKE/CMakeFiles/lapacke.dir/depend
:info:build make[2]: Entering directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_lapack/lapack/work/build'
:info:build cd /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_lapack/lapack/work/build && /opt/local/bin/cmake -E cmake_depends "Unix Makefiles" /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_lapack/lapack/work/lapack-3.12.1 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_lapack/lapack/work/lapack-3.12.1/LAPACKE /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_lapack/lapack/work/build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_lapack/lapack/work/build/LAPACKE /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_lapack/lapack/work/build/LAPACKE/CMakeFiles/lapacke.dir/DependInfo.cmake "--color="
:info:build make[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_lapack/lapack/work/build'
:info:build /usr/bin/make  -f LAPACKE/CMakeFiles/lapacke.dir/build.make LAPACKE/CMakeFiles/lapacke.dir/build
:info:build make[2]: Entering directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_lapack/lapack/work/build'
:info:build [100%] Linking C shared library ../lib/liblapacke.dylib
:info:build cd /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_lapack/lapack/work/build/LAPACKE && /opt/local/bin/cmake -E cmake_link_script CMakeFiles/lapacke.dir/link.txt --verbose=ON
:info:build powerpc-apple-darwin10-gcc-4.2.1: error trying to exec '/usr/libexec/gcc/powerpc-apple-darwin10/4.2.1/collect2': execv: Argument list too long
:info:build /usr/bin/gcc-4.2 -pipe -Os -DNDEBUG -I/opt/local/include -DADD_ -arch ppc -dynamiclib -Wl,-headerpad_max_install_names -L/opt/local/lib -Wl,-headerpad_max_install_names -L/opt/local/lib/gcc14 -lgfortran -compatibility_version 3.0.0 -current_version 3.12.1 -o ../lib/liblapacke.3.12.1.dylib -install_name @rpath/liblapacke.3.dylib @CMakeFiles/lapacke.dir/objects1.rsp @CMakeFiles/lapacke.dir/objects2.rsp @CMakeFiles/lapacke.dir/objects3.rsp  -Wl,-rpath,/opt/local/lib/lapack ../lib/liblapack.3.12.1.dylib
:info:build make[2]: *** [lib/liblapacke.3.12.1.dylib] Error 1
:info:build make[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_lapack/lapack/work/build'
:info:build make[1]: *** [LAPACKE/CMakeFiles/lapacke.dir/all] Error 2
:info:build make[1]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_lapack/lapack/work/build'
:info:build make: *** [all] Error 2
:info:build make: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_lapack/lapack/work/build'
:info:build Command failed:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_lapack/lapack/work/build" && /usr/bin/make -j6 -w all VERBOSE=ON 
:info:build Exit code: 2

Also: https://github.com/Reference-LAPACK/lapack/issues/1105

Attachments (1)

main.log.zip (216.0 KB) - added by barracuda156 14 months ago.

Download all attachments as: .zip

Change History (4)

Changed 14 months ago by barracuda156

Attachment: main.log.zip added

comment:1 Changed 14 months ago by Dave-Allured (Dave Allured)

Fails on this step (from 10.9 log):

Linking C shared library ../lib/liblapacke.dylib
cd /opt/local/var/macports/build/_opt_bblocal_var_buildworker_ports_build_ports_math_lapack/lapack/work/build/LAPACKE && /opt/local/bin/cmake -E cmake_link_script CMakeFiles/lapacke.dir/link.txt --verbose=ON
clang: error: unable to execute command: posix_spawn failed: Argument list too long

The actual broken link command seems to be hidden inside cmake script in every log file, therefore can't show here.

Same failure on MacPorts builders for 10.8_x86, 10.9_x86. Curiously works for 10.7, also 10.10 and all greater.

As discussed in Lapack 1105, this is an expected place to fail when gathering a large number of object files with full MacPorts build prefixes, all in a single link command. It looks like this is due to the command line length limit on older OS's, as well as other factors. Possible solutions are referenced in Lapack 1105.

comment:2 in reply to:  1 Changed 14 months ago by barracuda156

Replying to Dave-Allured:

Possible solutions are referenced in Lapack 1105.

If you could make a patch, that would be great. (Since we know that the error is not specific to my 10.6 powerpc, but happens also on officially supported x86 systems.) I can test it then on my end. I also got 10.8 in a VM, so can test that one as well.

comment:3 Changed 14 months ago by Dave-Allured (Dave Allured)

Thank you for testing offers. For the same problem six years ago in GDAL, this was quickly fixed by an active upstream developer. The fix was rather straightforward. However the LAPACK build system is different, and I lack the cmake experience to deal with it. Will get into it as time permits.

Note: See TracTickets for help on using tickets.