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

Joe*_*ter 7 iphone shell xcode objective-c

我一直在用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 Code Online (Sandbox Code Playgroud)

我认为它与构建阶段的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}/"
Run Code Online (Sandbox Code Playgroud)

但在查看在线并无数次修改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}
Run Code Online (Sandbox Code Playgroud)

我在项目目录中创建了一个名为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
Run Code Online (Sandbox Code Playgroud)

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

Adr*_*rth 0

请参阅副本此处。该线程指出它pbxcp在 Xcode 4.4 中已被删除,并且由于它是 Xcode 内部工具,因此没有官方替代品,但如果您使用tar和向下滚动,该线程确实提供了替代品find

  • 请尽最大努力解决您的问题来更新您的问题,这样读者就不必尝试并理解上面的问题,再加上这里难以阅读的补充。祝你好运。 (3认同)