Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Configure fails to find costa submodule and build fails to build with costa-2.2 #126

Closed
yurivict opened this issue Feb 23, 2023 · 1 comment

Comments

@yurivict
Copy link

When costa-2.2 is installed costa fails:

===>  Building for cosma-2.6.3
[ 33% 3/3] : && /usr/local/libexec/ccache/c++ -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -O2 -pipe -fstack-protector-strong -fno-strict-aliasing   -DNDEBUG -fstack-protector-strong     -Wl,-rpath=-Wl,-rpath=/usr/local/lib/gcc12 -Wl,-rpath -Wl,/usr/local/mpi/openmpi/lib -Wl,--enable-new-dtags -pthread -fopenmp=libomp miniapp/CMakeFiles/cosma_miniapp.dir/cosma_miniapp.cpp.o -o miniapp/cosma_miniapp  -Wl,-rpath,/usr/ports/math/cosma/work/.build/src/cosma:/usr/local/lib:/usr/local/mpi/openmpi/lib:  src/cosma/libcosma.so  /usr/local/lib/libcosta.so  /usr/local/mpi/openmpi/lib/libmpi_cxx.so  /usr/local/mpi/openmpi/lib/libmpi.so  /usr/lib/libomp.so  /usr/local/lib/libopenblas.so && :
FAILED: miniapp/cosma_miniapp 
: && /usr/local/libexec/ccache/c++ -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -O2 -pipe -fstack-protector-strong -fno-strict-aliasing   -DNDEBUG -fstack-protector-strong     -Wl,-rpath=-Wl,-rpath=/usr/local/lib/gcc12 -Wl,-rpath -Wl,/usr/local/mpi/openmpi/lib -Wl,--enable-new-dtags -pthread -fopenmp=libomp miniapp/CMakeFiles/cosma_miniapp.dir/cosma_miniapp.cpp.o -o miniapp/cosma_miniapp  -Wl,-rpath,/usr/ports/math/cosma/work/.build/src/cosma:/usr/local/lib:/usr/local/mpi/openmpi/lib:  src/cosma/libcosma.so  /usr/local/lib/libcosta.so  /usr/local/mpi/openmpi/lib/libmpi_cxx.so  /usr/local/mpi/openmpi/lib/libmpi.so  /usr/lib/libomp.so  /usr/local/lib/libopenblas.so && :
ld: error: src/cosma/libcosma.so: undefined reference to void costa::transform<double>(std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<double> >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<double> > > >&, std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<double> >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<double> > > >&, char const*, double const*, double const*, ompi_communicator_t*) [--no-allow-shlib-undefined]
ld: error: src/cosma/libcosma.so: undefined reference to void costa::transform<double>(std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<double> >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<double> > > >&, std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<double> >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<double> > > >&, ompi_communicator_t*) [--no-allow-shlib-undefined]
ld: error: src/cosma/libcosma.so: undefined reference to void costa::transform<float>(std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<float> >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<float> > > >&, std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<float> >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<float> > > >&, char const*, float const*, float const*, ompi_communicator_t*) [--no-allow-shlib-undefined]
ld: error: src/cosma/libcosma.so: undefined reference to void costa::transform<float>(std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<float> >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<float> > > >&, std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<float> >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<float> > > >&, ompi_communicator_t*) [--no-allow-shlib-undefined]
ld: error: src/cosma/libcosma.so: undefined reference to void costa::transform<std::__1::complex<double> >(std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<double> > >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<double> > > > >&, std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<double> > >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<double> > > > >&, char const*, std::__1::complex<double> const*, std::__1::complex<double> const*, ompi_communicator_t*) [--no-allow-shlib-undefined]
ld: error: src/cosma/libcosma.so: undefined reference to void costa::transform<std::__1::complex<double> >(std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<double> > >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<double> > > > >&, std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<double> > >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<double> > > > >&, ompi_communicator_t*) [--no-allow-shlib-undefined]
ld: error: src/cosma/libcosma.so: undefined reference to void costa::transform<std::__1::complex<float> >(std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<float> > >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<float> > > > >&, std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<float> > >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<float> > > > >&, char const*, std::__1::complex<float> const*, std::__1::complex<float> const*, ompi_communicator_t*) [--no-allow-shlib-undefined]
ld: error: src/cosma/libcosma.so: undefined reference to void costa::transform<std::__1::complex<float> >(std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<float> > >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<float> > > > >&, std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<float> > >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<float> > > > >&, ompi_communicator_t*) [--no-allow-shlib-undefined]
c++: error: linker command failed with exit code 1 (use -v to see invocation)
[ 66% 3/3] : && /usr/local/libexec/ccache/c++ -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -O2 -pipe -fstack-protector-strong -fno-strict-aliasing   -DNDEBUG -fstack-protector-strong     -Wl,-rpath=-Wl,-rpath=/usr/local/lib/gcc12 -Wl,-rpath -Wl,/usr/local/mpi/openmpi/lib -Wl,--enable-new-dtags -pthread -fopenmp=libomp miniapp/CMakeFiles/layout_miniapp.dir/layout_miniapp.cpp.o -o miniapp/layout_miniapp  -Wl,-rpath,/usr/ports/math/cosma/work/.build/src/cosma:/usr/local/lib:/usr/local/mpi/openmpi/lib:  src/cosma/libcosma.so  /usr/local/lib/libcosta.so  /usr/local/mpi/openmpi/lib/libmpi_cxx.so  /usr/local/mpi/openmpi/lib/libmpi.so  /usr/lib/libomp.so  /usr/local/lib/libopenblas.so && :
FAILED: miniapp/layout_miniapp 
: && /usr/local/libexec/ccache/c++ -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -O2 -pipe -fstack-protector-strong -fno-strict-aliasing   -DNDEBUG -fstack-protector-strong     -Wl,-rpath=-Wl,-rpath=/usr/local/lib/gcc12 -Wl,-rpath -Wl,/usr/local/mpi/openmpi/lib -Wl,--enable-new-dtags -pthread -fopenmp=libomp miniapp/CMakeFiles/layout_miniapp.dir/layout_miniapp.cpp.o -o miniapp/layout_miniapp  -Wl,-rpath,/usr/ports/math/cosma/work/.build/src/cosma:/usr/local/lib:/usr/local/mpi/openmpi/lib:  src/cosma/libcosma.so  /usr/local/lib/libcosta.so  /usr/local/mpi/openmpi/lib/libmpi_cxx.so  /usr/local/mpi/openmpi/lib/libmpi.so  /usr/lib/libomp.so  /usr/local/lib/libopenblas.so && :
ld: error: src/cosma/libcosma.so: undefined reference to void costa::transform<double>(std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<double> >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<double> > > >&, std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<double> >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<double> > > >&, char const*, double const*, double const*, ompi_communicator_t*) [--no-allow-shlib-undefined]
ld: error: src/cosma/libcosma.so: undefined reference to void costa::transform<double>(std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<double> >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<double> > > >&, std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<double> >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<double> > > >&, ompi_communicator_t*) [--no-allow-shlib-undefined]
ld: error: src/cosma/libcosma.so: undefined reference to void costa::transform<float>(std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<float> >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<float> > > >&, std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<float> >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<float> > > >&, char const*, float const*, float const*, ompi_communicator_t*) [--no-allow-shlib-undefined]
ld: error: src/cosma/libcosma.so: undefined reference to void costa::transform<float>(std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<float> >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<float> > > >&, std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<float> >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<float> > > >&, ompi_communicator_t*) [--no-allow-shlib-undefined]
ld: error: src/cosma/libcosma.so: undefined reference to void costa::transform<std::__1::complex<double> >(std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<double> > >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<double> > > > >&, std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<double> > >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<double> > > > >&, char const*, std::__1::complex<double> const*, std::__1::complex<double> const*, ompi_communicator_t*) [--no-allow-shlib-undefined]
ld: error: src/cosma/libcosma.so: undefined reference to void costa::transform<std::__1::complex<double> >(std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<double> > >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<double> > > > >&, std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<double> > >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<double> > > > >&, ompi_communicator_t*) [--no-allow-shlib-undefined]
ld: error: src/cosma/libcosma.so: undefined reference to void costa::transform<std::__1::complex<float> >(std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<float> > >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<float> > > > >&, std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<float> > >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<float> > > > >&, char const*, std::__1::complex<float> const*, std::__1::complex<float> const*, ompi_communicator_t*) [--no-allow-shlib-undefined]
ld: error: src/cosma/libcosma.so: undefined reference to void costa::transform<std::__1::complex<float> >(std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<float> > >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<float> > > > >&, std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<float> > >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<float> > > > >&, ompi_communicator_t*) [--no-allow-shlib-undefined]
c++: error: linker command failed with exit code 1 (use -v to see invocation)
[100% 3/3] : && /usr/local/libexec/ccache/c++ -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -O2 -pipe -fstack-protector-strong -fno-strict-aliasing   -DNDEBUG -fstack-protector-strong     -Wl,-rpath=-Wl,-rpath=/usr/local/lib/gcc12 -Wl,-rpath -Wl,/usr/local/mpi/openmpi/lib -Wl,--enable-new-dtags -pthread -fopenmp=libomp miniapp/CMakeFiles/cosma_statistics.dir/cosma_statistics.cpp.o -o miniapp/cosma_statistics  -Wl,-rpath,/usr/ports/math/cosma/work/.build/src/cosma:/usr/local/lib:/usr/local/mpi/openmpi/lib:  src/cosma/libcosma.so  /usr/local/lib/libcosta.so  /usr/local/mpi/openmpi/lib/libmpi_cxx.so  /usr/local/mpi/openmpi/lib/libmpi.so  /usr/lib/libomp.so  /usr/local/lib/libopenblas.so && :
FAILED: miniapp/cosma_statistics 
: && /usr/local/libexec/ccache/c++ -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -O2 -pipe -fstack-protector-strong -fno-strict-aliasing   -DNDEBUG -fstack-protector-strong     -Wl,-rpath=-Wl,-rpath=/usr/local/lib/gcc12 -Wl,-rpath -Wl,/usr/local/mpi/openmpi/lib -Wl,--enable-new-dtags -pthread -fopenmp=libomp miniapp/CMakeFiles/cosma_statistics.dir/cosma_statistics.cpp.o -o miniapp/cosma_statistics  -Wl,-rpath,/usr/ports/math/cosma/work/.build/src/cosma:/usr/local/lib:/usr/local/mpi/openmpi/lib:  src/cosma/libcosma.so  /usr/local/lib/libcosta.so  /usr/local/mpi/openmpi/lib/libmpi_cxx.so  /usr/local/mpi/openmpi/lib/libmpi.so  /usr/lib/libomp.so  /usr/local/lib/libopenblas.so && :
ld: error: src/cosma/libcosma.so: undefined reference to void costa::transform<double>(std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<double> >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<double> > > >&, std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<double> >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<double> > > >&, char const*, double const*, double const*, ompi_communicator_t*) [--no-allow-shlib-undefined]
ld: error: src/cosma/libcosma.so: undefined reference to void costa::transform<double>(std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<double> >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<double> > > >&, std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<double> >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<double> > > >&, ompi_communicator_t*) [--no-allow-shlib-undefined]
ld: error: src/cosma/libcosma.so: undefined reference to void costa::transform<float>(std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<float> >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<float> > > >&, std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<float> >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<float> > > >&, char const*, float const*, float const*, ompi_communicator_t*) [--no-allow-shlib-undefined]
ld: error: src/cosma/libcosma.so: undefined reference to void costa::transform<float>(std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<float> >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<float> > > >&, std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<float> >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<float> > > >&, ompi_communicator_t*) [--no-allow-shlib-undefined]
ld: error: src/cosma/libcosma.so: undefined reference to void costa::transform<std::__1::complex<double> >(std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<double> > >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<double> > > > >&, std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<double> > >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<double> > > > >&, char const*, std::__1::complex<double> const*, std::__1::complex<double> const*, ompi_communicator_t*) [--no-allow-shlib-undefined]
ld: error: src/cosma/libcosma.so: undefined reference to void costa::transform<std::__1::complex<double> >(std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<double> > >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<double> > > > >&, std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<double> > >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<double> > > > >&, ompi_communicator_t*) [--no-allow-shlib-undefined]
ld: error: src/cosma/libcosma.so: undefined reference to void costa::transform<std::__1::complex<float> >(std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<float> > >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<float> > > > >&, std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<float> > >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<float> > > > >&, char const*, std::__1::complex<float> const*, std::__1::complex<float> const*, ompi_communicator_t*) [--no-allow-shlib-undefined]
ld: error: src/cosma/libcosma.so: undefined reference to void costa::transform<std::__1::complex<float> >(std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<float> > >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<float> > > > >&, std::__1::vector<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<float> > >, std::__1::allocator<std::__1::reference_wrapper<costa::grid_layout<std::__1::complex<float> > > > >&, ompi_communicator_t*) [--no-allow-shlib-undefined]

When there's no external costa and there's costa submodule present - configure fails to find it:

cosma-2.6.3
FreeBSD 13.1

@simonpintarelli
Copy link
Member

The submodules pointed to incompatible versions of tiled-mm and COSTA. This should be fixed in https://github.com/eth-cscs/COSMA/releases/tag/v2.6.4. Preferred way of building is to compile COSTA, tiled-mm as external libraries or to use spack.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants