Makefile: Compilando entre pastas

1. Makefile: Compilando entre pastas

Micael Carvalho
Micael Carvalho

(usa Slackware)

Enviado em 13/11/2009 - 16:47h

Estou em uma pasta X, preciso fazer o Makefile (localizado na pasta X) compilar uma série de arquivos da pasta Y e colocar os executaveis na pasta Z...

Como fazer isso?

Exemplo:

X/Makefile
Y/ -- códigos .c --
Z/ arquivos compilados pelo Makefile


  


2. Re: Makefile: Compilando entre pastas

Perfil removido
removido

(usa Nenhuma)

Enviado em 13/11/2009 - 18:00h

primeira coisa arrume um makefile e estude ele. pega qqer source em www.gnu.org que serve.

o make faz o q vc quiser.. ex:

gcc foo.c
mv foo ../pasta/foo
rm foo.c

é por ai, sem ler um nao da pra saber. é mao na massa!!!

[]s


3. Re: Makefile: Compilando entre pastas

Micael Carvalho
Micael Carvalho

(usa Slackware)

Enviado em 13/11/2009 - 18:47h

Já li vários...
Não encontrei sequer um site que realmente explique como funciona o makefile, eles apenas dizem "digita isso porque é assim!"...
Com comandos eu sei fazer, o problema é a verificação, se o arquivo já existe e está na versão, etc.


Também queria saber se há algum meio de "automatizar", para ele criar tudo que tem na pasta, sem a necessidade de escrever no makefile.


4. Re: Makefile: Compilando entre pastas

Perfil removido
removido

(usa Nenhuma)

Enviado em 13/11/2009 - 19:04h

nao meu fi... o makefile que é basicamente o automatizador...vc entende shell script? é requisito basico... por que? porque o make executa uma serie de comandos como um shell script. quer ver?

shell script:

{{{
#!/bin/sh
gcc arquivo.c -o arquivo
cp arquivo /pasta/destino
rm -f arquivo.c
}}}

makefile:
{{{
all:
gcc arquivo.c -o arquivo
cp arquivo /pasta/destino
rm -f arquivo.c
}}}

ai vc entra na pasta, digita

make all

o make le e executa igual o shell script.

tenta ler isso aqui:
http://jfmitre.com/2009/06/apresentando-um-makefile-em-detalhes.html
http://palavras.incubadora.fapesp.br/portal/coloquio/figs/Makefile.sample

note q é pra latex, mas a ideia basica e a mesma... procura o LDP q deve ter algo la...

mais um (pra C): http://www.slackwarezine.com.br/download/evento/makefiles.pdf
[]s


5. Re: Makefile: Compilando entre pastas

Micael Carvalho
Micael Carvalho

(usa Slackware)

Enviado em 15/11/2009 - 05:18h

Cansei de procurar. Nada funciona.

Será que ninguém pode vir aqui e simplesmente falar:

"Para trocar de pasta use o comando X"? Porque nem o CD funciona -.-


Me passar 400 tutoriais que não explicam o que preciso não ajuda muito...
E também até agora não consegui fazer ele compilar uma sequencia de coisas "por variavel"...
Em varios lugares eles dizem para fazer assim:

ARQ=arquivo1 arquivo2 arquivo3 ...

E depois compilar usando:

gcc -o $(ARQ).cmd $(ARQ).c

Ou algo assim.

Mas ele vai no lugar da variavel e posta TUDO e não um de cada vez, isso não é uma coisa útil...


6. Sei que é old mas...

Gustavo
catau

(usa Ubuntu)

Enviado em 05/03/2014 - 04:13h

Se que vou reviver um post, mas como não teve resposta e tive esse problema agora...vai a solução

Ex.:

all:
cd pastaX;gcc nome.c -o ../pastaZ/nome
run:
cd pastaZ;./nome






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts