-
Notifications
You must be signed in to change notification settings - Fork 465
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Document adding -fvisibility=hidden flag for macOS users #460
Conversation
Added section to remember the macOS user to add the `-fvisibility=hidden` flag.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM with some nits.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM with one minor nit: Please start the commit message with a verb in the imperative, like
"Document adding -fvisibility=hidden flag for macOS users"
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
@NickNaso @gabrielschulhof Could you summarize why you recommend I'm asking because Thanks! |
Hi @vweevers, |
Note that Even if it happens to not crash, you obviously don't want symbols from one module to unintentionally resolve against the same symbol defined in a different module, that's a recipe for horrifyingly weird problems that only occur when certain combinations of modules are loaded. This is especially true for libraries like node-addon-api which is partially parameterized through preprocessor macros. Note that the disturbing default behaviour for shared libraries on ELF-based targets (such as Linux) is that every symbol with external linkage is resolved at runtime by the dynamic linker even if that symbol is defined in the same file, i.e. if you write: void foo() {}
void bar() { foo(); } then As a result, |
* -fvisibility=hidden flag for macOS user Added section to remember the macOS user to add the `-fvisibility=hidden` flag. PR-URL: nodejs/node-addon-api#460 Reviewed-By: Gabriel Schulhof <[email protected]> Reviewed-By: Michael Dawson <[email protected]>
* -fvisibility=hidden flag for macOS user Added section to remember the macOS user to add the `-fvisibility=hidden` flag. PR-URL: nodejs/node-addon-api#460 Reviewed-By: Gabriel Schulhof <[email protected]> Reviewed-By: Michael Dawson <[email protected]>
* -fvisibility=hidden flag for macOS user Added section to remember the macOS user to add the `-fvisibility=hidden` flag. PR-URL: nodejs/node-addon-api#460 Reviewed-By: Gabriel Schulhof <[email protected]> Reviewed-By: Michael Dawson <[email protected]>
* -fvisibility=hidden flag for macOS user Added section to remember the macOS user to add the `-fvisibility=hidden` flag. PR-URL: nodejs/node-addon-api#460 Reviewed-By: Gabriel Schulhof <[email protected]> Reviewed-By: Michael Dawson <[email protected]>
Added section to remember the macOS user to add the
-fvisibility=hidden
flag.