【问题标题】:Adding version infomation to an OSX command line application向 OSX 命令行应用程序添加版本信息
【发布时间】:2011-11-22 22:42:10
【问题描述】:

在 Windows 上,我只需添加一个包含正确数据的 RC 文件。我是否需要像往常一样使用 info.plist/version.plist 组装一个捆绑包,还是有更好的标准做事方式?这是给雪豹的,如果相关的话。

谢谢++

【问题讨论】:

    标签: command-line osx-snow-leopard versioning osx-lion


    【解决方案1】:

    可以将 Info.plist 文件作为特殊的 Mach-o 部分嵌入到可执行文件中。参见例如this question

    【讨论】:

      【解决方案2】:

      如果您有一个命令行应用程序,那么它只是一个文件,而不是传统的 OSX 应用程序包(下面有一个 Contents 文件夹和一个 MacOS + Resources 文件夹)。

      如果您不愿意做一个完整的 Macintosh 应用程序包(其中嵌入了一个 GUI 和一个 info.plist),我已经看到在 Macintosh 上使用命令行应用程序完成了一些不同的事情.

      1)

      为版本添加“-v”选项。因此,如果您的应用名为 foo,在命令行中输入“foo -v”会显示“version 1.0”的输出。

      2)

      将版本号作为文件名的一部分...所以“foo”实际上是“foo1.0”。

      哎呀,这看起来很笨重。所以...

      3)

      一些应用程序有一个指向真正二进制文件的符号链接。所以foo 指向foo1.0,如果你要执行“ls -l”,你会看到类似:

      -rwxr-xr-x  1 root  wheel    66128 Jul 12 15:39 foo1.0
      lrwxr-xr-x  1 root  wheel       15 Jul 12 15:39 foo -> foo1.0
      

      所以在命令行输入“foo”实际上会运行 foo1.0。

      希望这些意见对你有所帮助!

      【讨论】:

      • 迈克尔,谢谢-我正在尝试将这一切自动化以进行构建。也许我应该在问题中更清楚地说明这一点
      猜你喜欢
      • 2011-05-17
      • 1970-01-01
      • 2010-09-08
      • 1970-01-01
      • 2014-04-06
      • 2011-11-05
      • 2015-04-19
      • 2014-06-17
      • 2021-10-25
      相关资源
      最近更新 更多