Linking problem with lld
Tijl Coosemans
tijl at FreeBSD.org
Fri Feb 22 21:36:08 UTC 2019
On Fri, 22 Feb 2019 16:09:09 +0100 Willem Jan Withagen <wjw at digiware.nl>
wrote:
> Hi Ed ea,
>
> In het ceph project, they started to use library versioning, so it seems.
>
> But compiling/linking that now with Clang and lld I run into trouble
> building the ceph-tools.
>
> This is what I get back of one of the Devs:
> --------------
> My guess is that your linker doesn't support the new symbol versioning
> exports and since the symbols are hidden by default they aren't visible
> in the shared library. Previously there was a bug (since Luminous and
> the switch the cmake) where every public and private symbol was exported
> by librados.
>
> We just need to know the magic words to use for your compiler/linker to
> change the symbol visibility to public for the API methods.
>
> --------------
>
> Now I looked thru the options on both Clang and lld, but nothing
> obviously springs into focus, as to add to change....
>
> This is how librados is build:
> /usr/bin/c++ -fPIC -Wall -Wtype-limits -Wignored-qualifiers
> -Winit-self -Wpointer-arith -Werror=format-security -fno-strict-aliasing
> -fsigned-char -Wno-unknown-pragmas -Wno-unused-function
> -Wno-unused-local-typedef -Wno-varargs -Wno-gnu-designator
> -Wno-missing-braces -Wno-parentheses -Wno-deprecated-register
> -ftemplate-depth-1024 -Wnon-virtual-dtor -Wno-unknown-pragmas
> -Wno-ignored-qualifiers -Wno-inconsistent-missing-override
> -Wno-mismatched-tags -Wno-unused-private-field
> -Wno-address-of-packed-member -DCEPH_DEBUG_MUTEX
> -fdiagnostics-color=auto -fno-builtin-malloc -fno-builtin-calloc
> -fno-builtin-realloc -fno-builtin-free -O0 -g
> -Wno-unused-command-line-argument -fuse-ld=/usr/bin/ld.lld
> -Wl,--exclude-libs,ALL
> -Wl,--version-script=/home/jenkins/workspace/ceph-master/src/librados/librados.map
Can you provide this librados.map file?
More information about the freebsd-toolchain
mailing list