This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: ld script fails to hide symbols


Thanks. readily -sW gives the same result.

This is the exposed boost symbol

946: 0000000000000108     8 TLS     LOCAL  DEFAULT   19
_ZN5boost4asio6detail15keyword_tss_ptrINS1_10call_stackINS1_15task_io_serviceENS1_27task_io_service_thread_infoEE7contextEE6value_E

This is the weak symbol

116549: 00000000002ab480     9 FUNC    WEAK   DEFAULT   12
_ZNK3api7Service13GetCachedSizeEv

On Fri, Feb 15, 2019 at 12:17 PM H.J. Lu <hjl.tools@gmail.com> wrote:

> On Fri, Feb 15, 2019 at 11:33 AM Ronghua Zhang <ronghuazhang@gmail.com>
> wrote:
> >
> > I have a .so library that uses boost and google protobuf. I don't want
> > symbols from boost and goole protobuf library to be exposed, so I used
> the
> > following ldscript:
> >
> > {
> >     global:
> >         extern "C++" {
> >             mynamespace::*;
> >         };
> >     local: *;
> > };
> >
> > From the output of nm, almost all symbols from boost and google protobuf
> > disappeared, but a few symbols are left:
> >
> > nm -D -C <mylib.so>
>
> Don't use nm for these kinds of things.  Please use "readelf -sW" instead.
>
> > 0000000000000108 b
> >
> boost::asio::detail::keyword_tss_ptr<boost::asio::detail::call_stack<boost::asio::detail::task_io_service,
> > boost::asio::detail::task_io_service_thread_info>::context>::value_
> > 0000000000000000 d google::protobuf::internal::ArenaImpl::thread_cache_
> > 00000000000000d8 b grpc_core::ExecCtx::exec_ctx_
> >
> > I also noticed that although most are marked  T as expected, a few
> > functions in the library as marked weak symbols (W). Why is that?
> >
> > 00000000002b5ae0 W mynamespace::ServiceImpl::data_collection() const
> >
> > The function is impleme
>
>
>
> --
> H.J.
>


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]