Closed imciner2 closed 8 months ago
Thanks for reporting and tracking this down.
Afaict, #671 should fix this.
Would it be helpful to post a SuiteSparse 7.5.0.betaX with this change?
Since the patch was so small, I have actually backported it as a patch to our 7.4.0 build and tested it. After the build, I now see libspqr using the functions
U dlarf_64_
U dlarfb_64_
U dlarfg_64_
U dlarft_64_
U dnrm2_64_
U dznrm2_64_
so it looks like the suffix is being added properly now.
Great!
I've posted a 7.5.0.beta3 with this fix: https://github.com/DrTimothyAldenDavis/SuiteSparse/releases/tag/v7.5.0.beta3 , if you'd like to give that a try.
Describe the bug When building using CMake variables to define your own BLAS libraries and their linkage (e.g. passing
-DBLAS_LIBRARIES=<blah>
on the command line), the SuiteSparseBLAS.cmake file does not configure any of the compile definitions, such as theBLAS_SUFFIX
, or call the 64-bit/32-bit BLAS CMake files.To Reproduce In the Julia build, we pass in
-DBLAS_LIBRARIES
with the libblastrampoline file, and also set-DBLAS64_SUFFIX="_64"
and-DSUITESPARSE_USE_64BIT_BLAS=YES
on the command line. However, the actualBLAS_SUFFIX
compile definition is not being set when compiling, so the libraries are just linking todgemm_
instead ofdgemm_64_
like we want.The CMake trace (e.g. running CMake with
--trace --trace-expand
) for a sample build showing how it is processing the BLAS/LAPACK files is:I would guess that there should be calls to
SuiteSparseBLAS32
/64
in that if statement to configure the suffixes and other options for the BLAS library.Desktop (please complete the following information):