certi-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [certi-dev] Problem building CERTI on Mac OS X


From: Eric Noulard
Subject: Re: [certi-dev] Problem building CERTI on Mac OS X
Date: Tue, 26 Apr 2011 10:21:18 +0200

2011/4/26 Mark Brown <address@hidden>:
> Bonjour Eric,
>
> Thanks for getting back to me so fast.

Sometimes I do sometimes I don't, lucky day :-]

>> May be the default behavior of gcc on the Mac is to set visibilty to
>> hidden, does it?
>
> I don't think so. The Apple developer documentation states that gcc 4.0 or
> later assume default visibility unless you explicity set the -fvisibility
> flag during compilation.
>
>> I am trying to reproduce the issue on Linux using gcc -fvisibility=hidden.
>> On your side may be you can try to add
>>
>> -fvisibility=default into CFLAGS (or modify main CMakeLists.txt in the
>> GCC specific area).
>
> I tried this with the same result. Doing a make -n confirms that the
> visibility flag is set to default, e.g.:

[...]

OK, I was getting similar warnings with -fvisibility=hidden on Linux
and many more errors too so this is definitely not the culprit.

The fact is we do not currently have MacOS user as of now
so you may be the first to try compile CERTI on MacOS.
If anybody listening here has been able to compile CERTI on MacOS
please step in.

And I do not personnally have access to a MacOS host
so it'll be hard for me to reproduce this for now.
I'll try to find one but I cannot guarantee the timeline.

>> Which version of CERTI are you trying to build?
>
> version 3.4.0. Sorry, I should have stated.

No problem.
Would you be able to give current CVS a shot?
https://savannah.nongnu.org/cvs/?group=certi

In any case could you please file a bug report for this on the tracker:
https://savannah.nongnu.org/bugs/?group=certi
or may be add some comments on:
https://savannah.nongnu.org/bugs/?30003

If you have a Savannah account, log in before filing the bug that way
you'll get automatic
follow-up from the tracker.

That said I am pretty sure the trouble comes from circular ref mess i.e.:
RTI::Exception is defined in libRTI
and we cannot
target_link_libraries(FedTime RTI)
because we already have
target_link_libraries(RTI FedTime)
since libRTI is referring to RTI::FedTime.

This design is flawed but this is the way HLA standard was defined...
until now I don't know how to handle this properly. Any suggestion is welcomed.

Now WHY is this compiling on Linux (and Windows) and not on MacOS is
currently a mystery to me. May be the linker is doing a more thorough
job about runtime type information.

-- 
Erk
Membre de l'April - « promouvoir et défendre le logiciel libre » -
http://www.april.org



reply via email to

[Prev in Thread] Current Thread [Next in Thread]