Возникли проблемы при установке OpenSSL Cocoapod - PullRequest
0 голосов
/ 10 июня 2018

Я пытаюсь установить OpenSSL Cocoapod в Xcode 9.4 и получаю следующее:

[!] / Bin / bash -c set -e VERSION = "1.0.2h" SDKVERSION= xcrun --sdk iphoneos --show-sdk-version 2> /dev/null MIN_SDK_VERSION_FLAG = "- miphoneos-version-min = 7.0"

BASEPATH = "$ {PWD}" CURRENTPATH ​​= "/ tmp / openssl" ARCHS = "i386 x86_64 armv7s arm64 * arm64" DEV64ER = 641007 *

mkdir -p "$ {CURRENTPATH}" mkdir -p "$ {CURRENTPATH} / bin"

cp "file.tgz" "$ {CURRENTPATH} /file.tgz"cd "$ {CURRENTPATH}" tar -xzf file.tgz cd "openssl - $ {VERSION}" *

для ARCH в $ {ARCHS} do CONFIGURE_FOR = "iphoneos-cross"

, если["$ {ARCH}" == "i386"] ||["$ {ARCH}" == "x86_64"];затем PLATFORM = "iPhoneSimulator" if ["$ {ARCH}" == "x86_64"];затем CONFIGURE_FOR = "darwin64-x86_64-cc", что еще нужно сказать - "! static volatile sig_atomic_t intr_signal;! static volatile intr_signal ;!""crypto / ui / ui_openssl.c" PLATFORM = "iPhoneOS" fi

export CROSS_TOP = "$ {DEVELOPER} / Platforms / $ {PLATFORM} .platform / Developer"
export CROSS_SDK = "$ {PLATFORM} $ {SDKVERSION} .sdk "

echo" Сборка openssl - $ {VERSION} для $ {PLATFORM} $ {SDKVERSION} $ {ARCH} "echo" Пожалуйста, подождите ... "

export CC = "$ {DEVELOPER} / usr / bin / gcc -arch $ {ARCH} $ {MIN_SDK_VERSION_FLAG}" mkdir -p "$ {CURRENTPATH} / bin / $ {PLATFORM} $ {SDKVERSION} - $ {ARCH} .sdk "
LOG =" $ {CURRENTPATH} / bin / $ {PLATFORM} $ {SDKVERSION} - $ {ARCH} .sdk / build-openssl - $ {VERSION} .log "

LIPO_LIBSSL = "$ {LIPO_LIBSSL} $ {CURRENTPATH} / bin / $ {PLATFORM} $ {SDKVERSION} - $ {ARCH} .sdk / lib / libssl.a" LIPO_LIBCRYPTO = "$ {LIPO_LIBCRYPTO} {$/$ndomPLATFORM coming$‹SDKVERSION rout-$ndomARCH‹.sdk/lib/libcrypto.a"

. / Configure $ {CONFIGURE_FOR} --openssldir = "$ {CURRENTPATH} / bin / $ {ПЛАТФОРМА} $ {SDKVERSION} - $ {ARCH} .sdk ">" $ {LOG} "2> & 1 sed -ie" s! ^ CFLAG =! CFLAG = -isysroot $ {CROSS_TOP} / SDKs / $ {CROSS_SDK}!""Makefile"

make >> "$ {LOG}" 2> & 1 make all install_sw >> "$ {LOG}" 2> & 1 make clean >> "$ {LOG}" 2> & 1 done

echo "Build library ..." rm -rf "$ {BASEPATH} / lib /" mkdir -p "$ {BASEPATH} / lib /" lipo -create $ {LIPO_LIBSSL} -output "$ {BASEPATH} /lib/libssl.a "lipo -create $ {LIPO_LIBCRYPTO} -output" $ {BASEPATH} /lib/libcrypto.a "

echo" Копирование заголовков ... "rm -rf" $ {BASEPATH} / opensslInclude / "mkdir -p" $ {BASEPATH} / opensslInclude / "cp -RL" $ {CURRENTPATH} / openssl - $ {VERSION} / include / openssl "" $ {BASEPATH} / opensslInclude / "

cd "$ {BASEPATH}" echo "Строительство выполнено."

echo "Очистка ..." rm -rf "$ {CURRENTPATH}" echo "Готово."

cp: file.tgz: Нет такого файла или каталога

Это команда, которую я использую в подфайле:

pod 'OpenSSL', '~> 1.0'

Я пытался установить инструменты командной строки Xcodeно это не решило проблему.

Кто-нибудь знает, в чем проблема?

Ответы [ 5 ]

0 голосов
/ 25 июля 2019

Ответ Патрика работает на меня.Но чтобы сделать ответ немного более ясным здесь:

rm -rf /tmp/openssl; mkdir /tmp/openssl && cd /tmp/openssl;
curl https://www.openssl.org/source/openssl-1.0.2j.tar.gz > file.tgz
cd -;
sed -i 's/cp \\"file.tgz\\" \\"${CURRENTPATH}\/file.tgz\\"//' `find ~/.cocoapods|grep "OpenSSL/1.0.210/OpenSSL.podspec.json"`

pod install

Примечание :

  • pod install потратил около 10 минут в моем эфире.
  • Замените 1.0.2j и 1.0.210 своей верной версией, если необходимо.
  • Если вы хотите попробовать, понизьте cocoapods, и cocoapods-downloader - другое решение, пожалуйста, обратитесь здесь .
0 голосов
/ 23 января 2019

Когда я пытался установить другой Cococapod, я получил ту же ошибку.Для меня решением было понизить рейтинг загрузчика cococapods.Это команды, которые я использовал:

sudo gem uninstall cocoapods-downloader
sudo gem install cocoapods-downloader -v 1.2.0

Thnx

0 голосов
/ 28 июня 2018

Я тоже вижу эту проблему.Не удалось решить.К сожалению, это происходит на подчиненной машине Jenkins - тогда как мой собственный Mac не имеет проблем с «обновлением pod» и, похоже, без проблем получает OpenSSL ...

С тех пор я обнаружил, что загрузчик cocoapod-downloader должен бытьпонижен ... для установки ... https://github.com/FredericJacobs/OpenSSL-Pod/issues/49

0 голосов
/ 04 июля 2018

заменить модуль OpenSSL на OpenSSL-XM

или

заменить "prepare_command" в find ~ / .cocoapods | grep "OpenSSL / 1.0.2j / OpenSSL.podspec.json" на https://github.com/CocoaPods/Specs/blob/3b17051d7e0bbb5c97420a7a6d3aa9b1f6b601db/Specs/3/2/e/OpenSSL-XM/1.0.210.1/OpenSSL-XM.podspec.json

0 голосов
/ 15 июня 2018

Перво-наперво: если можете, попробуйте переключиться на другой POD.Это больше не поддерживается.

Обходной путь, если вы не можете переключиться:

curl https://www.openssl.org/source/openssl-<your-version>.tar.gz > file.tgz
cp file.tgz /tmp/openssl #create directory if needed
sed 's/cp \\"file.tgz\\" \\"${CURRENTPATH}\/file.tgz\\"//' `find ~/.cocoapods|grep "OpenSSL/<your-version>/OpenSSL.podspec.json"`
pod install

"<ваша версия>" будет, например, "1.0.2j" для URL и "1.0.210"для grep

...