This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC 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: export symbols


Alberich de megres wrote:
> On Fri, Aug 14, 2009 at 12:53 PM, Andrew Haley<aph@redhat.com> wrote:
>> Please don't top-post.
>>
>> Alberich de megres wrote:
>>> Ian Lance Taylor<iant@google.com> wrote:
>>>> "Diego ." <eljedi@gmail.com> writes:
>>>>
>>>>> Reading this thread, i got one doubt: when using version scripts,
>>>>> is there some way to automate the build of a map file?
>>>> I don't understand the question.
>>>>
>>>> Certainly one can automate the building of a version script file in
>>>> various ways, e.g., based on the output of nm on the .o files.
>>>>
>>> Any web or tutorial where explains the basics for that? i really
>>> have a mess with all of this, sorry.
>>>
>>> I tried version scripts.. but nothing. Modules could not access to
>>> some calls on core part of my app :((
>> Examples are better than any other way to understand this.
>>
>> I have appended the version script that we use when building libjava.
>> It causes symbols beginning with "Jv", "_Jv_", and "_Z" to be
>> exported, along with "__gcj_personality_v0" and
>> "__gcj_personality_sj0".
>>
>> Does this explain what you need to know?
>> # Anonymous GNU ld version script to hide boehm-gc, libffi and fdlibm
>> # symbols in libgcj.so.
>>
>> {
>>  global: Jv*; _Jv_*; __gcj_personality_v0; __gcj_personality_sj0; _Z*;
>>  local: *;
>> };
>>
>>
> 
> How you compile your library?

It's complicated, but all the information is in gcc/libjava.

> I still have the same problem: on my module file everything goes fine,
> but on my core app file no API function are added to .dynsym table
> (the ones to be used by modules). Using you script i cannot get
> modules to access some funtions on core side, they only are added to
> .symtab table.
> 
> thanks once again!!!

We have got beyond the point where any progress can be made by talking
about this in the abstract.  You need to produce a detailed test case that
someone eles can run which shows the problem.  The smaller and simpler the
test case, the more likely people will help you.

Andrew.


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