Bug#1116631: openbabel FTBFS on arm64 due to -Wl,--fatal-warnings
Source: openbabel
Version: 3.1.1+dfsg-12
Severity: serious
Tags: ftbfs forky sid patch
X-Debbugs-Cc: debian-arm@lists.debian.org, Andrius Merkys <merkys@debian.org>
User: debian-arm@lists.debian.org
Usertags: arm64
https://buildd.debian.org/status/fetch.php?pkg=openbabel&arch=arm64&ver=3.1.1%2Bdfsg-13&stamp=1759147367&raw=0
...
/usr/lib/gcc/aarch64-linux-gnu/15/../../../aarch64-linux-gnu/libmaeparser.so: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking.
/usr/lib/gcc/aarch64-linux-gnu/15/../../../aarch64-linux-gnu/libcoordgen.so: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking.
/usr/lib/gcc/aarch64-linux-gnu/15/../../../aarch64-linux-gnu/libz.so: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking.
/usr/lib/gcc/aarch64-linux-gnu/15/libstdc++.so: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking.
/lib/aarch64-linux-gnu/libm.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking.
/lib/aarch64-linux-gnu/libmvec.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking.
/lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking.
/lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking.
/usr/lib/gcc/aarch64-linux-gnu/15/libgomp.so: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking.
/lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking.
/lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking.
collect2: error: ld returned 1 exit status
/usr/bin/c++ -fPIC -g -O2 -ffile-prefix-map=/build/reproducible-path/openbabel-3.1.1+dfsg=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -Wdate-time -D_FORTIFY_SOURCE=2 -pthread -fopenmp -Wl,--dependency-file=CMakeFiles/openbabel.dir/link.d -Wl,--enable-new-dtags -Wl,--fatal-warnings -Wl,--no-undefined -lc -Wl,-z,relro -shared -Wl,-soname,libopenbabel.so.7 -o ../lib/aarch64-linux-gnu/libopenbabel.so.7.0.0 CMakeFiles/openbabel.dir/alias.cpp.o CMakeFiles/openbabel.dir/atom.cpp.o CMakeFiles/openbabel.dir/base.cpp.o CMakeFiles/openbabel.dir/bitvec.cpp.o CMakeFiles/openbabel.dir/bond.cpp.o CMakeFiles/openbabel.dir/bondtyper.cpp.o CMakeFiles/openbabel.dir/builder.cpp.o CMakeFiles/openbabel.dir/canon.cpp.o CMakeFiles/openbabel.dir/chains.cpp.o CMakeFiles/openbabel.dir/chargemodel.cpp.o CMakeFiles/openbabel.dir/data.cpp.o CMakeFiles/openbabel.dir/data_utilities.cpp.o CMakeFiles/openbabel.dir/descriptor.cpp.o CMakeFiles/openbabel.dir/elements.cpp.o CMakeFiles/openbabel.dir/fingerprint.cpp.o CMakeFiles/openbabel.dir/forcefield.cpp.o CMakeFiles/openbabel.dir/format.cpp.o CMakeFiles/openbabel.dir/generic.cpp.o CMakeFiles/openbabel.dir/graphsym.cpp.o CMakeFiles/openbabel.dir/grid.cpp.o CMakeFiles/openbabel.dir/griddata.cpp.o CMakeFiles/openbabel.dir/isomorphism.cpp.o CMakeFiles/openbabel.dir/kekulize.cpp.o CMakeFiles/openbabel.dir/locale.cpp.o CMakeFiles/openbabel.dir/matrix.cpp.o CMakeFiles/openbabel.dir/mcdlutil.cpp.o CMakeFiles/openbabel.dir/molchrg.cpp.o CMakeFiles/openbabel.dir/mol.cpp.o CMakeFiles/openbabel.dir/obconversion.cpp.o CMakeFiles/openbabel.dir/oberror.cpp.o CMakeFiles/openbabel.dir/obfunctions.cpp.o CMakeFiles/openbabel.dir/obiter.cpp.o CMakeFiles/openbabel.dir/obutil.cpp.o CMakeFiles/openbabel.dir/op.cpp.o CMakeFiles/openbabel.dir/parsmart.cpp.o CMakeFiles/openbabel.dir/patty.cpp.o CMakeFiles/openbabel.dir/phmodel.cpp.o CMakeFiles/openbabel.dir/plugin.cpp.o CMakeFiles/openbabel.dir/pointgroup.cpp.o CMakeFiles/openbabel.dir/query.cpp.o CMakeFiles/openbabel.dir/rand.cpp.o CMakeFiles/openbabel.dir/reactionfacade.cpp.o CMakeFiles/openbabel.dir/residue.cpp.o CMakeFiles/openbabel.dir/ring.cpp.o CMakeFiles/openbabel.dir/rotamer.cpp.o CMakeFiles/openbabel.dir/rotor.cpp.o CMakeFiles/openbabel.dir/spectrophore.cpp.o CMakeFiles/openbabel.dir/tautomer.cpp.o CMakeFiles/openbabel.dir/tokenst.cpp.o CMakeFiles/openbabel.dir/transform.cpp.o CMakeFiles/openbabel.dir/typer.cpp.o CMakeFiles/openbabel.dir/obmolecformat.cpp.o CMakeFiles/openbabel.dir/conformersearch.cpp.o CMakeFiles/openbabel.dir/confsearch.cpp.o CMakeFiles/openbabel.dir/distgeom.cpp.o CMakeFiles/openbabel.dir/dlhandler_unix.cpp.o CMakeFiles/openbabel.dir/depict/depict.cpp.o CMakeFiles/openbabel.dir/depict/svgpainter.cpp.o CMakeFiles/openbabel.dir/math/matrix3x3.cpp.o CMakeFiles/openbabel.dir/math/spacegroup.cpp.o CMakeFiles/openbabel.dir/math/transform3d.cpp.o CMakeFiles/openbabel.dir/math/vector3.cpp.o CMakeFiles/openbabel.dir/math/align.cpp.o CMakeFiles/openbabel.dir/stereo/stereo.cpp.o CMakeFiles/openbabel.dir/stereo/tetranonplanar.cpp.o CMakeFiles/openbabel.dir/stereo/tetraplanar.cpp.o CMakeFiles/openbabel.dir/stereo/squareplanar.cpp.o CMakeFiles/openbabel.dir/stereo/cistrans.cpp.o CMakeFiles/openbabel.dir/stereo/tetrahedral.cpp.o CMakeFiles/openbabel.dir/stereo/perception.cpp.o CMakeFiles/openbabel.dir/stereo/facade.cpp.o CMakeFiles/openbabel.dir/stereo/gen3dstereohelper.cpp.o -lmaeparser -lcoordgen -lm -ldl -lz
make[4]: *** [src/CMakeFiles/openbabel.dir/build.make:1244: lib/aarch64-linux-gnu/libopenbabel.so.7.0.0] Error 1
A fix is attached.
For background information see
https://wiki.debian.org/ToolChain/GCS
and https://bugs.debian.org/1115108#21
Description: Don't build with -Wl,--fatal-warnings
Author: Adrian Bunk <bunk@debian.org>
--- openbabel-3.1.1+dfsg.orig/CMakeLists.txt
+++ openbabel-3.1.1+dfsg/CMakeLists.txt
@@ -282,12 +282,12 @@ if(NOT MSVC)
# note: Altough MinGW g++ 4.4 passes this test, visibility can't be used
if(CMAKE_COMPILER_IS_GNUCXX AND NOT APPLE)
if(CMAKE_SYSTEM_NAME MATCHES Linux)
- set (CMAKE_SHARED_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}")
+ set (CMAKE_SHARED_LINKER_FLAGS "-Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}")
set (CMAKE_SHARED_LINKER_FLAGS "-Wl,--enable-new-dtags ${CMAKE_SHARED_LINKER_FLAGS}")
- set (CMAKE_MODULE_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}")
+ set (CMAKE_MODULE_LINKER_FLAGS "-Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}")
set (CMAKE_MODULE_LINKER_FLAGS "-Wl,--enable-new-dtags ${CMAKE_SHARED_LINKER_FLAGS}")
if(BUILD_SHARED)
- set (CMAKE_EXE_LINKER_FLAGS "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}")
+ set (CMAKE_EXE_LINKER_FLAGS "-Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}")
set (CMAKE_EXE_LINKER_FLAGS "-Wl,--enable-new-dtags ${CMAKE_EXE_LINKER_FLAGS}")
endif()
endif ()
Reply to: