-
Notifications
You must be signed in to change notification settings - Fork 67
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
ISSUE-149 - Clarify install section for macOS users. #155
Conversation
Or, use OpenSSL from the | ||
[openssl-sys crate](https://docs.rs/openssl/0.10.30/openssl/). |
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.
I'm pretty sure cargo
always pulls in some version of OpenSSL, the only difference is if the OpenSSL library is statically linked into the executable or if it's dynamically linked and loaded at runtime somewhere from the system. Please correct me if I'm wrong here.
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.
I apologize for my slow response. I don't understand what changes to the PR your comment implies. Would you please clarify?
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.
The openssl
crate is always used by cargo, it's either dynamically linked and loaded at runtime or statically linked into the cargo-geiger
executable as part of the cargo
crate dependency tree.
...if I have understood how the cargo
crate handles its dependencies.
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.
It's the "Or, use OpenSSL from the" that I'm talking about. It's always in use, but linked statically or dynamically. I'll go ahead and close now, but feel free to reply and keep the discussion going if you think I'm misunderstanding this PR.
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.
I was confused when I tried to install cargo-geiger and the install command failed (#149). I read the error message which says that it can't use the OS's OpenSSL. This README told me how to statically link OpenSSL into the binary. I thought it means statically link the OS's OpenSSL into the binary, which obviously won't work because it already failed to dynamically link it. I needed the README to tell me how to use a different OpenSSL library, specifically one that is distributed as a crate. That's why I chose the wording above.
If you think the wording is unclear, please tell me what would be better. Write "Change this line to ...". Or tell me clearly what you want it to say and I will try to come up with some wording that meets your needs and also would meet the needs of other macOS users who hit the installation error.
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.
From your comment #149 (comment):
Update the readme to state that vendored-openssl feature uses "OpenSSL from the openssl-sys crate" and builds on macOS.
A PR with README.md improvements would be most welcome.
This PR makes this change.
Update the build error to say "Run cargo install cargo-geiger --features vendored-openssl to build with OpenSSL from the openssl-sys crate."
This would be a nice improvement for the user experience on macOS! If you would like to make a PR for this, that would be great!
Done in sfackler/rust-openssl#1382 .
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.
Thanks for your patience with me on this PR.
I'm suggesting that this PR should be closed due to lack of feedback. |
This PR was requested by @anderejd :