Я пытаюсь скомпилировать простое приложение, которое ссылается на классы GNUStep, с GNUstep на моем Ubuntu 14.04, 64 бит, машины:Связи с GNUstep на Ubuntu 14.04, 64 бит
#import <Foundation/Foundation.h>
#import <Cocoa/Cocoa.h>
int main(int argc, char **argv)
{
NSString *bestType = [[NSPasteboard generalPasteboard]
availableTypeFromArray: nil];
NSLog(@"best type: %@", bestType);
return 0;
}
Вот моя компиляция и ссылка флаги (некоторые из которых могут быть избыточны):
CFLAGS=`gnustep-config --objc-flags` -std=gnu99
LDFLAGS=`gnustep-config --base-libs` -lgnustep-base -lobjc -lm -lglut -lGLU -lGL
Перед компиляцией я запускал скрипт:
/usr/share/GNUstep/Makefiles/GNUstep.sh
А вот выход из «сделать -n»
gcc main.m `gnustep-config --objc-flags` -std=gnu99 -L. `gnustep-config --base-libs` -lgnustep-base -lobjc -lm -lglut -lGLU -lGL -o tester
Но при компоновке, классы Cocoa, кажется, не втягиваться, и я получаю неопределенную ссылочную ошибку:
/tmp/ccnyXBoH.o:(.data.rel+0x8): undefined reference to `__objc_class_name_NSPasteboard'
Если удалить все ссылки на классы Cocoa в main.m, приложение компилируется без ошибок.
Отлично, это сделал трюк. Спасибо. –