我在 MacOS X 上,我对 app-bundle 类型的东西还很陌生。我正在编写一个打开窗口并注册鼠标输入的程序——而不是命令行工具。当我将我的代码(用 C 语言编写,如果这很重要)编译成可执行文件(“unix 可执行文件”)然后直接运行该文件(例如,通过双击它)时,会弹出一个终端窗口,并且然后程序的窗口弹出。同样,如果我导航到可执行文件的目录并从命令行打开它,它会弹出打开的 /another/ 终端窗口,然后是程序的窗口。
但是,如果我将可执行文件包装在一个包中(因此,我想将其变成一个适当的“应用程序”),那么当我通过双击或从命令行运行应用程序时,程序的窗口将打开并且没有新的终端窗口被创建。这仅仅是“应用程序包”架构的属性吗?或者有没有一种方法可以运行原始可执行文件而不会产生另一个终端窗口?我怀疑我误解了一些基本的东西。提前致谢!