Date: Tue, 5 Jul 2016 13:59:59 +0200 From: Willem Jan Withagen <wjw@digiware.nl> To: Pietro Cerutti <gahr@FreeBSD.org> Cc: FreeBSD Hackers <freebsd-hackers@freebsd.org>, owner-freebsd-hackers@freebsd.org Subject: Re: Problem during dlopen() Message-ID: <206facb4-cb1c-e52c-b387-3344c41c12e7@digiware.nl> In-Reply-To: <416028b6b2a1dffe4e010b5792c56100@gahr.ch> References: <5e29e535-f91f-35fb-2a7e-324bb19b658f@digiware.nl> <416028b6b2a1dffe4e010b5792c56100@gahr.ch>
next in thread | previous in thread | raw e-mail | index | archive | help
On 5-7-2016 13:45, Pietro Cerutti wrote: > On 2016-07-05 13:13, Willem Jan Withagen wrote: >> Hi, >> >> I'm banging my head agains the wall because I cannot seem to get this >> working. >> >> The problem is due to changing from automake to cmake building. >> >> But all my dlopens start failing with something like: >> load failed dlopen(build/lib/compressor/libceph_snappy.so) or >> dlopen(build/lib/libceph_snappy.so): build/lib/libceph_snappy.so: >> Undefined symbol "_ZN4ceph6buffer4list8iterator7advanceEl" >> >> If do a lookup for the name: >> nm build/lib/libceph_snappy.so |grep ceph6buffer4list8iterator7advanceEl >> >> if give me: >> U _ZN4ceph6buffer4list8iterator7advanceEl >> >> The parent/calling executable however has: >> 0000000000513de0 T _ZN4ceph6buffer4list8iterator7advanceEl >> >> Clearly dlopen is not able to match these 2 and succeed. >> >> Question: >> So on which part of the building is what switch missing. > > Wild guess: -Wl,-E linking the executable. > And bonus point for Pietro. I did have that switch, but I had it on the lib that needed to be loaded. So: Too many switches/options/flags in Cmake for my taste. --WjW
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?206facb4-cb1c-e52c-b387-3344c41c12e7>