Skip to content
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

Ensure linking bundled libraries #58

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

kou
Copy link
Contributor

@kou kou commented May 8, 2016

If dependency libraries (czmq, libsodium and zeromq) are already
installed in system and they exist in Ruby's library path, rbczmq uses
headers of bundled libraries and shared objects of system
libraries. Because link command generated by mkmf.rb uses $DEFLIBPATH | $LIBPATH as library search path. $DEFLIBPATH includes Ruby's library
path. If dependency libraries already exist in Ruby's library path, they
are used instead of bundled libraries.

It causes segmentation fault.

If dependency libraries (czmq, libsodium and zeromq) are already
installed in system and they exist in Ruby's library path, rbczmq uses
headers of bundled libraries and shared objects of system
libraries. Because link command generated by mkmf.rb uses `$DEFLIBPATH |
$LIBPATH` as library search path. `$DEFLIBPATH` includes Ruby's library
path. If dependency libraries already exist in Ruby's library path, they
are used instead of bundled libraries.

It causes segmentation fault.
@kou
Copy link
Contributor Author

kou commented May 8, 2016

It seems that SciRuby/iruby#70 is occurred by this problem.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant