Usar o compilador de C++ g++ do cygwin
G++ hello.cpp
mas eu tenho:
o 'g++' não é reconhecido como um comando interno ou externo, um programa operacional ou um ficheiro em lote.
instalei o cygwin na minha D:\programs\cygwin. Eu fiz outro diretório com meu arquivo hello-world em D:\cpp. Algo com a minha instalação ou os meus caminhos parece não estar bem, mas não consigo perceber o quê. Eu corri o arquivo exe da cygwin, e no diretório de instalação eu tenho todos os arquivos necessários, eu acho: pasta bin, lib, Cygwin.morcego, etc.
li que em caso de tal mensagem de erro devo verificar se o cygwin1.o ficheiro dll é copiado para a pasta principal do Windows. Este é o ... C:\WINDOWS directório? Já procurei lá e não tenho um ficheiro desses. Tenho cygwin1.dll na pasta bin do cygwin: D:\programs\cygwin\bin. Além disso, Como posso verificar se a pasta bin (D:\programs\cygwin\bin) é considerado no caminho de busca de comandos?
Eu acho que o programa hello-world não deve conter nenhum erro de sintaxe, eu acabei de copiá-lo. Além disso, quando escrevo
G++ - v
recebo a mesma mensagem de erro: que o comando não é reconhecido. Agradecia que alguém ... dá-me uma pista sobre o que devo ver. Obrigado.
Aqui está o código do programa hello-world:#include <iostream>
using namespace std;
int main() {
cout <<"Hello World!"<<endl;
return 0;
}
instalei o g++, E agora, quando digito o g++ -v, obtenho: especificações de leitura de: \D\cygnus\cygwin-b20\H-i586-cygwin32\bin..\lib\gcc-lib\i586-cygwin32\egcs-2.91.57\specs versão gcc egcs-2.91.57 19980901 (egcs-1.1 release)
na pasta bin tenho ambos g++.exe e gcc.exe. Não percebo porque é que tenho" gcc "acima e não"g++". Não sei se isto é importante., mas recebo uma mensagem de erro quando tento compilar o programa na linha de comandos do dos:
g++ hello.cpp
Eu fico:
hello.cpp:1: parse error before character 0357
hello.cpp: In function 'int main()':
hello.cpp:'cout' undeclared (first use this function)
hello.cpp: (Each undeclared identifier is reported only once
hello.cpp: for each function it appears in.)
hello.cpp: 'endl' undeclared (first use this function)
e aqui está o que eu recebo quando tento compilar o programa na concha cygwin:
hello.cpp:1: parse error before character 0357
hello.cpp: In function 'int main()':
hello.cpp:'cout' undeclared (first use this function)
hello.cpp: (Each undeclared identifier is reported only once
hello.cpp: for each function it appears in.)
hello.cpp: 'endl' undeclared (first use this function)
g++.exe: hello.cpp: No such file or directory
g++.exe: No input files
g++.exe: hello.cpp: No such file or directory
g++.exe: No input files
g++.exe: hello.cpp: No such file or directory
g++.exe: No input files
g++.exe: hello.cpp: No such file or directory
g++.exe: No input files
g++.exe: hello.cpp: No such file or directory
g++.exe: No input files
12 answers
Ah, pensei que o g++ está instalado quando instalo o cygwin. Então, eu deveria instalar o g++ Nesse caso, não deveria?
(e depois reiniciar)
E quando se trata de definir a variável de localização do Windows (e outras), eu descobri que este pequeno programa é bastante útil e melhor do que encolher na aplet do painel de controlo do MS.
Edit: parece que o OP não instalou o g++ por engano - uma lição para todos nós que respondemos ao perguntar ao primeira pergunta óbvia: -)
Http://www.codeguru.com/cpp/misc/misc/compilerandpre-compiler/print.php/c8107__1/
Instalaste o g++? Não está instalado pelas configurações padrão do instalador Cygwin.
Tem a certeza que instalou o g++? G++ é um compilador C++, não um compilador C++. Se apenas instalou o compilador C, teria o comando gcc mas não o comando g++
Certifica-te que eles c:\cygwin\bin está no caminho.
Espero que ajude.Para obter o caminho em cygwin:
echo $PATH
Isto vai levar-nos a compreender o problema.
Editar:
O próximo comando dir-nos-á onde o cygwin pensa que deve estar à procura de todos os ficheiros no windows
mount
A linha que inclui /usr/bin é a que precisamos de uma cópia.
Cd c:\cygwin\bin
Tipo c++ ou cpp
Ou faça um comando de directório veja o conteúdo. Procura cpp ou c++.
Se não estão lá, não descarregaste.Para além de adicioná-lo ao caminho (que irá corrigir o seu problema), poderá querer transferir o make e o dbg, que também estão no caminho de desenvolvimento, mas não estão assinalados por omissão. Certifique-se de selecionar "manter" como as opções de instalação geral para que ele não Re-baixar tudo.
My Computer
e clique em "Propriedades". Vá para a página " Avançado "e carregue no botão" Variáveis do ambiente". A partir daqui, veja se os caminhos que você mencionou estão incluídos na variável PATH. Se não, adicione-os usando a mesma sintaxe que você vê lá para separar caminhos (eu acho que é um ponto-e-vírgula ou um ponto-vírgula entre caminhos.)
Edit: Ah, vejo que tens já fiz isso (bata meu post por meros segundos. Acho que tudo o que precisas de fazer agora é reiniciar.