gpt4 book ai didi

objective-c - 如何编译在 Windows 上使用 NSApplication 的 GNUstep 应用程序?

转载 作者:可可西里 更新时间:2023-11-01 14:44:38 24 4
gpt4 key购买 nike

我正在探索在 Windows 上使用 GNUstep 编译应用程序。这是我的 main.m 文件:

#import <???/???.h>

int main(int argc, const char *argv[])
{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
[NSApplication sharedApplication];
[pool release];
}

我意识到至少可以说这是一个不完整的片段,它显然不会做任何事情。我尝试了几种不同的导入语句,包括 Cocoa/Cocoa.h、GNUstepGUI/GMAppKit.h 等。但我总是在编译时遇到错误,我似乎无法在网上找到帮助。

这是我从 mingw shell 运行的编译命令:

gcc -o test main.m -I /GNUstep/System/Library/Headers/ \    -L /GNUstep/System/Library/Libraries/ -lobjc -lgnustep-base \    -fconstant-string-class=NSConstantString -enable-auto-import

这些是我得到的错误:

c:/WINDOWS/TEMP/ccHxKZG2.o:main.m(.data+0x390): undefined reference to  '___objc_class_name_NSApplication'collect2:ld returned 1 exit status

关于我需要#import 的内容,或者我的编译命令中需要修复的内容,有什么想法吗?

谢谢!

最佳答案

多亏了 Peter Hosey,我才得以用 Google 搜索到包含答案的页面:

http://psurobotics.org/wiki/index.php?title=Objective-C

与 OS X 开发不同,您需要一个“makefile”:

将其放入与源代码相同的目录中名为“GNUmakefile”的文件中:

include $(GNUSTEP_MAKEFILES)/common.makeAPP_NAME = MyAppNameMyAppName_HEADERS =MyAppName_OBJC_FILES = main.mMyAppName_RESOURCE_FILES =include $(GNUSTEP_MAKEFILES)/application.make

然后执行

make

页面说要执行

openapp ./MyAppName.app
但是 .app 文件夹中的 .exe 文件似乎可以自行运行。

关于objective-c - 如何编译在 Windows 上使用 NSApplication 的 GNUstep 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1429638/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com