Como posso compilar / executar C ou C ++ no console Unix ou em um terminal Mac?
(Eu sei, esqueça e reaprenda novamente. Hora de anotá-la.)
Se for um programa simples de fonte única:
make foo
onde o arquivo de origem é foo.c ou foo.cpp, etc.
Você nem precisa de um makefile. O Make possui regras internas suficientes para transformar seu arquivo de origem em um executável com o mesmo nome, menos a extensão.
Executar o executável recém-criado é o mesmo que executar qualquer programa - mas você geralmente precisará especificar o caminho para o executável, pois o shell pesquisará apenas o que há $PATH
para encontrar executáveis e, na maioria das vezes, isso não inclui o diretório atual ( .
)
Então, para executar o executável compilado foo
:
./foo
make main.cpp
, masmake main
.fonte
Undefined symbols for architecture x86_64
problema, modifico o comando da seguinte maneira:,gcc -lstdc++ main.cpp -o main.out
e isso funciona no meu Mac. via link: stackoverflow.com/questions/11852568/…Este é o comando que funciona em todas as máquinas Unix ... Eu o uso no Linux / Ubuntu, mas funciona no OS X também. Digite o seguinte comando no Terminal.app .
-o
é a letra O diferente de zerolab21
será seu arquivo executáveliterative.cpp
é o seu arquivo c ++Depois de executar esse comando, digite o seguinte no terminal para executar o seu programa:
fonte
Dois passos para mim:
primeiro:
então:
fonte
./foo
dunno resposta como aceita não tem esta importante peça de comandoToda execução de aplicativo em um ambiente Unix (Linux, Mac OS X, AIX etc.) depende do caminho da pesquisa executável.
Você pode exibir este caminho no terminal com este comando:
No Mac OS X (por padrão), isso exibirá o seguinte caminho de pesquisa separado por dois pontos:
Portanto, qualquer executável nos diretórios listados pode ser executado apenas digitando seu nome. Por exemplo:
Isso é executado
/bin/cat
e exibe mytextfile.txt no terminal.Para executar qualquer outro comando que não esteja no caminho de pesquisa executável, você deve qualificar o caminho para o executável. Digamos que eu tenha um executável chamado MyProgram no meu diretório pessoal no Mac OS XI que possa qualificá-lo totalmente da seguinte maneira:
Se você estiver em um local próximo ao programa que deseja executar, poderá qualificar o nome com um caminho parcial. Por exemplo, se
MyProgram
estava no diretório em que/Users/oliver/MyProject
eu e eu estávamos no diretório inicial, posso qualificar o nome do executável assim e executá-lo:Ou diga que eu estava no diretório
/Users/oliver/MyProject2
e queria executar./Users/oliver/MyProject/MyProgram
Posso usar um caminho relativo como este, para executá-lo:Da mesma forma, se eu estiver no mesmo diretório
MyProgram
que preciso usar o caminho relativo do "diretório atual". O diretório atual em que você está é o caractere de ponto seguido por uma barra. Por exemplo:Para determinar qual diretório você está atualmente usando o
pwd
comandoSe você costuma colocar programas em um local do disco rígido que deseja executar sem precisar qualificar seus nomes. Por exemplo, se você tiver um diretório "bin" no diretório inicial para scripts de shell usados regularmente de outros programas, pode ser aconselhável alterar seu caminho de pesquisa executável.
Isso pode ser feito facilmente criando ou editando o
.bash_profile
arquivo existente no diretório inicial e adicionando as linhas:Aqui, o caractere til (~) está sendo usado como um atalho para / Users / oliver. Observe também que a linha hash bang (#!) Precisa ser a primeira linha do arquivo (se ainda não existir). Observe também que essa técnica exige que o seu shell de login seja bash (o padrão no Mac OS X e na maioria das distribuições Linux). Observe também que se você deseja que seus programas instalados
~/bin
sejam usados preferencialmente aos executáveis do sistema, você deve reordenar a instrução de exportação da seguinte maneira:fonte
Ryan, estou mudando isso para ser uma resposta em vez de um comentário, pois parece que fui muito breve. Faça tudo isso em "Terminal".
Para usar o compilador G ++, você precisa fazer o seguinte:
Navegue para o diretório em que você armazenou o arquivo * .cpp.
cd ~/programs/myprograms/
(o ~ é um atalho para sua casa, ou seja, / Users / Ryan / programs / myprograms /, substitua pelo local que você realmente usou.)
Compile
g++ input.cpp -o output.bin
(output.bin pode ser qualquer coisa com qualquer extensão, na verdade. bin é comum no unix.)Nada deve ser retornado se tiver sido bem-sucedido, e tudo bem . Geralmente você obtém retornos por falhas.
No entanto, se você digitar
ls
, verá a lista de arquivos no mesmo diretório. Por exemplo, você veria as outras pastas, input.cpp e output.binDe dentro do diretório, agora execute-o com
./outbut.bin
fonte
make
não funcionará porque não há makefile.Uma maneira compacta de fazer isso pode ser:
É bom ter um one-liner para que você possa executar novamente o seu executável facilmente novamente.
fonte
Supondo que o diretório atual não esteja no caminho, a sintaxe está
./[name of the program]
.Por exemplo
./a.out
fonte
Adicione o seguinte para obter os melhores avisos, você não se arrependerá. Se você puder, compile o WISE (aviso de erro)
fonte
Para compilar programas C ou C ++, existe um comando comum:
make filename
./filename
O make criará seu arquivo de origem em um arquivo executável com o mesmo nome. Mas se você quiser usar o caminho padrão, poderá usar o compilador gcc para criar programas em C & g ++ para c ++
Para C:
Para C ++:
fonte
Use a
makefile
. Mesmo para projetos muito pequenos (= um arquivo), o esforço provavelmente vale a pena, porque você pode ter vários conjuntos de configurações do compilador para testar as coisas. Depuração e implantação funcionam muito mais fácil dessa maneira.Leia o
make
manual , parece bastante longo à primeira vista, mas na maioria das seções você pode simplesmente dar uma olhada. Ao todo, levei algumas horas e me tornou muito mais produtivo.fonte
Encontrei este link com instruções:
http://www.wesg.ca/2007/11/how-to-write-and-compile-c-programs-on-mac-os-x/
Basicamente você faz:
fonte
gcc hello.c -o a.out
? O que faz o mesmo quegcc hello.c
.basta entrar no diretório em que está o seu arquivo c / cpp.
para compilar e executar o código c.
para compilar e executar o código c ++.
"$" é o símbolo padrão do terminal mac
fonte
Para compilar e executar um código-fonte cpp no terminal Mac, é necessário fazer o seguinte:
fonte
A execução de um arquivo .C usando o terminal é um processo de duas etapas. A primeira etapa é digitar gcc no terminal, soltar o arquivo .C no terminal e pressionar Enter:
Na segunda etapa, execute o seguinte comando:
fonte
Para executar arquivos c ++, execute o comando abaixo, Assumindo que o nome do arquivo seja "main.cpp"
1.Compile para criar um arquivo de objeto a partir do arquivo c ++.
2.Como
#include <conio.h>
não suporta no MacOS, devemos usar sua alternativa que suporta no Mac#include <curses.h>
. Agora, o arquivo de objeto precisa ser convertido em arquivo executável. Para usarcurses.h
, temos que usar a biblioteca-lcurses
.3.Agora execute o executável.
fonte