g ++ não é possível localizar o cstdlib (erro fatal: cstdlib: nenhum arquivo ou diretório) [fechado]

1

Estou tentando compilar o simples programa c ++

//Programm, um Celcius in Fahrenheit umzurechnen
// F=C*(212-32)/100+32
#include <cstdio>
#include <csdtlib>
#include <iostream>

using namespace std;

int main(int numberofArgs, char*pszArgs[])
{
//Temperatur in C eingeben
int celcius;
cout<<"Geben Sie die Temperatur in Celcius ein: ";
cin>>celcius;

//Umrechnungsfaktor Berechnen
int factor;
factor=(212-32)/100;

//Umrechnen
int fahrenheit;
fahrenheit=celcius*factor-32;

//Ergebnis und Zeilenumbruch ausgeben
cout<<"entspricht in Fahrenheit: ";
cout<<fahrenheit<<endl;

//Warte bis Benutzer Ergebnis gelesen hat und Programm beendet
system("PAUSE");
return 0;
}

depois de digitar

g++ TestConversion.cpp -o conversion

no terminal, ele retorna

TestConversion.cpp:4:19: fatal error: csdtlib: No such file or directory
compilation terminated.

no meu sistema, o cstdlib pode ser encontrado em

/usr/include/c++/5

e em

/usr/include/c++/5.4.0

(5 e 5.4.0 são os únicos diretórios contidos em / usr / include / c ++)

portanto, também tentei

g++ -I /usr/include/c++/5 TestConversion.cpp -o conversion

e

g++ -I /usr/include/c++/5.4.0 TestConversion.cpp -o conversion

que leva ao mesmo resultado acima. Eu também tentei

g++ -I /usr/include/c++/5.4.0/cstdlib  TestConversion.cpp -o conversion

que provavelmente não faz sentido, já que o resultado foi

cc1plus: warning: /usr/include/c++/5.4.0/cstdlib: not a directory
TestConversion.cpp:4:19: fatal error: csdtlib: No such file or directory
compilation terminated

(com o sme acontecendo se o 5.4.0 for substituído por 5).

Eu também instalei o clang para verificar se eu poderia compilar o programa com ele, mas tive o mesmo problema. O comando

clang TestConversion.cpp -o conversion

produzido

TestConversion.cpp:4:10: fatal error: 'csdtlib' file not found
#include <csdtlib>
         ^
1 error generated.

Eu já reinstalei o g ++ e o multilib.

Estou usando o ubuntu 16.04 e tenho, como pode ter se tornado óbvio, muito pouca experiência com programação e gcc / g ++.

Qualquer ajuda seria muito apreciada. De bom grado, forneço mais detalhes se forem úteis.

    
por Santiago LP 26.08.2017 / 15:13

1 resposta

0

Você digitou incorretamente o nome da inclusão em seu programa. Você tem csdtlib e deve ser cstdlib - o t e d estão invertidos.

    
por Charles Green 26.08.2017 / 15:35