[ITK-dev] -fvisibility=hidden link warnings with GetMetaDataObjectTypeName()
Johnson, Hans J
hans-johnson at uiowa.edu
Tue Nov 29 10:04:12 EST 2016
Brad,
Is that command line correct?
:BOOL=hidden ? Is that true, or false, or should it be :STRING=hidden ?
Hans
--
On 11/29/16, 8:19 AM, "Insight-developers on behalf of Lowekamp, Bradley (NIH/NLM/LHC) [C]" <insight-developers-bounces at itk.org on behalf of blowekamp at mail.nih.gov> wrote:
Thanks for the update, and the work to narrow your problem down.
Just to let you know, another alternative to managing the flags is to use CMake preset property variables. When I build ITK for SimpleITK I apply (depending on the configuration) the following CMake options:
-DCMAKE_C_VISIBILITY_PRESET:BOOL=hidden
-DCMAKE_CXX_VISIBILITY_PRESET:BOOL=hidden
-DCMAKE_VISIBILITY_INLINES_HIDDEN:BOOL=ON
This seems to work well now. And CMake appears to append the option after on the programatic manipulation of the standard flag variables.
HTH,
Brad
> On Nov 28, 2016, at 4:59 PM, Sean McBride <sean at rogue-research.com> wrote:
>
> On Fri, 25 Nov 2016 20:55:31 +0000, Lowekamp, Bradley (NIH/NLM/LHC) [C] said:
>
>> I presume you are compiling ITK with shared libraries?
>
> No, as static libraries.
>
>> Would you happen to have a minimal example of “MyOwnCode.cxx” that
>> reproduces this warning?
>
> I reduced it to a very small Xcode project with only 1 source file. Then I continued to reduce it to just a command line invocation of clang and it stopped reproducing. :(
>
> I soon discovered that between Xcode 6.4 and 7.0 a bug seems to have been introduced where turning on "symbols hidden by default" in the GUI (aka "GCC_SYMBOLS_PRIVATE_EXTERN = YES") doesn't actually pass "-fvisibility=hidden" to clang!
>
> So, for my particular case at least, there is no ITK issue here. Sorry for the noise.
>
> Cheers,
>
> --
> ____________________________________________________________
> Sean McBride, B. Eng sean at rogue-research.com
> Rogue Research www.rogue-research.com
> Mac Software Developer Montréal, Québec, Canada
_______________________________________________
Powered by www.kitware.com
Visit other Kitware open-source projects at
http://www.kitware.com/opensource/opensource.html
Kitware offers ITK Training Courses, for more information visit:
http://kitware.com/products/protraining.php
Please keep messages on-topic and check the ITK FAQ at:
http://www.itk.org/Wiki/ITK_FAQ
Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/insight-developers
More information about the Insight-developers
mailing list