Skip to content

Commit 6cd95de

Browse files
committed
Merge bitcoin/bitcoin#31395: build: Set shared linker flags in toolchain file
a8e0470 build: Set shared linker flags in toolchain file (TheCharlatan) Pull request description: These are required when cross-compiling shared libraries such as the kernel library. This was discovered after attempting to cross-compile the kernel library and running into the following error: ``` [100%] Linking CXX shared library libbitcoinkernel.dylib /usr/bin/ld: unrecognised emulation mode: llvm Supported emulations: elf_x86_64 elf32_x86_64 elf_i386 elf_iamcu i386pep i386pe clang++: error: linker command failed with exit code 1 (use -v to see invocation) gmake[3]: *** [src/kernel/CMakeFiles/bitcoinkernel.dir/build.make:1209: src/kernel/libbitcoinkernel.dylib] Error 1 gmake[2]: *** [CMakeFiles/Makefile2:1175: src/kernel/CMakeFiles/bitcoinkernel.dir/all] Error 2 gmake[1]: *** [CMakeFiles/Makefile2:1182: src/kernel/CMakeFiles/bitcoinkernel.dir/rule] Error 2 gmake: *** [Makefile:569: bitcoinkernel] Error 2 ``` ACKs for top commit: hebasto: ACK a8e0470, tested on Ubuntu 24.04: tdb3: ACK a8e0470 Tree-SHA512: a896f366348647888085fdbe66ff3d21484ca3b7cba0ba5390adb55bbcfe3ec09d4f81dd514ecf360cd0d31dcc8311108c4b772cecd5ea719d1c07faef285ecf
2 parents abeebcc + a8e0470 commit 6cd95de

File tree

1 file changed

+9
-0
lines changed

1 file changed

+9
-0
lines changed

depends/toolchain.cmake.in

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,12 +55,21 @@ set(DEPENDS_COMPILE_DEFINITIONS_DEBUG @CPPFLAGS_DEBUG@)
5555
if(NOT DEFINED CMAKE_EXE_LINKER_FLAGS_INIT)
5656
set(CMAKE_EXE_LINKER_FLAGS_INIT "@LDFLAGS@")
5757
endif()
58+
if(NOT DEFINED CMAKE_SHARED_LINKER_FLAGS_INIT)
59+
set(CMAKE_SHARED_LINKER_FLAGS_INIT "@LDFLAGS@")
60+
endif()
5861
if(NOT DEFINED CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO_INIT)
5962
set(CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO_INIT "@LDFLAGS_RELEASE@")
6063
endif()
64+
if(NOT DEFINED CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO_INIT)
65+
set(CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO_INIT "@LDFLAGS_RELEASE@")
66+
endif()
6167
if(NOT DEFINED CMAKE_EXE_LINKER_FLAGS_DEBUG_INIT)
6268
set(CMAKE_EXE_LINKER_FLAGS_DEBUG_INIT "@LDFLAGS_DEBUG@")
6369
endif()
70+
if(NOT DEFINED CMAKE_SHARED_LINKER_FLAGS_DEBUG_INIT)
71+
set(CMAKE_SHARED_LINKER_FLAGS_DEBUG_INIT "@LDFLAGS_DEBUG@")
72+
endif()
6473

6574
set(CMAKE_AR "@AR@")
6675
set(CMAKE_RANLIB "@RANLIB@")

0 commit comments

Comments
 (0)