C++ ile çapraz platform yazılımı geliştirdim. Bildiğim gibi, Linux .so tüm sembolleri varsayılan olarak "gcc -fvisibility=hidden"
aracılığıyla dışa aktardı. Aktarılan tüm sembolleri gizli olarak ayarlayabilir, daha sonra dışa aktarmak istediğim sınıf ve işlev için __attribute__(visibility("default"))
'u ayarlayabilirim, böylece vermek istediklerimi kontrol edebilirim.Paylaşılan bir kütüphanenin dışa aktarılan sembolünü kontrol ederken CMake eşdeğeri "gcc -fvisibility = hidden" ne demektir?
Soruma göre, CMake kullanarak, işi "gcc -fvisibility = hidden" denetimi olarak nasıl yapabilirim?
Böyle CKağıt derleyiciye bir bayrak ekleyebilirsiniz
Bunun için uygun bir örnek bulamıyorum. Detaylandırır mısınız? Tahminim C++ SET_TARGET_PROPERTIES (mytarget CXX_VISIBILITY_PRESET gizli) – Abai
@Abai için daha fazla ayrıntı ekledi – Joe
Teşekkürler @Joe, bu harika çalışıyor! – Abai