PBXCP:在最近的xcode中没有这样的文件或目录

时间:2013-04-08 19:36:01

标签: iphone objective-c xcode shell

我一直在使用Xcode 3.0修改这个开源代码,但是一旦我将Xcode更新到4.0+并尝试运行它就不再有效了。我遇到的第一个错误就是这个

/Users/newperson/Library/Developer/Xcode/DerivedData/Hellcraft-etesgjzdmfzimlgvakidckjecgij/Build    
/Intermediates/Hellcraft.build/Debug-iphonesimulator/Doom.build/Script-
435F41A90F532CA300887552.sh: line 3: /Applications/Xcode.app/Contents/Developer/Libra/PrivateFrameworks    
/DevToolsCore.framework/Resources/pbxcp: No such file or directory

我认为它与构建阶段的Run Script有关,设置如下:

/bin/sh -x

PBXCP=${DEVELOPER_DIR}/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp
${PBXCP} -exclude .svn "${PROJECT_DIR}/../../base" 
"${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/"

但是在网上查看并且无数次修改shell脚本后,我一直无法找到解决方案。 我发现某个地方已经在更新版本的Xcode中删除了pbxcp,但我无法找到合适的替代品,并且无法将该DevToolsCore合并到新版本的Xcode中。

找到一个论坛,说我应该运行一个替代脚本,以便为丢失的pbxcp文件化妆,我尝试运行这个:

/usr/bin/tar -c -C "${PROJECT_DIR}/myframeworks" --exclude .DS_Store --exclude CVS --exclude 
.svn --exclude .git -H `cd "${PROJECT_DIR}/myframeworks" && find DevToolsCore.framework` | 
/usr/bin/tar -x -C ${BUILT_PRODUCTS_DIR}/${FRAMEWORKS_FOLDER_PATH}

我在项目目录中创建了一个名为myframeworks的文件,并在其中添加了DevToolsCore.framework,虽然这修复了丢失的pbxcp问题但它产生了另一个错误:

tar: could not chdir to '/Users/newperson/Library/Developer/Xcode/DerivedData/Hellcraft-
etesgjzdmfzimlgvakidckjecgij/Build/Products/Debug-iphonesimulator/Doom.app/Frameworks'

tar: Write error
Command /bin/sh failed with exit code 1

如果有人有任何建议会很好,我会把头发拉出来。

2 个答案:

答案 0 :(得分:1)

你可能会从你的Xcode中删除一些项目。我也有这个PBXc错误,我所做的就是我再次添加了同一个文件并摆脱了这个错误。

答案 1 :(得分:0)

请参阅duplicatehere。该线程声明{X} 4.4中已删除pbxcp,因为它是一个Xcode内部工具,没有正式替换,但如果使用tar向下滚动find,则该线程会提供替换}}