Erro ao compilar pelo terminal. (Slackware) [RESOLVIDO]

1. Erro ao compilar pelo terminal. (Slackware) [RESOLVIDO]

Daniel Bispo
HomemNuclear

(usa Nenhuma)

Enviado em 03/10/2013 - 02:29h

Galera, estou com um problema ao tentar compilar pelo terminal.
Segue...
bash-4.2$ gcc Untitled1.c -o Untitled1.c
Untitled1.c:2:19: fatal error: conio.h: Arquivo ou diretório não encontrado
compilation terminated.

Como resolver isso sem ter que mexer no codigo?






  


2. Re: Erro ao compilar pelo terminal. (Slackware) [RESOLVIDO]

Luis R. C. Silva
luisrcs

(usa Linux Mint)

Enviado em 03/10/2013 - 06:59h

Não resolve, porque a biblioteca conio.h pertence ao windows. O que significa que o código fonte que você está tentando compilar é para plataforma da Microsoft e não para Linux.

Uma opção é reescrever o código. Ou tentar uma biblioteca genérica, a conio2.h que foi escrita para Linux. Mas não de garantia de sucesso.

Pesquise sobre como instalar conio2.h.


3. Re: Erro ao compilar pelo terminal. (Slackware) [RESOLVIDO]

???
gokernel

(usa Linux Mint)

Enviado em 03/10/2013 - 07:01h

Nao existe a biblioteca conio para linux, essa eh para ambiente MSDOS/Windows.


5. Re: Erro ao compilar pelo terminal. (Slackware) [RESOLVIDO]

Paulo
paulo1205

(usa Ubuntu)

Enviado em 03/10/2013 - 10:49h

brazreich escreveu:

Galera, estou com um problema ao tentar compilar pelo terminal.
Segue...
bash-4.2$ gcc Untitled1.c -o Untitled1.c
Untitled1.c:2:19: fatal error: conio.h: Arquivo ou diretório não encontrado
compilation terminated.

Como resolver isso sem ter que mexer no codigo?


Eu não sei qual o objetivo de você ter conio no seu programa. A maioria dos exemplos que aparecem aqui são por causa de programas de apostilas obsoletas, e somente para chamar, ao final do programa, a função getch(), para exigir que o usuário aperte alguma tecla antes de encerrar o programa. Se esse for o seu caso, minha recomendação é simplesmente que você remova essa chamada a essa função espúria e a inclusão do cabeçalho <conio.h>, pois isso já era "bacalhau" no tempo do MS-DOS (fim dos anos 1980 e início dos 1990), e o é mais ainda hoje.

Se você tiver dúvidas sobre como proceder para extirpar as chamadas a funções da conio do seu código, poste-o aqui para que possamos ajudá-lo.

Definitivamente recomendo que você NÃO INSTALE clones da conio no Linux. A conio é uma versão reduzida e piorada da biblioteca Curses, que surgiu no mundo UNIX no início dos anos 1980. O Linux tem a NCurses, que é muito melhor e mais completa do que a conio jamais pensou em ser ou oferecer.

Se você quiser fazer interfaces elaboradas em modo texto, use NCurses. Mas se você é iniciante em programação e não pretende fazer programas orientados a menu em modo texto, simplesmente não perca tempo com isso.

Mas o que me leva a responder a você não é isso. O que eu notei de pior na sua postagem é ter visto que você usou o seguinte comando para compilar.

gcc Untitled1.c -o Untitled1.c 


Com isso, você está literalmente mandando o compilador sobrescrever o código fonte do programa com a saída do processo de compilação. Certamente não é isso o que você quer, pois implica perder a capacidade de alterar o código fonte ser ter de reescrever tudo do zero. Provavelmente você deveria fazer algo como abaixo.

gcc Untitled1.c -o Untitled1  # Note que eu tirei o ".c" do nome do arquivo de saída 


Isso fará com que o programa executável seja gerado no arquivo "Untitled1", preservando o código fonte em "Untitled1.c".

Aliás, eu acho pouco provável que "Untitled1" seja um bom nome para um programa. Sugiro que você lhe atribua um nome que seja condizente com aquilo que o programa faz.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts