Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

3.12.1 fails to build #1092

Open
antonio-rojas opened this issue Jan 8, 2025 · 7 comments · May be fixed by #1094
Open

3.12.1 fails to build #1092

antonio-rojas opened this issue Jan 8, 2025 · 7 comments · May be fixed by #1094

Comments

@antonio-rojas
Copy link
Contributor

With GCC 14.2

/build/lapack/src/build/SRC/lapack_64_obj/cgelqs.f:132:30:

  132 |      $                   WORK( LWORK )
      |                              1
Error: Variable ‘lwork’ cannot appear in the expression at (1)
make[2]: *** [SRC/CMakeFiles/lapack_64_obj.dir/build.make:507: SRC/CMakeFiles/lapack_64_obj.dir/lapack_64_obj/cgelqs.f.o] Error 1
make[2]: *** Waiting for unfinished jobs....

Build command:

cmake -B build -S lapack \
    -DCMAKE_SKIP_RPATH=ON \
    -DBUILD_SHARED_LIBS=ON \
    -DBUILD_TESTING=OFF \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DCMAKE_Fortran_COMPILER=gfortran \
    -DLAPACKE_WITH_TMG=ON \
    -DCBLAS=ON \
    -DBUILD_DEPRECATED=ON \
    -DBUILD_MAN_DOCUMENTATION=ON
  cmake --build build
@martin-frbg
Copy link
Collaborator

should read $ WORK (*) in all four ?gelqs.f files under SRC/DEPRECATED presumably

@wdconinc wdconinc linked a pull request Jan 10, 2025 that will close this issue
2 tasks
@wdconinc
Copy link
Contributor

FYI, #1094

@thierry-FreeBSD
Copy link

The same kind of error is displayed when building xlapack (on FreeBSD with gfortran 13):

[  3%] Building Fortran object SRC/CMakeFiles/lapack_64_obj.dir/lapack_64_obj/dla_geamv.f.o
cd /usr/ports/math/xlapack/work/.build/SRC && /usr/local/bin/gfortran13   -O -fallow-argument-mismatch -Wl,-rpath=/usr/local/lib/gcc13 -O2 -fPIC -frecursive -fdefault-integer-8 -DLAPACK_64 -cpp -c /usr/ports/math/xlapack/work/.build/SRC/lapack_64_obj/dla_geamv.f -o CMakeFiles/lapack_64_obj.dir/lapack_64_obj/dla_geamv.f.o
/usr/ports/math/xlapack/work/.build/SRC/lapack_64_obj/dla_geamv.f:187:52:

  187 |       DOUBLE PRECISION   A( LDA, * ), X( * ), Y( * )
      |                                                    1
Error: Assumed size array at (1) must be a dummy argument
*** [SRC/CMakeFiles/lapack_64_obj.dir/lapack_64_obj/dla_geamv.f.o] Error code 1

@martin-frbg
Copy link
Collaborator

As far as I can tell, "xlapack" appears to be a FreeBSD-specific creation that is simply stock Reference-LAPACK built against the extended-precision XBLAS instead of its included Reference-BLAS (?)

@thierry-FreeBSD
Copy link

It sets USE_XBLAS to ON, and depends on xblas. Since USE_XBLAS is part of Lapack's CMakeLists.txt, I didn't know that is was specific to FreeBSD!

@martin-frbg
Copy link
Collaborator

At least FreeBSD appears to be the only ones packaging it, if google is still to be trusted (somewhat). Anyway as far as I can tell it is basically a build variant of Reference-LAPACK so whoever distributes it must update their sources to include the post-3.12.1 patches

@thierry-FreeBSD
Copy link

I do not know if it still used... maybe I'll mark it deprecated to see if I get some feedback.
Anyway, does lapack (with the latest patches) build for you when USE_XBLAS is set, with xblas 1.0.248?

freebsd-git pushed a commit to freebsd/freebsd-ports that referenced this issue Jan 24, 2025
# for free to join this conversation on GitHub. Already have an account? # to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants