【问题标题】:How can I compile a .pbxproj project through a makefile如何通过 makefile 编译 .pbxproj 项目
【发布时间】:2011-09-03 04:59:51
【问题描述】:

我从 Apple 开源存储库下载了一些源代码。 这些项目是我可以在 XCode 中打开的 .pbxproj 文件。 但我需要将项目导出到 Makefile/Configure 配置。

我用谷歌搜索了一些关于 pbxbuild 的 cmets,但可以 找不到下载链接,我不确定它是否是我需要的。

我还尝试了一个名为 pbtomake 的工具,但它在项目文件上失败了。 我猜它太旧了。

【问题讨论】:

    标签: xcode build makefile compilation gnu


    【解决方案1】:

    pbxbuild 已过时 - 您需要 xcodebuild:

    $ man xcodebuild
    
    
    XCODEBUILD(1)             BSD General Commands Manual            XCODEBUILD(1)
    
    NAME
         xcodebuild -- build Xcode projects and workspaces
    
    SYNOPSIS
         xcodebuild [-project projectname] [-target targetname ...] [-configuration configurationname] [-sdk [sdkfullpath | sdkname]] [buildaction ...]
                    [setting=value ...] [-userdefault=value ...]
         xcodebuild -workspace workspacename -scheme schemename [-configuration configurationname] [-sdk [sdkfullpath | sdkname]] [buildaction ...]
                    [setting=value ...] [-userdefault=value ...]
         xcodebuild -version [-sdk [sdkfullpath | sdkname]] [infoitem]
         xcodebuild -showsdks
         xcodebuild -list [-project projectname | -workspace workspacename]
    
    DESCRIPTION
         xcodebuild builds one or more targets contained in an Xcode project, or builds a scheme contained in an Xcode workspace.
    
    ...
    

    【讨论】:

    • 我试过了,但它似乎只能编译 xcodeproje。不是 pbxproj。另外,我不打算使用特定工具对其进行编译。我想将 pbxproj 导出到标准 Makefile 架构。我可以用 xcodebuild 做到这一点吗?
    • 一个 Xcode 项目是一个 Mac OS X 包,它实际上只是一个带有.xcodeproj 后缀的目录(例如My_Project.xcodeproj),它又包含几个文件,唯一重要的是@ 987654327@ 文件。要使用xcodebuild 构建Xcode 项目,您需要指定.xcodeproj 目录,而不是内部project.pbxproj 文件。如果您想要其他平台的实际 makefile,那么您需要使用 CMake 之类的东西,但这需要一些努力来对 Xcode 项目进行逆向工程。 cmake.org
    • 另外,如果你有一个 .pbproj 而不是 .xcodeproj,那是一个古老的 Xcode 之前的项目,可能需要在你构建它之前由 Xcode 升级。
    • 好的,所以没有自动生成 Makefile 的方法。太糟糕了。不过感谢您提供的信息。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-26
    • 1970-01-01
    • 2023-04-07
    • 2019-11-05
    相关资源
    最近更新 更多