Pergunta

Aprendendo o Objetivo-C no Linux (Ubuntu), mas quando tentei compilar meu aplicativo que precisa dos cabeçalhos da fundação, recebi um erro dizendo que o arquivo não pode ser encontrado, mas instalei o pacote de desenvolvimento GNUSTEP (GNUSTEP-DEVEL). Aqui está o meu código:

// Fraction.h
#import <Foundation/NSObject.h>

@interface Fraction: NSObject {
    int numerator;
    int denominator;
}

- (void) print;
- (void) setNumerator: (int) n;
- (void) setDenominator: (int) d;
- (void) numerator;
- (void) denominator;
@end

E aqui está o log do console:

ubuntu@eeepc:~$ gcc main.m -o frac -lobjc
In file included from main.m:3:
Fraction.h:2:26: error: objc/NSObject.h: No such file or directory
In file included from main.m:3:
Fraction.h:4: error: cannot find interface declaration for ‘NSObject’, superclass of ‘Fraction’
ubuntu@eeepc:~$

O que eu preciso fazer?

Foi útil?

Solução

Processo de instalação GNUSTEP para Windows

  1. Visite o URL: http://ftpmain.gnustep.org/pub/gnustep/binaries/windows/
  2. Faça o download do arquivo exe gnustep-system-0.19.2-setup.exe
  3. Em seguida, faça o download do gnustep-core-0.19.2-setup.exe

Lembre-se de uma coisa se você estiver baixando o sistema GNUSTEP de qualquer versão, deve fazer o download da mesma versão para Gnustep-Core. Por exemplo, se você baixou o gnustep-setup-0.22.1-setup.exe, deve fazer o download do Gustep-core-0.22.1-setup.exe, caso contrário, seu código não será executado.

  1. Instale primeiro o GNUSTEP-SYSTEM-0.19.2-SETUP.EXE e instale o gnustep-core-0.19.2Setup.exe. Não tente instalar no pedido vice -versa.
  2. Agora você tem o Gnustep para o Windows e depois vá para começar> All Program> Gnustep> Shell
  3. Agora abra o editor do bloco de notas e escreva o seguinte código no bloco de notas
#import  
int main (int argc, const char * argv[])
{
  NSAutoreleasePool * pool = [[NSAutoreleasePool alloc]  
init];
  NSLog (@"Anil Kumar Yadav has Run the First Objective C  
program!");
  [pool drain];
  return 0;
}

Salve -o como olá.m em seu nome C:/gnustep/home/Foldername lembre pasta. Então não seja pânico.

  1. Vá para o seu shell e digite o seguinte comando gcc -o hello.m -i/gnustep/system/biblioteca/cabeçalhos -l/gnustep/system/biblioteca/bibliotecas -lobjc -lgnustep -bashe -constant -string -class = nsconstantString
  2. Este comando criará um arquivo hello.exe na sua pasta Foldername.
  3. Novamente no shell digite o comando ./hello.exe

Finalmente, você poderá ver a saída no shell.

CONGRATULAÇÃO Você escreveu seu primeiro programa C Programa com sucesso. Precisa de qualquer esclarecimento, escreva -me para: ayadav00009@gmail.com

Outras dicas

Como você está compilando isso? Para mim, eu crio um GNUMakefile makefile para o meu aplicativo (veja aqui), e então eu corro source /usr/share/GNUstep/Makefiles/GNUstep.sh e depois make.

Eu procurei no repositório e, em seguida, instalei a LIB da fundação, agora tudo está funcionando.

Obrigado.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top