paraview-superbuild for optix ppc64le

I am trying to compile paraview on a P9 (ppc64le) machine (summit) with Optix and I get an error at install time - every compiled successfully. Strangely, the library where it fails dds.so seems to be a i86 library. @ben.boeckel Do you know anything about this.

Copying /ccs/home/danlipsa/projects/paraview-superbuild/build-summit-egl-5.9.0/install/lib/libcudart.so.10.1 ==> lib
Copying /ccs/home/danlipsa/projects/paraview-superbuild/build-summit-egl-5.9.0/install/lib/libdice.so ==> lib
Copying /ccs/home/danlipsa/projects/paraview-superbuild/build-summit-egl-5.9.0/install/lib/libnvrtc.so.10.1 ==> lib
Copying /ccs/home/danlipsa/projects/paraview-superbuild/build-summit-egl-5.9.0/install/lib/libnvindex.so ==> lib
Copying /ccs/home/danlipsa/projects/paraview-superbuild/build-summit-egl-5.9.0/install/lib/libnvrtc-builtins.so ==> lib
Copying /ccs/home/danlipsa/projects/paraview-superbuild/build-summit-egl-5.9.0/install/lib/libnvrtc-builtins.so.10.1 ==> lib
Copying /ccs/home/danlipsa/projects/paraview-superbuild/build-summit-egl-5.9.0/install/lib/libnvindex_builtins.so ==> lib
Copying /ccs/home/danlipsa/projects/paraview-superbuild/build-summit-egl-5.9.0/install/lib/liboptix.so.51 ==> lib
Creating symlink to lib/liboptix.so.51 ==> liboptix.so.5.1.2
Creating symlink to lib/liboptix.so.51 ==> liboptix.so
No chrpath found; superbuild rpaths may still exist in the package
Copying /ccs/home/danlipsa/projects/paraview-superbuild/build-summit-egl-5.9.0/install/lib/libVisRTX.so ==> lib
Copying /ccs/home/danlipsa/projects/paraview-superbuild/build-summit-egl-5.9.0/install/lib/libVisRTX.so.0.1.6 ==> lib
WARNING: dependency from /ccs/home/danlipsa/projects/paraview-superbuild/build-summit-egl-5.9.0/install/lib/dds.so to ld-linux-x86-64.so.2 requires a search path
CMake Error at cmake_install.cmake:728 (message):
  Failed to install dds.so:

  /sbin/ldconfig: Can't stat /usr/lib64/libglvnd: No such file or directory

  /sbin/ldconfig: Path `/usr/lib' given more than once

  /sbin/ldconfig: Path `/usr/lib64' given more than once

  /sbin/ldconfig: Cannot stat /lib64/libnvidia-fbc.so: No such file or
  directory

  /sbin/ldconfig: Cannot stat /lib64/libnvidia-ifr.so: No such file or
  directory

  Traceback (most recent call last):

    File "/ccs/home/danlipsa/projects/paraview-superbuild/src-v5.9.0/superbuild/cmake/scripts/fixup_bundle.unix.py", line 750, in <module>
      main(sys.argv[1:])
    File "/ccs/home/danlipsa/projects/paraview-superbuild/src-v5.9.0/superbuild/cmake/scripts/fixup_bundle.unix.py", line 742, in main
      _install_binary(main_exe, is_excluded, bundle_dest, opts.libdir, installed, manifest, opts.source, dry_run=opts.dry_run, look_for_symlinks=opts.has_symlinks)
    File "/ccs/home/danlipsa/projects/paraview-superbuild/src-v5.9.0/superbuild/cmake/scripts/fixup_bundle.unix.py", line 601, in _install_binary
      deps = list(binary.dependencies.values())
    File "/ccs/home/danlipsa/projects/paraview-superbuild/src-v5.9.0/superbuild/cmake/scripts/fixup_bundle.unix.py", line 266, in dependencies
      deplib = Library.from_reference(dep, self)
    File "/ccs/home/danlipsa/projects/paraview-superbuild/src-v5.9.0/superbuild/cmake/scripts/fixup_bundle.unix.py", line 346, in from_reference
      raise RuntimeError('Unable to find the %s library from %s: %s' % (ref, loader.path, ', '.join(paths)))

  RuntimeError: Unable to find the ld-linux-x86-64.so.2 library from
  /ccs/home/danlipsa/projects/paraview-superbuild/build-summit-egl-5.9.0/install/lib/dds.so:
  /ccs/home/danlipsa/projects/paraview-superbuild/build-summit-egl-5.9.0/install/lib,
  /ccs/home/danlipsa/projects/paraview-superbuild/build-summit-egl-5.9.0/install/lib,
  /sw/summit/cuda/10.1.243/lib64,
  /autofs/nccs-svm1_sw/summit/.swci/1-compute/opt/spack/20180914/linux-rhel7-ppc64le/gcc-7.4.0/spectrum-mpi-10.3.1.2-20200121-eu2wh5ypz6ipvokwbng2m5ihug6doysh/lib,
  /sw/summit/gcc/7.4.0/lib64,
  /autofs/nccs-svm1_sw/summit/.swci/1-compute/opt/spack/20180914/linux-rhel7-ppc64le/gcc-4.8.5/darshan-runtime-3.1.7-cnvxicgf5j4ap64qi6v5gxp67hmrjz43/lib,
  /opt/ibm/spectrumcomputing/lsf/10.1.0.9/linux3.10-glibc2.17-ppc64le-csm/lib,
  /opt/mellanox/hcoll/lib, /opt/ibutils/lib64,
  /opt/ibm/spectrum_mpi/jsm_pmix/lib, /opt/ibm/spectrum_mpi/lib,
  /usr/lib64/mysql, /opt/mellanox/mxm/lib, /opt/mellanox/sharp/lib, /lib,
  /lib64, /lib64/tls,



gmake[1]: *** [install] Error 1
CMake Error at superbuild/cmake_install.cmake:66 (message):
  Failed to install the paraviewsdk/TGZ package.
Call Stack (most recent call first):
  cmake_install.cmake:47 (include)


make: *** [install] Error 1

OptiX is a pre-compiled package. We don’t have ppc64le binaries for it, so we’ll have to disable it there.

I downloaded the ppc64le from

at the end of the page - a slightly older version. Indeed, I’ve seen its pre-compiled. Strangely, that package has a few intel libraries that cause the problem I am seeing.

Ah, in that case, the install routine might need adjusted.

Hmm, did you need to do any changes to tbb to support non-Intel architectures?

I disabled tbb.

Alright, I’ll add in logic to disable the tbb stack on non-Intel since we don’t have support there.

Any idea what is going on with dds.so. Seems some sort of introspection that fails to realize that this is an intel library and it should probably be skipped and just copied over.

We just kind of assume what we find is the right architecture. If an Intel library is mingled with a PowerPC libraries, you could just remove it manually from the install. If it’s elsewhere, some include and exclude regexes could help.