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

Static build fails with BBAPI enabled #453

Open
CamStan opened this issue Oct 28, 2021 · 1 comment
Open

Static build fails with BBAPI enabled #453

CamStan opened this issue Oct 28, 2021 · 1 comment

Comments

@CamStan
Copy link
Member

CamStan commented Oct 28, 2021

First encountered this when testing the Spack builds. Was able to replicate it with bootstrap.sh.

How to Reproduce

Using bootstrap.sh from PR #452, open that file and edit the AXL cmake options to enable IBM BBAPI during a static build; e.g., -DENABLE_IBM_BBAPI=ON.
Then run bootstrap.sh and then configure scr with -DENABLE_IBM_BBAPI=ON and -DBUILD_SHARED_LIBS=OFF and build:

$ ./boostrap.sh --debug --dev --static
$ mkdir -p build && cd build
$ cmake -DCMAKE_INSTALL_PREFIX=/path/to/scr/install -DSCR_RESOURCE_MANAGER=LSF -DENABLE_IBM_BBAPI=ON -DBUILD_SHARED_LIBS=OFF ..
$ make VERBOSE=1

Resulting Error(s)

make -f src/CMakeFiles/scr_flush_file.dir/build.make src/CMakeFiles/scr_flush_file.dir/build
make[2]: Entering directory '/usr/WS1/stanavig/trash/scr/build'
[ 26%] Building C object src/CMakeFiles/scr_flush_file.dir/scr_flush_file.c.o
cd /usr/workspace/stanavig/trash/scr/build/src && /usr/tcetmp/bin/cc  -I/usr/workspace/stanavig/trash/scr/install/include -I/usr/tce/packages/spectrum-mpi/ibm/spectrum-mpi-2020.08.19/include -I/usr/workspace/stanavig/trash/scr/src -I/usr/workspace/stanavig/trash/scr/build  -Wall  -fPIE   -o CMakeFiles/scr_flush_file.dir/scr_flush_file.c.o   -c /usr/workspace/stanavig/trash/scr/src/scr_flush_file.c
[ 27%] Linking C executable scr_flush_file
cd /usr/workspace/stanavig/trash/scr/build/src && /usr/tce/packages/cmake/cmake-3.14.5/bin/cmake -E cmake_link_script CMakeFiles/scr_flush_file.dir/link.txt --verbose=1
/usr/tcetmp/bin/cc -Wall   -rdynamic CMakeFiles/scr_flush_file.dir/scr_flush_file.c.o  -o scr_flush_file libscr_base.a ../../install/lib64/libaxl.a ../../install/lib64/libredset_base.a ../../install/lib64/libspath_base.a ../../install/lib64/libkvtree_base.a -lz -lpthread
../../install/lib64/libaxl.a(axl_async_bbapi.c.o): In function `getLastErrorDetails':
/usr/workspace/stanavig/trash/scr/deps/AXL/src/axl_async_bbapi.c:127: undefined reference to `BB_GetLastErrorDetails'
/usr/workspace/stanavig/trash/scr/deps/AXL/src/axl_async_bbapi.c:130: undefined reference to `BB_GetLastErrorDetails'
../../install/lib64/libaxl.a(axl_async_bbapi.c.o): In function `axl_async_init_bbapi':
/usr/workspace/stanavig/trash/scr/deps/AXL/src/axl_async_bbapi.c:219: undefined reference to `BB_InitLibrary'
../../install/lib64/libaxl.a(axl_async_bbapi.c.o): In function `axl_async_finalize_bbapi':
/usr/workspace/stanavig/trash/scr/deps/AXL/src/axl_async_bbapi.c:236: undefined reference to `BB_TerminateLibrary'
../../install/lib64/libaxl.a(axl_async_bbapi.c.o): In function `axl_async_create_bbapi':
/usr/workspace/stanavig/trash/scr/deps/AXL/src/axl_async_bbapi.c:294: undefined reference to `BB_CreateTransferDef'
/usr/workspace/stanavig/trash/scr/deps/AXL/src/axl_async_bbapi.c:305: undefined reference to `BB_GetTransferHandle'
../../install/lib64/libaxl.a(axl_async_bbapi.c.o): In function `axl_async_add_bbapi':
/usr/workspace/stanavig/trash/scr/deps/AXL/src/axl_async_bbapi.c:355: undefined reference to `BB_AddFiles'
../../install/lib64/libaxl.a(axl_async_bbapi.c.o): In function `__axl_async_start_bbapi':
/usr/workspace/stanavig/trash/scr/deps/AXL/src/axl_async_bbapi.c:421: undefined reference to `BB_StartTransfer'
/usr/workspace/stanavig/trash/scr/deps/AXL/src/axl_async_bbapi.c:444: undefined reference to `BB_FreeTransferDef'
../../install/lib64/libaxl.a(axl_async_bbapi.c.o): In function `transfer_is_complete_bbapi':
/usr/workspace/stanavig/trash/scr/deps/AXL/src/axl_async_bbapi.c:518: undefined reference to `BB_GetTransferInfo'
../../install/lib64/libaxl.a(axl_async_bbapi.c.o): In function `axl_async_cancel_bbapi':
/usr/workspace/stanavig/trash/scr/deps/AXL/src/axl_async_bbapi.c:653: undefined reference to `BB_CancelTransfer'
collect2: error: ld returned 1 exit status
make[2]: *** [src/CMakeFiles/scr_flush_file.dir/build.make:90: src/scr_flush_file] Error 1
make[2]: Leaving directory '/usr/WS1/stanavig/trash/scr/build'
make[1]: *** [CMakeFiles/Makefile2:1168: src/CMakeFiles/scr_flush_file.dir/all] Error 2
make[1]: Leaving directory '/usr/WS1/stanavig/trash/scr/build'
make: *** [Makefile:141: all] Error 2
@CamStan
Copy link
Member Author

CamStan commented Nov 2, 2021

Related to #318

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

1 participant