Bug 227795 - math/suitesparse fails to build
Summary: math/suitesparse fails to build
Status: Closed DUPLICATE of bug 227791
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: freebsd-ports-bugs (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-04-26 16:28 UTC by rkoberman
Modified: 2018-04-27 00:35 UTC (History)
4 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description rkoberman 2018-04-26 16:28:03 UTC
suitesparse-5.2 fails to build libamd. Linking several objects fail due to the inability to find a definition of SuiteSparse_config.
gcc6  -Wl,-rpath=/usr/local/lib/gcc6  -L/usr/local/lib/gcc6 -B/usr/local/bin -L/usr/local/lib -fstack-protector -Wl,-rpath=/usr/local/lib/gcc6 -L/usr/local/lib/gcc6 -L/usr/ports/math/suitesparse/work/SuiteSparse/lib -L/usr/ports/math/suitesparse/work/SuiteSparse/lib -L/usr/ports/math/suitesparse/work/SuiteSparse/lib -L/usr/ports/math/suitesparse/work/SuiteSparse/lib -shared -Wl,-soname -Wl,libamd.so.2 -Wl,--no-undefined amd_i_aat.o amd_i_1.o amd_i_2.o amd_i_dump.o amd_i_postorder.o amd_i_defaults.o amd_i_post_tree.o amd_i_order.o amd_i_control.o amd_i_info.o amd_i_valid.o amd_i_preprocess.o amd_l_aat.o amd_l_1.o amd_l_2.o amd_l_dump.o amd_l_postorder.o amd_l_defaults.o amd_l_post_tree.o amd_l_order.o amd_l_control.o amd_l_info.o amd_l_valid.o amd_l_preprocess.o -o /usr/ports/math/suitesparse/work/SuiteSparse/lib/libamd.so.2.4.6 -lm -lsuitesparseconfig
amd_i_control.o: In function `amd_control':
amd_control.c:(.text+0x18): undefined reference to `SuiteSparse_config'
amd_control.c:(.text+0x123): undefined reference to `SuiteSparse_config'
amd_i_info.o: In function `amd_info':
amd_info.c:(.text+0xc): undefined reference to `SuiteSparse_config'
amd_l_control.o: In function `amd_l_control':
amd_control.c:(.text+0x18): undefined reference to `SuiteSparse_config'
amd_control.c:(.text+0x123): undefined reference to `SuiteSparse_config'
amd_l_info.o:amd_info.c:(.text+0xc): more undefined references to `SuiteSparse_config' follow
collect2: error: ld returned 1 exit status
gmake[5]: *** [Makefile:90: /usr/ports/math/suitesparse/work/SuiteSparse/lib/libamd.so.2.4.6] Error 1
gmake[5]: Leaving directory '/usr/ports/math/suitesparse/work/SuiteSparse/AMD/Lib'
gmake[4]: *** [Makefile:18: library] Error 2
gmake[4]: Leaving directory '/usr/ports/math/suitesparse/work/SuiteSparse/AMD/Lib'
gmake[3]: *** [Makefile:16: all] Error 2
gmake[3]: Leaving directory '/usr/ports/math/suitesparse/work/SuiteSparse/AMD'
gmake[2]: *** [Makefile:16: go] Error 2
gmake[2]: Leaving directory '/usr/ports/math/suitesparse/work/SuiteSparse'
*** Error code 2
Comment 1 rkoberman 2018-04-26 16:30:33 UTC
Sorry. Forgot some significant details.
FreeBSD rogue 11.1-STABLE FreeBSD 11.1-STABLE #0 r332035: Wed Apr  4 15:49:46 PDT 2018     root@rogue:/usr/obj/usr/src/sys/GENERIC.4BSD  amd64

All ports are up to date as of yesterday except firefox and chromium.
Comment 2 Walter Schwarzenfeld 2018-04-26 20:12:22 UTC
Try deinstall suitesparse before you build this update.
Comment 3 dewayne 2018-04-26 21:36:44 UTC
(In reply to rkoberman from comment #1)
Thanks for the PR.  I have a similar problem on:
# uname -pivKU
FreeBSD 11.1-STABLE  r330133M   amd64 hqdev-amd64-smp-vga 1101511 1101509

Interestingly I'm using the default BLAS, netlib, but openblas is listed in the libraries to be linked, even after modifying the Makefile:
-OPTIONS_DEFAULT=       OPENBLAS
+#OPTIONS_DEFAULT=      OPENBLAS


gcc7 -pie -Wl,--strip-debug -Wl,--build-id=md5 -Wl,-rpath=/usr/local/lib/gcc7  -L/usr/local/lib/gcc7 -B/usr/local/bin -L/usr/local/lib -fno-stack-protector -Wl,-rpath=/usr/local/lib/gcc7 -L/usr/local/lib/gcc7 -L/var/ports/usr/ports/math/suitesparse/work/SuiteSparse/lib -L/var/ports/usr/ports/math/suitesparse/work/SuiteSparse/lib -L/var/ports/usr/ports/math/suitesparse/work/SuiteSparse/lib -L/var/ports/usr/ports/math/suitesparse/work/SuiteSparse/lib -shared -Wl,-soname -Wl,libcholmod.so.3 -Wl,--no-undefined -fopenmp cholmod_aat.o cholmod_add.o cholmod_band.o cholmod_change_factor.o cholmod_common.o cholmod_complex.o cholmod_copy.o cholmod_dense.o cholmod_error.o cholmod_factor.o cholmod_memory.o cholmod_sparse.o cholmod_transpose.o cholmod_triplet.o cholmod_version.o cholmod_check.o cholmod_read.o cholmod_write.o cholmod_amd.o cholmod_analyze.o cholmod_colamd.o cholmod_etree.o cholmod_factorize.o cholmod_postorder.o cholmod_rcond.o cholmod_resymbol.o cholmod_rowcolcounts.o cholmod_rowfac.o cholmod_solve.o cholmod_spsolve.o cholmod_drop.o cholmod_horzcat.o cholmod_norm.o cholmod_scale.o cholmod_sdmult.o cholmod_ssmult.o cholmod_submatrix.o cholmod_vertcat.o cholmod_symmetry.o cholmod_rowadd.o cholmod_rowdel.o cholmod_updown.o cholmod_super_numeric.o cholmod_super_solve.o cholmod_super_symbolic.o cholmod_ccolamd.o cholmod_csymamd.o cholmod_metis.o cholmod_nesdis.o cholmod_camd.o cholmod_l_aat.o cholmod_l_add.o cholmod_l_band.o cholmod_l_change_factor.o cholmod_l_common.o cholmod_l_complex.o cholmod_l_copy.o cholmod_l_dense.o cholmod_l_error.o cholmod_l_factor.o cholmod_l_memory.o cholmod_l_sparse.o cholmod_l_transpose.o cholmod_l_triplet.o cholmod_l_version.o cholmod_l_check.o cholmod_l_read.o cholmod_l_write.o cholmod_l_amd.o cholmod_l_analyze.o cholmod_l_colamd.o cholmod_l_etree.o cholmod_l_factorize.o cholmod_l_postorder.o cholmod_l_rcond.o cholmod_l_resymbol.o cholmod_l_rowcolcounts.o cholmod_l_rowfac.o cholmod_l_solve.o cholmod_l_spsolve.o cholmod_l_drop.o cholmod_l_horzcat.o cholmod_l_norm.o cholmod_l_scale.o cholmod_l_sdmult.o cholmod_l_ssmult.o cholmod_l_submatrix.o cholmod_l_vertcat.o cholmod_l_symmetry.o cholmod_l_rowadd.o cholmod_l_rowdel.o cholmod_l_updown.o cholmod_l_super_numeric.o cholmod_l_super_solve.o cholmod_l_super_symbolic.o cholmod_l_ccolamd.o cholmod_l_csymamd.o cholmod_l_metis.o cholmod_l_nesdis.o cholmod_l_camd.o -o /var/ports/usr/ports/math/suitesparse/work/SuiteSparse/lib/libcholmod.so.3.0.12 -lm -lamd -lcolamd -lsuitesparseconfig -lccolamd -lcamd -L/usr/local/lib -lmetis -pie -Wl,--strip-debug -Wl,--build-id=md5 -Wl,-rpath=/usr/local/lib/gcc7  -L/usr/local/lib/gcc7 -B/usr/local/bin -L/usr/local/lib -fno-stack-protector -Wl,-rpath=/usr/local/lib/gcc7 -L/usr/local/lib/gcc7 -llapack -lopenblas
/usr/local/bin/ranlib libcholmod.a
/usr/lib/Scrt1.o: In function `_start':
/smallblocks/src/lib/csu/amd64/crt1.c:(.text+0x18c): undefined reference to `main'
collect2: error: ld returned 1 exit status
gmake[4]: *** [Makefile:544: /var/ports/usr/ports/math/suitesparse/work/SuiteSparse/lib/libcholmod.so.3.0.12] Error 1
gmake[4]: Leaving directory '/var/ports/usr/ports/math/suitesparse/work/SuiteSparse/CHOLMOD/Lib'
gmake[3]: *** [Makefile:31: library] Error 2
gmake[3]: Leaving directory '/var/ports/usr/ports/math/suitesparse/work/SuiteSparse/CHOLMOD/Lib'
gmake[2]: *** [Makefile:14: all] Error 2
gmake[2]: Leaving directory '/var/ports/usr/ports/math/suitesparse/work/SuiteSparse/CHOLMOD'
gmake[1]: *** [Makefile:21: go] Error 2
gmake[1]: Leaving directory '/var/ports/usr/ports/math/suitesparse/work/SuiteSparse'
*** Error code 2

PS /usr/src points to /smallblocks, I'm surprised the port looks there for crt1.c? Prior to April updates, suitesparse built with gcc7
Comment 4 Koichiro Iwao freebsd_committer freebsd_triage 2018-04-27 00:35:48 UTC

*** This bug has been marked as a duplicate of bug 227791 ***