मैक ओएस पर libssl-dev, libffi-dev कैसे स्थापित करें?


18

मैं स्थापित कर सकते हैं libssl-devऔर libffi-devआदेश के साथ Ubuntu पर apt-get install libssl-dev libffi-dev, लेकिन मैं मैक पर स्थापित नहीं कर सकता; मैंने कमांड का उपयोग करने की कोशिश की है: brew install libssl-dev libffiलेकिन मेरे लिए काम नहीं कर रहा है।

इसे स्थापित करने के लिए मुझे होमब्रे करने के लिए क्या करने की आवश्यकता है?


जवाबों:


18

वे विशेष पैकेज उन नामों के तहत मौजूद नहीं हैं जो MacPorts और Homebrew दोनों पर हैं - इसलिए आपको प्राप्त होने वाली त्रुटियां। ओएस एक्स पर इन विशेष पैकेजों को स्थापित करने के लिए, आप उपयोग करना चाहेंगे openssl। निम्नलिखित कमांड आपको मदद करनी चाहिए:

brew install openssl

यदि आपने पहले से ही opensslस्थापित किया है, तो इसे ठीक करने के लिए निम्नलिखित को चलाने का प्रयास करें - स्टैक ओवरफ्लो पर कुछ उपयोगकर्ताओं ने इसे एक फिक्सिंग के रूप में रिपोर्ट किया जब Django काम करने की कोशिश कर रहा था।

brew unlink openssl && brew link openssl --force

आप इसे बिना काढ़ा और सूडो के बिना कैसे करते हैं?
tommy.carstensen

2
opensslजैसा है वैसा नहीं है libssl-dev। पहला सीधा उपयोग के लिए है, दूसरा लिंक करने के लिए है। UPD: ठीक है, मैक के लिए उन्हें एक पैकेज में बांधा गया है, लेकिन आपको दौड़ने की जरूरत हैexport LDFLAGS="-L/usr/local/opt/openssl/lib" export CPPFLAGS="-I/usr/local/opt/openssl/include"
Imaskar

10

मैं MacOS Mojave पर क्रिस्टल को मैदान से बाहर निकालने की कोशिश कर रहा था और एक समान मुद्दे में भाग गया।

यह त्रुटि संदेश है जो मैं देख रहा था:

Error: execution of command failed with code: 1: `cc "${@}" -o '/Users/mymbp/.cache/crystal/crystal-run-server.tmp'  -rdynamic  
`command -v pkg-config > /dev/null && pkg-config --libs --silence-errors libssl || printf %s '-lssl -lcrypto'` `command -v pkg-config > /dev/null && pkg-config --libs
 --silence-errors libcrypto || printf %s '-lcrypto'` -lz -lpcre -lgc -lpthread 
/usr/local/Cellar/crystal/0.27.0/src/ext/libcrystal.a -levent -liconv -ldl -
L/usr/lib -L/usr/local/lib`

खोज / usr / स्थानीय / lib मैंने देखा कि libssl का कोई उल्लेख नहीं था।

इसलिए मैंने एक सिमलिंक जोड़ा और वह इसे ठीक करने के लिए लगा।

ln -s /usr/local/Cellar/openssl/1.0.2p/lib/libssl.dylib /usr/local/lib/

नोट: खुलने का वर्तमान संस्करण जो शराब की बूंदें 1.0.2p है, आपका संस्करण अलग हो सकता है।


7
इसी तरह का मुद्दा, क्रिस्टल के साथ भी। मैं export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/opt/openssl/lib/इसे यहाँ तक चलाने में सक्षम था : github.com/brianmario/mysql2/issues/795#issuecomment-337006164
Jay Dorsey

2

opensslपहले से ही स्थापित था, लेकिन मैं निर्माण नहीं कर सका psycopg2क्योंकि यह लापता होने की शिकायत कर रहा था -lssl। मैंने साइमन शीहान से चरणों का पालन किया है लेकिन यह अभी भी उपलब्ध नहीं था।

लेकिन खुलने के बाद संदेश को देखते हुए खुलता है:

For compilers to find openssl@1.1 you may need to set:
  export LDFLAGS="-L/usr/local/opt/openssl@1.1/lib"
  export CPPFLAGS="-I/usr/local/opt/openssl@1.1/include"

तो मैंने वही किया जो यह कहता है। मैंने उन दो लाइनों को अपने में जोड़ा है ~/.bashrc। और psycopg2इस बार त्रुटियों के बिना बनाया गया।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.