मेरे पास libssl का उपयोग कर एक सरल सी प्रोग्राम है।ओएस एक्स एल कैपिटन पर libssl का उपयोग कर सी प्रोग्राम संकलित?
लिनक्स पर, मैं openssl-देव पैकेज स्थापित किया है और निम्न पंक्ति के साथ कार्यक्रम संकलित:
gcc test_libssl.c -o test_libssl -lcrypto -lssl
अब मैं अपने Mac पर भी ऐसा ही करना चाहते हैं। एक ही पंक्ति परिणामस्वरूप में:
fatal error: 'openssl/conf.h' file not found
मैं brew install openssl
के माध्यम से घर-काढ़ा साथ openssl (openssl-देव काम नहीं किया) को स्थापित करने की कोशिश की यह मुझे दिया:
...
==> Installing openssl
==> Downloading https://www.openssl.org/source/openssl-1.0.2a.tar.gz curl: (22) The requested URL returned error: 404 Not Found
मैं एक related SO question पाया बिना जवाब के।
मैं भी
brew info openssl
की कोशिश की और बताया गया
This formula is keg-only. Mac OS X already provides this software and installing another version in parallel can cause all kinds of trouble.
Apple has deprecated use of OpenSSL in favor of its own TLS and crypto libraries
मैं क्या/स्थापित करने के लिए क्या है इसी क्रम में ओएस एक्स पर libssl का इस्तेमाल करने वाली सी कार्यक्रमों कार्यक्रमों संकलित करने के लिए सक्षम होने के लिए?
या, क्या यह एक बुरा विचार है (ऊपर चेतावनी दी गई है)?
अद्यतन:
मैं openssl मिला काढ़ा का उपयोग कर स्थापित किया। मुझे यकीन नहीं है कि यह समस्या थी, लेकिन मैंने ब्रू अपडेट किया। खाते में काढ़ा की सलाह
You should probably change the ownership and permissions of /usr/local back to your user account. sudo chown -R $(whoami):admin /usr/local
और this मुद्दा उठाते हुए।
फिर, @Alex रेनॉल्ड्स की सलाह के बाद, मैं इसे सफलतापूर्वक संकलित
gcc test_libssl.c -o test_libssl -lssl -lcrypto -L/usr/local/opt/openssl/lib -I/usr/local/opt/openssl/include
यह एक कारण के लिए पदावनत है ... आपको अपने एप्लिकेशन में OSX विशिष्ट कोड बनाना चाहिए, का उपयोग कर एप्पल चौखटे (libcrypto की तरह) .. । – Macmade
@Macmade libcrypto ओपनएसएसएल का हिस्सा है। कोई प्रत्यक्ष समकक्ष मूल पुस्तकालय नहीं है; निकटतम समतुल्य (जो बहुत नजदीकी नहीं है) कॉमनक्रिप्टो है। – duskwuff