[英]How to hide terminal window in mac osx?
我有一个在Windows,Linux,Android和Mac上运行的多平台应用程序。 在所有平台上均使用g ++进行编译。
对于Windows,我创建了一个安装程序,并通过添加链接器标志摆脱了终端窗口:
-Wl,--subsystem,windows
我正在Mac上寻找类似的选项。 从GUI打开可执行文件时,如何摆脱控制台窗口?
这个问题类似于如何在Mac OS(gcc编译器)中隐藏控制台窗口? ,但我的应用程序不是守护程序。
谢谢。
根据您的描述,您正在构建什么是Unix风格的可执行文件。 在OS X上,这些将始终在终端窗口内启动。 在OS X上有以下选择:
在大多数情况下,您可以按照Apple捆绑软件编程指南中的说明创建适当的捆绑软件 ,从而为Unix风格的可执行文件创建包装器(跳过iOS内容并查看Mac捆绑软件信息)。
基本目录结构为:
MyApp.app/
Contents/
Info.plist
MacOS/
executable
Resources/
MyApp.icns
您未修改的可执行文件可以进入MacOS
目录,并且您需要使用plist编辑工具或编辑器在Info.plist
设置以下键:
CFBundleIdentifier
您的应用程序ID(采用反向DNS表示法)( com.mycompany.myapp
) CFBundleDisplayName
以易于MyApp
形式显示您的应用程序的名称( MyApp
) CFBundleName
应用程序的简称(通常与您的应用程序和可执行文件名称相同) CFBundleVersion
您的版本号为XY [.Z]形式 CFBundlePackageType
程序包类型,对于应用程序应为APPL
CFBundleExecutable
可执行文件的名称 CFBundleSignature
老式的Apple签名(理论上应该向Apple注册的4个字符代码) 最小plist如下所示:CFBundleDisplayName MyApp CFBundleExecutable a.out CFBundleIdentifier com.mycompany.myapp CFBundleName MyApp CFBundlePackageType APPL CFBundleSignature FOOZ CFBundleVersion 1.0
(以上示例使用a.out
作为可执行文件,该文件位于MyApp.app/Contents/MacOS/a.out
)
如果您不关心图标资源,则可以省去图标资源,并且将使用默认的应用程序图标。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.