我要发疯了,我怎么能让这个podspec工作。
我正在开发一个swift框架,需要使用CommonCrypto。在为每一个团队(Cordova,React)解决了许多问题之后,CommonCrypto就是这样实现的:
我得到了一个聚合目标CommonCryptoModuleMap,它的构建阶段有一个运行脚本:

if [ -d "${BUILT_PRODUCTS_DIR}/CommonCryptoModuleMap" ]; then
echo "${BUILT_PRODUCTS_DIR}/CommonCryptoModuleMap directory already exists, so skipping the rest of the script."
exit 0
fi

mkdir -p "${BUILT_PRODUCTS_DIR}/CommonCryptoModuleMap"
cat <<EOF > "${BUILT_PRODUCTS_DIR}/CommonCryptoModuleMap/module.modulemap"
module CommonCrypto [system] {
    header "${SDKROOT}/usr/include/CommonCrypto/CommonCrypto.h"
    export *
}
EOF

但现在,我们的目标是将其作为Swift中另一个框架的依赖来实现。所以我必须在podspec中指定目标依赖项。
从Xcode构建或存档它没有问题。
这是我的播客规范:
Pod::Spec.new do |s|
  s.name               = "AFrameworkHasNoName"
  s.version            = "0.1.5"
  s.summary            = "Foo bar"
  s.homepage           = "https://github.com/MyRepository_ios"
  s.license            = "License"
  s.author             = { "Veesla" => "[email protected]" }
  s.source             = { :git => "[email protected]:MyRepository_ios.git", :tag => "develop" }
  s.swift_version      = "4.0"
  s.platform           = :ios, "8.0"
  s.requires_arc       = true
  s.exclude_files      = "AFrameworkHasNoNameTests/*"
  s.source_files       = "AFrameworkHasNoName/**/*.{h,m,swift}"
  s.module_name        = "AFrameworkHasNoName"
end

错误如下:
- WARN  | source: The version should be included in the Git tag.
    - WARN  | source: Git SSH URLs will NOT work for people behind firewalls configured to only allow HTTP, therefore HTTPS is preferred.
    - WARN  | url: The URL (https://github.com/MyRepository_ios) is not reachable.
    - WARN  | [iOS] license: Unable to find a license file
    - ERROR | [iOS] xcodebuild: Returned an unsuccessful exit code. You can use `--verbose` for more information.
    - ERROR | [iOS] xcodebuild:  MyFileImportingCommonCrypto.swift:10:8: error: no such module 'CommonCrypto'

谢谢你的回复

最佳答案

尽管如此,似乎我并不是唯一一个未能将CommonCrypto包含在另一个SDK中的SDK中的人。
我只是通过包含CryptoSwift(只使用纯Swift)来绕过这个问题。这对我来说很管用。它有点重,但您不必处理模块映射文件和C库。。。很容易操作,很好的实现
这里是CryptoSwift的链接:https://github.com/krzyzanowskim/CryptoSwift
希望它能帮助你们中的一个!
附言:有人能解释我为什么被否决吗?:(

关于swift - Podspec中的CommonCrypto for Framework,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50022096/

10-12 13:37