Being explicit about the exported / supported symbols and thus components is 
preferable, as otherwise it becomes unclear which symbols are tracked as part 
of semantic versioning and which aren't. In fact, instead of setting 
WINDOWS_EXPORT_ALL_SYMBOLS, the best practice is actually to make gcc follow 
the Windows default of hiding symbols by default and only exposing whitelisted 
symbols. You can refer to the CPPCon talk: 
https://crascit.com/wp-content/uploads/2019/09/Deep-CMake-For-Library-Authors-Craig-Scott-CppCon-2019.pdf
 https://www.youtube.com/watch?v=m0DwB4OvDXk

Before proceeding here, I think we need to answer the question "What symbols do 
we need to make available in libmxnet.so for external operators?" @samskalicky, 
can clarify which symbols are needed for the external operators you are 
interested in?

-- 
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
https://github.com/apache/incubator-mxnet/pull/18904#issuecomment-680298551

Reply via email to