zoukankan      html  css  js  c++  java
  • UE4 window打包ios备忘

     1、生成SHH key

    2、安装证书 *.cer,*.p12

    以下转自:http://wangjie.rocks/2017/11/30/ue4-ios-build-on-windows/

    问题一

    1
    2
    3
    ssh_exchange_identification: Connection closed by remote host
    rsync: connection unexpectedly closed (0 bytes received so far) [sender]
    rsync error: error in rsync protocol data stream (code 12) at /home/lapo/packaging/rsync-3.0.4-1/src/rsync-3.0.4/io.c(632) [sender=3.0.4]

     

     

    解决方法

    首先保证远程机器 OSX 上的 ssh 并发数配置足够,使用命令查看

    1
    grep MaxStartups /etc/ssh/sshd_config

    一般输出如下格式 10/20/30 意思是连接达到10之后以20%的概率拒绝新连接直到30为止,可以根据需求调大第一个值并重启

    其次保证 RemoteToolChainPrivate.key 文件存在于 C:Users用户名AppDataRoamingUnreal EngineUnrealBuildToolSSHKeys远程机器地址mac 文件夹下,没有的话需要在 Edit -> Project Settings... -> Platforms -> iOS -> Build 中进行配置,配置好远程 OSX 机器的地址,用户名,然后点击 Generate SSH Key 生成

    问题二

    编译失败,出现如下错误

    1
    clang: error: argument unused during compilation: '-fno-objc-exceptions' [-Werror,-Wunused-command-line-argument]

     

    解决方法

    修改 EngineSourceProgramsUnrealBuildToolPlatformIOSIOSToolChain.cs 文件,在 GetCompileArguments_Global 函数中增加 Result += " -Wno-unused-command-line-argument"; 禁用这个错误警告

    问题三

    出 Shipping 包出现链接错误,如下

    1
    2
    3
    ld: bitcode bundle could not be generated because '/Users/mac/UE4/Builds/xxx/Engine/Source/ThirdParty/PLCrashReporter/plcrashreporter-master-5ae3b0a/IOS/Release/libCrashReporter-iphoneos.a(libCrashReporter-iphoneos.a-arm64-master.o)' was built without full bitcode. All object files and libraries for bitcode must be generated from Xcode Archive or Install build for architecture arm64

    clang: error: linker command failed with exit code 1 (use -v to see invocation)

    解决方法

    目前的解决方法是在 Edit -> Project Settings... -> Platforms -> iOS -> Build 中取消 Support bitcode in Shipping

    问题四

    IPA 打包失败,错误如下

    1
    IPP ERROR: Application exception: System.Security.Cryptography.CryptographicException ...

     

    解决方法

    Edit -> Project Settings... -> Platforms -> iOS -> Mobile Provision 中添加描述文件和证书,或者直接打开 EngineBinariesDotNETIOSIPhonePackager.exe 进行添加

    描述文件和证书生成见官方文档

    问题五

    以下转自:https://www.cnblogs.com/kittywei/articles/7059993.html

    System.Security.Cryptography.CryptographicException:该项不适于在指定状态下使用

    当 RSACryptoProvider 创建了密钥文件但由于权限不足而无法删除该密钥文件时,会导致此错误;

    解决方法 

    方法1、若要更正此错误,请确认代理服务帐户对“Documents and Settings”文件夹中 RSA 计算机密钥文件夹(例如,C:Documents and Settings\%userName%AppDataRoamingMicrosoftCryptoRSA)的“完全控制”权限设置为“允许”。

    方法2、C:Documents and Settings\%userName%AppDataRoamingMicrosoft的Crypto目录给删掉,重新生成key

     

    Windows 远程编译iOS若干问题

    原文
    http://wangjie.rocks/2017/11/30/ue4-ios-build-on-windows/

    问题一
    ssh_exchange_identification: Connection closed by remote hostrsync: connection unexpectedly closed (0 bytes received so far) [sender]rsync error: error in rsync protocol data stream (code 12) at /home/lapo/packaging/rsync-3.0.4-1/src/rsync-3.0.4/io.c(632) [sender=3.0.4]
    

    解决方法

    首先保证远程机器 OSX 上的 ssh 并发数配置足够,使用命令查看

    grep MaxStartups /etc/ssh/sshd_config
    

    一般输出如下格式 10/20/30 意思是连接达到10之后以20%的概率拒绝新连接直到30为止,可以根据需求调大第一个值并重启

    其次保证 RemoteToolChainPrivate.key 文件存在于 C:Users用户名AppDataRoamingUnreal EngineUnrealBuildToolSSHKeys远程机器地址mac 文件夹下,没有的话需要在 Edit -> Project Settings… -> Platforms -> iOS -> Build 中进行配置,配置好远程 OSX 机器的地址,用户名,然后点击 Generate SSH Key 生成

    问题二

    编译失败,出现如下错误

    clang: error: argument unused during compilation: '-fno-objc-exceptions' [-Werror,-Wunused-command-line-argument]
    

    解决方法

    修改 EngineSourceProgramsUnrealBuildToolPlatformIOSIOSToolChain.cs 文件,在 GetCompileArguments_Global 函数中增加 Result += “ -Wno-unused-command-line-argument”; 禁用这个错误警告

    问题三

    出 Shipping 包出现链接错误,如下

    ld: bitcode bundle could not be generated because '/Users/mac/UE4/Builds/xxx/Engine/Source/ThirdParty/PLCrashReporter/plcrashreporter-master-5ae3b0a/IOS/Release/libCrashReporter-iphoneos.a(libCrashReporter-iphoneos.a-arm64-master.o)' was built without full bitcode. All object files and libraries for bitcode must be generated from Xcode Archive or Install build for architecture arm64clang: error: linker command failed with exit code 1 (use -v to see invocation)
    

    解决方法

    目前的解决方法是在 Edit -> Project Settings… -> Platforms -> iOS -> Build 中取消 Support bitcode in Shipping

    问题四

    IPA 打包失败,错误如下

    IPP ERROR: Application exception: System.Security.Cryptography.CryptographicException ...
    

    解决方法

    Edit -> Project Settings… -> Platforms -> iOS -> Mobile Provision 中添加描述文件和证书,或者直接打开 EngineBinariesDotNETIOSIPhonePackager.exe 进行添加

    描述文件和证书生成见官方文档

    问题五

    IPA打包失败,错误提示:

    doesn't match the entitlements file's value for the get-task-allow entitlement.
    

    解决办法

    TARGETS -> Capabilities 的开关全部关掉,然后重新build。如果需要开启这些Capabilities,先构建成功一次后再开启。

    参考:
    doesn’t match the entitlements file’s value for the get-task-allow entitlement.
    https://www.jianshu.com/p/011670421594

    iOS .entitlements文件
    https://www.jianshu.com/p/24e55f608004

  • 相关阅读:
    不定长内存池之apr_pool
    FFmpeg介绍及参数详细说明
    Linux下ffmpeg安装与开发配置
    基于Live555,ffmpeg的RTSP播放器直播与点播
    ffmpeg开发指南
    boost::bind的使用方法
    开启Linux VNC远程桌面
    Fedora 启动 SSH服务
    Linux中查看进程及杀死进程命令
    __FILE__,__LINE__,FUNCTION__实现代码跟踪调试(linux下c语言编程 )
  • 原文地址:https://www.cnblogs.com/sevenyuan/p/11810551.html
Copyright © 2011-2022 走看看