Adios2: Build error on Theta

Created on 26 May 2020  路  9Comments  路  Source: ornladios/ADIOS2

Describe the bug
I am getting the following error on Theta with intel and cmake/3.16.2.

[20200526:145202] -- Configuring done
[20200526:145202] CMake Error at CMakeLists.txt:27 (add_executable):
[20200526:145202]   Target "serial_with_Fortran" links to target
[20200526:145202]   "adios2::thirdparty::pugixml_impl" but the target was not found.  Perhaps a
[20200526:145202]   find_package() call is missing for an IMPORTED target, or an ALIAS target
[20200526:145202]   is missing?
[20200526:145202] 
[20200526:145202] 
[20200526:145202] CMake Error at CMakeLists.txt:27 (add_executable):
[20200526:145202]   Target "serial_with_Fortran" links to target "adios2::thirdparty::yaml-cpp"
[20200526:145202]   but the target was not found.  Perhaps a find_package() call is missing for
[20200526:145202]   an IMPORTED target, or an ALIAS target is missing?
[20200526:145202] 
[20200526:145202] 
[20200526:145202] CMake Error at CMakeLists.txt:21 (add_executable):
[20200526:145202]   Target "serial_with_CXX" links to target "adios2::thirdparty::pugixml_impl"
[20200526:145202]   but the target was not found.  Perhaps a find_package() call is missing for
[20200526:145202]   an IMPORTED target, or an ALIAS target is missing?
[20200526:145202] 
[20200526:145202] 
[20200526:145202] CMake Error at CMakeLists.txt:21 (add_executable):
[20200526:145202]   Target "serial_with_CXX" links to target "adios2::thirdparty::yaml-cpp" but
[20200526:145202]   the target was not found.  Perhaps a find_package() call is missing for an
[20200526:145202]   IMPORTED target, or an ALIAS target is missing?
[20200526:145202] 
[20200526:145202] 
[20200526:145202] CMake Error at CMakeLists.txt:21 (add_executable):
[20200526:145202]   Target "serial_with_CXX" links to target "adios2::thirdparty::pugixml" but
[20200526:145202]   the target was not found.  Perhaps a find_package() call is missing for an
[20200526:145202]   IMPORTED target, or an ALIAS target is missing?
[20200526:145202] 
[20200526:145202] 
[20200526:145202] CMake Error at CMakeLists.txt:16 (add_executable):
[20200526:145202]   Target "serial_with_C" links to target "adios2::thirdparty::pugixml_impl"
[20200526:145202]   but the target was not found.  Perhaps a find_package() call is missing for
[20200526:145202]   an IMPORTED target, or an ALIAS target is missing?
[20200526:145202] 
[20200526:145202] 
[20200526:145202] CMake Error at CMakeLists.txt:16 (add_executable):
[20200526:145202]   Target "serial_with_C" links to target "adios2::thirdparty::yaml-cpp" but
[20200526:145202]   the target was not found.  Perhaps a find_package() call is missing for an
[20200526:145202]   IMPORTED target, or an ALIAS target is missing?
[20200526:145202] 
[20200526:145202] 
[20200526:145202] -- Generating done
[20200526:145202] CMake Generate step failed.  Build files cannot be regenerated correctly.
[20200526:145202] Failed
[20200526:145202] CMake Error at cmake/install/post/cmake_install.cmake:44 (message):
[20200526:145202]   generate-adios2-config.sh returned 1, should be 0
[20200526:145202] Call Stack (most recent call first):
[20200526:145202]   cmake_install.cmake:52 (include)
[20200526:145202] 
[20200526:145202] 
[20200526:145202] Makefile:73: recipe for target 'install' failed
[20200526:145202] make: *** [install] Error 1

To Reproduce
My cmake command is something like this:

    CC=cc CXX=CC FC=ftn \
    cmake \
        -DCMAKE_INSTALL_PREFIX=$PREFIX \
        -DCMAKE_BUILD_TYPE=Release \
        -DBUILD_SHARED_LIBS=OFF \
        -DADIOS2_USE_MPI=ON \
        -DADIOS2_USE_ZeroMQ=OFF \
        -DADIOS2_USE_HDF5=ON \
        -DADIOS2_USE_Python=OFF \
        -DADIOS2_USE_Fortran=ON \
        -DADIOS2_USE_SST=ON \
        -DADIOS2_USE_BZip2=OFF \
        -DADIOS2_USE_ZFP=OFF \
        -DADIOS2_USE_SZ=OFF \
        -DADIOS2_USE_MGARD=OFF \
        -DADIOS2_USE_PNG=OFF \
        -DADIOS2_BUILD_EXAMPLES_EXPERIMENTAL=OFF \
        -DADIOS2_BUILD_TESTING=OFF \
        -DADIOS2_USE_Profiling=OFF \
        ..

v2.5.0-1176-ge108db3a is the adios2 version.

Any quick advice?

Thanks,
Jong

Most helpful comment

That's a good reminder to get the static ci build turned back on.

All 9 comments

CC @KyleFromKitware

I'm not sure how this could happen. The "missing" targets should be defined in every possible code paths.

@chuckatkins I see you self-assigned this, do you already have an idea of what's going on?

I see the problem. Since BUILD_SHARED_LIBS is OFF, we're building static libraries, which means the targets that we use have to be found through find_package() even though they're PRIVATE. I can work on this.

That's a good reminder to get the static ci build turned back on.

That's a good reminder to get the static ci build turned back on.

I was gonna say, why didn't we have static CI?

So it got turned off... why?

GitHub was having storage limit problems with the vms so we weren't getting the guaranteed available space and the static builds were blowing out what we did have even after reducing to a minimal configuration. They recently rolled back the changes to their base image though so I think we can turn it back on.

Note: I have the same exact issue on Cori, (KNL, Intel compiler with static build)

2294 fixes this problem on Cori

I've disabled the ASAN build for now as it's holding things up. It's not a memory issue but we need to churn through some compiler flag problems specific to clang. Once it cycles through again then I'll merge #2294

Was this page helpful?
0 / 5 - 0 ratings