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

时间:2011-03-14 11:48:45

标签: iphone ios code-signing

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

6 个答案:

答案 0 :(得分:17)

我有完全相同的错误,并在阳光下尝试了所有内容,包括上面discussions.apple.com链接上的内容。对我来说问题是,在 Keychain Access 中,实际的Apple WWDR证书被标记为“始终信任”。它必须是“系统默认值”。这也适用于您的开发和分发证书。如果其中任何一个被错误地设置为“始终信任”,则显然会导致此问题。

因此,在Keychain Access中,单击 Apple Worldwide Developer Relations Authority Authority 证书,选择获取信息。然后,展开信任设置,对于“使用此证书时”的组合框,选择“系统默认值”。

选择“始终信任”会产生错误声称某些内容不受信任,这是非常令人困惑的:( ...但这显然是它的方式!

Hattip致@MariaZverina,其评论/链接提供了有关此问题的帮助。

修改:您可能需要检查登录系统证书,以查找此问题。

答案 1 :(得分:2)

即使我已经尝试了所有地方:)但Nate说的是真的,它有效:)

请确保检查登录证书和系统证书,我的系统证书设置为始终信任,让我忽略它们。

Apple Code签名机构和Apple Worldwide Developer Relations Certificate Authority。

答案 2 :(得分:0)

我的错误是: / Users / XXXXXXXX / Library / Developer / Xcode / DerivedData / XXXXXXXXXX-fictlumohhjzjxcfmyfpwvrjakqa / Build / Products / Debug-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除了从Build配置(Distribution)中引用它们之外,我删除了这些行。在项目设置中设置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;
        };

答案 3 :(得分:0)

在我的情况下,原来是因为没有安装必要的中间证书(Apple WWDR和开发者ID)。我刚刚设置了一台新计算机并从我的旧计算机导出了我的开发人员配置文件,该计算机将所有必要的证书,密钥,配置文件等捆绑到一个文件中,制作了一个可以备份的整洁的小包,或者在我的情况下,轻松移动到一台新机器。不幸的是,我曾认为中级证书会随之而来。他们没有。从Apple开发人员站点下载中间证书并使用Keychain Access安装这些证书就可以了。

请注意,有两个中间证书:Apple WWDR中间证书(涵盖iOS和Mac App Store开发和分发),但还有一个单独的开发者ID中间证书(涵盖开发者ID,例如分发在App Store)。

答案 4 :(得分:0)

在我的钥匙串中添加了另一个证书后,我发生了这种情况。

这是一个毫无意义的修复,但是尝试了所有内容后,我解锁/锁定了登录密钥链,一切都已修复。

hmmmm。

答案 5 :(得分:0)

  

在我的情况下,它是“iPhone Developer”证书,标记为“始终信任”。切换到“系统默认值”后,它就像一个魅力! :-)

我也可以通过选择“系统默认值”

来使其工作