1

入手したもの: Ubuntu 12.04、clang、gnustep-devel、gnustep、libobjc2

だから私は簡単なプログラムをコンパイルしようとしています

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[])
{
NSAutoreleasePool * pool = [NSAutoreleasePool new];
NSLog(@"Hi");
[pool drain];

return 0;
}

このようにコンパイルします:clang prog.m -I /usr/include/GNUstep/ -D_NATIVE_OBJC_EXCEPTIONS -lgnustep-base -fconstant-string-class=NSConstantString 問題ありません。すべてが完璧で、正常に動作します

しかし、autoreleasepool を使用したい場合:

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[])
{
    @autoreleasepool {
        NSLog(@"Hello, World!");
    }

return 0;
}

エラーが発生したのと同じ方法でコンパイルします。

undefined reference to `objc_autoreleasePoolPush' 
undefined reference to `objc_autoreleasePoolPop'

私は長い間グーグルで検索しましたが、解決策が見つかりませんでした。誰かが同じ問題を解決したのでしょうか?

4

0 に答える 0