Bug#1051986: scalapack: cmake files miss multiarch, referencing missing file

Michael Banck mbanck at debian.org
Fri Sep 15 12:33:12 BST 2023


Source: scalapack
Version: 2.2.1-2
Severity: serious

Hi,

I'm building a package that can use scalapack; it uses cmake as build
system and fails configuring as such:

|dh_auto_configure -- 					\
|	-DCMAKE_BUILD_TYPE=		\
|	-DBUILD_SHARED_LIBS=NO				\
|	-DBUILD_TESTING=YES				\
|	-DENABLE_SCALAPACK_MPI=YES
|	cd obj-x86_64-linux-gnu && DEB_PYTHON_INSTALL_LAYOUT=deb cmake
|-DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=None
|-DCMAKE_INSTALL_SYSCONFDIR=/etc -DCMAKE_INSTALL_LOCALSTATEDIR=/var
|-DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON
|-DCMAKE_FIND_USE_PACKAGE_REGISTRY=OFF
|-DCMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY=ON
|-DFETCHCONTENT_FULLY_DISCONNECTED=ON -DCMAKE_INSTALL_RUNSTATEDIR=/run
|"-GUnix Makefiles" -DCMAKE_VERBOSE_MAKEFILE=ON
|-DCMAKE_INSTALL_LIBDIR=lib/x86_64-linux-gnu -DCMAKE_BUILD_TYPE=
|-DBUILD_SHARED_LIBS=NO -DBUILD_TESTING=YES -DENABLE_SCALAPACK_MPI=YES ..
|-- Setting build type to Release as none was set
|-- Will use the mpi_f08 Fortran module
|CMake Error at
|/usr/lib/cmake/scalapack-2.2.1.openmpi/scalapack-targets.cmake:93
|(message):
|  The imported target "scalapack" references the file
|
|     "/usr/lib/libscalapack-openmpi.so.2.2.1"
|
|  but this file does not exist.  Possible reasons include:
|
|  * The file was deleted, renamed, or moved to another location.
|
|  * An install or uninstall procedure did not complete successfully.
|
|  * The installation package was faulty and contained
|
|     "/usr/lib/cmake/scalapack-2.2.1.openmpi/scalapack-targets.cmake"
|
|  but not all the files it references.
|
|Call Stack (most recent call first):
|  /usr/lib/cmake/scalapack-2.2.1.openmpi/scalapack-config.cmake:2
|(include)
|  CMakeLists.txt:61 (find_package)

Looking at
/usr/lib/cmake/scalapack-2.2.1.openmpi/scalapack-targets-none.cmake it
does not take multiarch into account:

|# grep PREFIX.*openmpi /usr/lib/cmake/scalapack-2.2.1.openmpi/scalapack-targets-none.cmake
|  IMPORTED_LOCATION_NONE "${_IMPORT_PREFIX}/lib/libscalapack-openmpi.so.2.2.1"
|list(APPEND _cmake_import_check_files_for_scalapack "${_IMPORT_PREFIX}/lib/libscalapack-openmpi.so.2.2.1" )

If I add (see attached patch), the build goes fine. I have not looked so
far at what it would take to change in the scalapack build system to fix
this.


Michael


-- System Information:
Debian Release: 10.13
  APT prefers oldoldstable-updates
  APT policy: (500, 'oldoldstable-updates'), (500, 'oldoldstable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.19.0-22-amd64 (SMP w/2 CPU cores)
Kernel taint flags: TAINT_UNSIGNED_MODULE
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
-------------- next part --------------
A non-text attachment was scrubbed...
Name: scalapack-cmake.patch
Type: text/x-diff
Size: 1067 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/debian-science-maintainers/attachments/20230915/5885d546/attachment.patch>


More information about the debian-science-maintainers mailing list