Objective-c:如何使用 NSApplicationMain

标签 objective-c nsapplication

这个程序有什么问题?

// main.m
#import <Foundation/Foundation.h>
#import <Cocoa/Cocoa.h>


int main(int argc, char *argv[])
{
    return NSApplicationMain(argc, (const char **)argv);
}

我尝试编译并收到此错误:
$ clang -framework Foundation main.m
Undefined symbols for architecture x86_64:
  "_NSApplicationMain", referenced from:
      _main in main-c04948.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
$

最佳答案

您已链接到 Foundation,但未链接到 AppKit 或 Cocoa。 NSApplicationMain()是 AppKit 的一部分。您需要更换 -framework Foundation-framework AppKit-framework Cocoa (它们或多或少是同义词)。

关于Objective-c:如何使用 NSApplicationMain,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34689133/

相关文章:

iOS Setters 和 Getters 以及带下划线的属性名称

objective-c - 如何使状态栏应用程序与其他状态栏应用程序一起捕获 'applicationDidResignActive:'?

multithreading - Cocoa NSApplication 线程模型

objective-c - 文档表不响应键盘事件

macos - 为什么 NSApplication sharedApplication mainMenu 返回 nil ?

objective-c - 应用程序委托(delegate)和应用程序的正确连接是什么

iphone - 使用 AppDelegate 使变量对整个应用程序可用

ios - 在 UITableView 中访问多维数组值

ios - RestKit请求映射-发布对象数组

ios - 仅在iPod中崩溃