命令/ usr/bin/codesign失败,退出代码为1

问题描述:

CodeSign "build/Release-iphoneos/Nice Saying123.app" 
cd "/Users/c28/Documents/Office Projects/Nice Saying123" 
setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin" 
setenv _CODESIGN_ALLOCATE_ /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate 
/usr/bin/codesign -f -s "iPhone Developer: dipak kasabwala (29QJU3WV6X)" "--resource-rules=/Users/c28/Documents/Office Projects/Nice Saying123/build/Release-iphoneos/Nice Saying123.app/ResourceRules.plist" --entitlements "/Users/c28/Documents/Office Projects/Nice Saying123/build/Nice Saying123.build/Release-iphoneos/Nice Saying123.build/Nice Saying123.xcent" "/Users/c28/Documents/Office Projects/Nice Saying123/build/Release-iphoneos/Nice Saying123.app" 

/Users/c28/Documents/Office Projects/Nice Saying123/build/Release-iphoneos/Nice Saying123.app: replacing invalid existing signature 
/Users/c28/Documents/Office Projects/Nice Saying123/build/Release-iphoneos/Nice Saying123.app: CSSMERR_TP_NOT_TRUSTED 
Command /usr/bin/codesign failed with exit code 1 
+1

这通常是一个证书错误工作。你可以请尝试以下吗? http://discussions.apple.com/message.jspa?messageID=7709840 – 2011-03-14 11:59:37

我有完全相同的错误,并尝试在阳光下的所有内容,包括上面的discussions.apple.com链接上的内容。我的问题是,在钥匙串访问,实际的Apple WWDR证书被标记为“Always Trust”。它需要是“系统默认值”。这也适用于您的开发和分发证书。如果它们中的任何一个被错误地设置为“Always Trust”,那可能会导致此问题。

所以,在钥匙串访问,点击苹果全球开发者关系的证书颁发机构证书,请选择获取信息。然后展开信任设置,并选择“使用此证书时:”的组合框时,选择“系统默认值”。

这是非常令人困惑的是选择“始终信任”会产生一个错误,声称自己是不是信任:(......但是这是显然的方式!

Hattip到@MariaZverina,其评论/链接在这个问题上提供帮助

编辑:。您可能需要检查这两个登录系统证书,寻找这个问题

+1

这应该是根本原因。我根据奈特所说的来解决这个问题。谢谢~~~~~ – flypig 2012-10-15 13:54:05

+2

在我的情况下,它是“iPhone开发人员”证书,被标记为“始终信任”。切换到“系统默认值”后,它就像一个魅力! :-) – 2013-05-30 08:46:55

+0

你是一个救星 - 我不知道他们是否有XCode的测试人员。 – mmr 2015-01-13 04:45:41

我的错误是: /用户/ XXXXXXXX /库/开发商/ Xcode中/ DerivedData/XXXXXXXXXX-fictlumohhjzjxcfmyfpwvrjakqa /编译/产品/调试-的iPhoneOS/XXXX XXX.app:目标文件格式无法识别的,无效的,或不适合

命令/ usr/bin/codesign失败,退出代码为1

请尝试在下面。 开发系统:OSX Lion,Xcode 4.1 iOS 4.3

如果您已经复制成功存档的项目并将其修改为新版本,则复制的版本可能在模拟器中正常运行。但分发存档可能会得到上述错误。我花了一天的时间来解决这个问题。

  • 右键单击Your_Project.xcodeproj>显示包内容&编辑project.pbxproj文件。

解决方案: - Info.plist文件在项目文件夹中可能有两个以上的副本。在pbxproj文件中的配置节中也有错误/多重引用。 o我删除了这些行,除了从构建配置(分发)中引用它们。在项目设置中设置info.plist参考如下。

最后检查分配设置应该是这样的..

8917E65D14244E5100B703F8 /* Distribution */ = { 
      isa = XCBuildConfiguration; 
      buildSettings = { 
       ALWAYS_SEARCH_USER_PATHS = NO; 
       ARCHS = "$(ARCHS_UNIVERSAL_IPHONE_OS)"; 
       CODE_SIGN_ENTITLEMENTS = ""; 
       CODE_SIGN_IDENTITY = "iPhone Distribution: XXXXXXXX XXXXXXX"; 
       "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution: XXXXXXXX XXXXXXX"; 
       COPY_PHASE_STRIP = YES; 
       GCC_PRECOMPILE_PREFIX_HEADER = YES; 
       GCC_PREFIX_HEADER = XXXXX_Prefix.pch; 
       INFOPLIST_FILE = Info.plist; 
       IPHONEOS_DEPLOYMENT_TARGET = 4.3; 
       ONLY_ACTIVE_ARCH = NO; 
       PRODUCT_NAME = "Product Name"; 
       PROVISIONING_PROFILE = "XXXXXXXX-XXXX-4ACA-A26E-XXXXXXXXXXXXX"; 
       "PROVISIONING_PROFILE[sdk=iphoneos*]" = "XXXXXXXX-XXXX-4ACA-A26E-XXXXXXXXXXXXX"; 
       SDKROOT = iphoneos4.3; 
       SEPARATE_STRIP = YES; 
       TARGETED_DEVICE_FAMILY = 2; 
       VALIDATE_PRODUCT = YES; 
       WRAPPER_EXTENSION = app; 
      }; 
      name = Distribution; 
     }; 

即使我曾试图事事处处:)但什么内特说的是真的,它的工作原理:)

只要确保你检查登录和体系证书,煤矿必须设置为始终信任系统证书,让我忽略它们。

Apple代码签名机构和Apple全球开发者关系证书颁发机构。

就我而言,原因是因为没有安装必要的中间证书(Apple WWDR和Developer ID)。我只是设置了一台新计算机,并从我的旧机器导出了我的开发人员配置文件,这些配置文件将所有必需的证书,密钥,供应配置文件等捆绑到一个文件中,制作一个可以备份的整洁的小包裹,或者在我的情况下,很容易转移到一台新机器上。不幸的是,我曾假设中级证书会出现。他们没有。从Apple开发人员站点下载中间证书并安装使用Keychain Access的人员也有诀窍。

请注意,有两个中间证书:Apple WWDR中级证书(其中涵盖了iOS和Mac App Store的开发和分发),但也有一个独立的开发人员ID中级证书(其中涵盖开发人员ID,例如在App Store)。

这是在我的钥匙串中添加另一个证书后发生的。

这是一个毫无意义的修复,但尝试了一切,我解锁/锁定登录钥匙链,一切都被修复了。

hmmmm。

就我而言,这是“iPhone开发人员”证书,标记为“始终信任”。切换到“系统默认值”后,它就像一个魅力! :-)

我还能够使其通过选择“系统默认”