似乎有很多关于如何做到这一点的教程,每个都略有不同。我希望有人能识别我收到的错误消息并指出我正确的方向。
我的代码,嗯是:
#import <Foundation/Foundation.h>
int main (int argc, const char * argv[])
{
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
NSLog (@"hello world");
[pool drain];
return 0;
}
在我编译之前,我在控制台中输入:
. /usr/share/GNUstep/Makefiles/GNUstep.sh
我尝试编译:
gcc `gnustep-config --objc-flags` -lgnustep-base h.m -o hello
并得到:
/tmp/ccgLOnpY.o:在函数“main”中: /home/ge/objective-c/hm:4:未定义对“objc_get_class”的引用 /home/ge/objective-c/hm:4:未定义对“objc_msg_lookup”的引用 /home/ge/objective-c/hm:4:未定义对“objc_msg_lookup”的引用 /home/ge/objective-c/hm:5:对“NSLog”的未定义引用 /home/ge/objective-c/hm:6:未定义对“objc_msg_lookup”的引用 /tmp/ccgLOnpY.o:在函数“__objc_gnu_init”中: /home/ge/objective-c/hm:8: 未定义对 `__objc_exec_class' 的引用 /tmp/ccgLOnpY.o:(.data.rel+0x0): 对 `__objc_class_name_NSConstantString' 的未定义引用 /tmp/ccgLOnpY.o:(.data.rel+0x8): 对 `__objc_class_name_NSAutoreleasePool' 的未定义引用 collect2: ld 返回 1 个退出状态
有人可以指出我正确的方向吗?
TIA