2013-04-26 71 views
1

我在项目中遇到了这个问题,所以我尝试了一个空的测试项目。这是我做的。无法通过命令行工具存档Cocoa应用程序Executables

  1. 在Xcode中创建一个新的Cocoa应用程序项目。
  2. 为其添加一个新的命令行工具目标。
  3. 将此目标添加到可可应用程序的依赖关系中。
  4. 在cocoa app目标构建阶段添加复制文件构建阶段,Destination = Executables,将可执行产品添加到列表中。

现在运行可可应用程序。没问题,应用程序启动。在Finder中导航应用程序包,显示包内容,可在此处在Contents/MacOS中执行。这是我期望的。

当我存档 Cocoa应用程序时,出现以下错误,会出现问题:

(null): error: /Users/prudnikov/Library/Developer/Xcode/DerivedData/TestAppWithExecutable-hiysgipuqcktgoayxrgjfrtcxubl/Build/Intermediates/ArchiveIntermediates/TestAppWithExecutable/BuildProductsPath/Release/TestAppExecutable: No such file or directory 

下面是截图

xcode project build error

下面是该目录的内容

[email protected] ~ $ ls -al /Users/prudnikov/Library/Developer/Xcode/DerivedData/TestAppWithExecutable-hiysgipuqcktgoayxrgjfrtcxubl/Build/Intermediates/ArchiveIntermediates/TestAppWithExecutable/BuildProductsPath/Release/ 
total 8 
drwxr-xr-x 5 prudnikov staff 170B Apr 26 21:59 ./ 
[email protected] 3 prudnikov staff 102B Apr 26 21:59 ../ 
drwxr-xr-x 3 prudnikov staff 102B Apr 26 21:59 TestAppExecutable.dSYM/ 
lrwxr-xr-x 1 prudnikov staff 239B Apr 26 21:59 [email protected] -> /Users/prudnikov/Library/Developer/Xcode/DerivedData/TestAppWithExecutable-hiysgipuqcktgoayxrgjfrtcxubl/Build/Intermediates/ArchiveIntermediates/TestAppWithExecutable/InstallationBuildProductsLocation/Applications/TestAppWithExecutable.app 
drwxr-xr-x 3 prudnikov staff 102B Apr 26 21:59 TestAppWithExecutable.app.dSYM/ 

归档可执行文件 - 没有问题。所有构建设置都是默认设置。

我也试着将构建配置从Debug改为Release,以便运行Cocoa应用程序方案。它在这种情况下也能成功运行。

这对我来说很奇怪。请指导如何做到这一点?

更新:似乎我有操作系统的问题。人们尝试了相同的例子,它的工作。然后,我尝试在我的Mac上创建一个新帐户,并在此处执行同样的操作。什么样的全局配置会导致这种情况

+0

它可能是一个权限问题? – GayleDDS 2013-05-02 03:16:05

+0

权限什么目录或文件?我从DefivedData目录中删除了所有内容。 – 2013-05-02 09:01:19

回答

0

我不认为这是一个答案,但它太长的评论。

检查父目录

gdunham: ~/Library/Developer/Xcode/DerivedData$ ls -laeG /Users/gdunham/Library/Developer/Xcode/DerivedData | grep -e " \\.$" 

drwxr-xr-x 31 gdunham staff 1054 Apr 15 14:29 /Users/gdunham/Library/Developer/Xcode/DerivedData  
drwxr-xr-x 13 gdunham staff 442 May 1 19:56 /Users/gdunham/Library/Developer/Xcode 
drwxr-xr-x 4 gdunham staff 136 Mar 8 2012 /Users/gdunham/Library/Developer/ 
[email protected] 66 gdunham staff 2244 Apr 2 22:43 /Users/gdunham/Library 
0: group:everyone deny delete 
drwxr-xr-x+ 62 gdunham staff 2108 Apr 30 14:33 /Users/gdunham 
0: group:everyone deny delete 
drwxr-xr-x 7 root  admin 238 Feb 20 14:16 /Users 
drwxr-xr-x 34 root  wheel 1224 Apr 20 09:26/

另外,也要看看你的组成员

gdunham: ~/Library/Developer/Xcode/DerivedData$ groups 
staff com.apple.access_screensharing com.apple.access_screensharing-disabled everyone _appstore localaccounts _appserverusr admin _appserveradm _lpadmin _lpoperator _developer com.apple.sharepoint.group.1 
+0

第一个命令不会打印任何东西,组中的差别是1)我没有'com.apple.access_screensharing-disabled',2)我有两个附加组'com.apple.access_ssh'和'access_bpf'。 – 2013-05-03 09:13:55

+0

您需要使用您的用户名运行该命令 ls -laeG/Users/prudnikov/Library/Developer/Xcode/DerivedData | grep -e“\\。$” – GayleDDS 2013-05-04 00:17:44

+0

您可以尝试使用Disk Utility应用程序修复权限 – GayleDDS 2013-05-04 00:20:05

相关问题