TCC - Incrível compilador C.

1. TCC - Incrível compilador C.

???
gokernel

(usa Linux Mint)

Enviado em 18/11/2010 - 08:39h

Olá pessoal.

Estava eu ontem(17/11/2010) procurando um compilador C rápido e pequeno, então encontrei o TCC.

Fiquei impressionado com a velocidade de compilacão e com o tamanho do arquivo binário gerado, e + o código do TCC é muito pequeno e fácil de estudar.


TESTE DE TAMANHO DE BINÁRIO GERADO USANDO( TCC, LCC, GCC ), PARA APLICATIVOS NATIVOS WINDOWS:
------------------------------------------------------------
TCC = 1.536 bytes.
LCC = 7.112 bytes.
GCC = 15.663 bytes

OBS: o código do teste foi um "Hello World".
------------------------------------------------------------

E a melhor notícia vem agora... ele também executa o código C como se fosse um SCRIPT sem precisar compilar:
-----------------------------------------------------------

tcc -run programa.c

-----------------------------------------------------------

O TCC vem com dois utilitários(para windows) para gerar bibliotecas direto de um DLL... e também é um assembler.

Vale apena conferir para WINDOWS(binario/código) e LINUX(código):

http://bellard.org/tcc/

http://en.wikipedia.org/wiki/Tiny_C_Compiler

Fica a dica... que será também publicada no site UNIDEV.

gokernel
gokernel@hotmail.com



  


2. Re: TCC - Incrível compilador C.

Perfil removido
removido

(usa Nenhuma)

Enviado em 18/11/2010 - 10:07h

AS versões mais antigas do gcc (MinGW no windows) também criam executáveis minúsculos, eua cho legal esse tipo de coisa num compilador.
Acho que é por isso que eu odeio .net e toda a corja de linguagens interpretadas...


3. Re: TCC - Incrível compilador C.

???
gokernel

(usa Linux Mint)

Enviado em 18/11/2010 - 11:05h


Acho que é por isso que eu odeio .net e toda a corja de linguagens interpretadas...


Então somos 2... vivo fugindo do .NET.

Me arrependi quanto instalei o Visual Studio 2008(Visual C++) onde era necessário o .NET... minha máquina ficou uma "carroça" de lentidão.

Gosto de algo simples/pequeno/funcional tipo( clicar/baixar ) em menos de 3/5 minutos.

Abraços.

gokernel
gokernel@hotmail.com



4. Re: TCC - Incrível compilador C.

Anderson de Oliveira Madeira
enki

(usa Zenwalk)

Enviado em 18/11/2010 - 11:56h

Interessante, eu já tinha ouvido falar sobre o TCC mas não tinha testado, também me atrái a idéia de desenvolvimento pra construção de applicações pequenas. Acho interessante também ao desenvolver algum aplicativo que ele seja desenvolvido em alguma linguagem ou framework que seja de fácil instalação ou já seja nativo na plataforma alvo e de preferência cross-plataform (três coisas que o .NET não é, hehehe). Creio não precisar fugir de .NET, já que há inúmeras soluções mais eficientes e produtivas por aí, como Python, C++ e outras. Na minha opinião (não só minha, mas de outros desenvolvedores também), linguagens interpretadas também são interessantes por proporcionar códigos pequenos. Python é um exemplo, a maioria dos programas em Python são pequenos e eficientes (não tanto quanto C/C++/Java).


5. Re: TCC - Incrível compilador C.

???
gokernel

(usa Linux Mint)

Enviado em 30/11/2010 - 08:44h


Dissponibilizei uns exemplos usando a LIBTCC veja:

http://www.unidev.com.br/phpbb3/viewtopic.php?f=12&t=52529




6. Re: TCC - Incrível compilador C.

Rafael Umbelino
tlaloc

(usa Gentoo)

Enviado em 30/11/2010 - 08:56h

Não seria o mesmo que compilar com flags para minimizar tamanho de binário, com o GCC?


7. Re: TCC - Incrível compilador C.

Anderson de Oliveira Madeira
enki

(usa Zenwalk)

Enviado em 30/11/2010 - 10:51h

Concordo com o tlaloc, poderíamos otimizar o executável final com o gcc através das flags -O1, -O2, etc. O que também iria diminuir consideravelmente o tamanho do executável. Mas alguém fez comparação nesse caso, pra ver qual o mais eficiente?


8. Re: TCC - Incrível compilador C.

???
gokernel

(usa Linux Mint)

Enviado em 30/11/2010 - 12:13h


Mas alguém fez comparação nesse caso, pra ver qual o mais eficiente?


Eficiente? vc se refere ao TAMANHO(do binário gerado) ou velocidade de compilação?

O TCC ganha nos 2. ;).




9. Re: TCC - Incrível compilador C.

Rafael Umbelino
tlaloc

(usa Gentoo)

Enviado em 30/11/2010 - 12:23h

gokernel, velocidade de compilação e tamanho de binário não são tudo...
o desempenho geral do aplicativo é que é importante.

Por exemplo, temos de avaliar o desempenho de aplicativos compilados com GCC e TCC entre aplicativos pequenos (como por exemplo um plugin de painel), um médio (Pidgin, por exemplo) e um grande (como o OpenOffice.Org).

Aí a gente tem uma medição real do desempenho.
Há flags no GCC que fazem o OpenOffice.Org compilar em alguns poucos minutos, mas se perde muito da otimização do pacote.


10. Re: TCC - Incrível compilador C.

Anderson de Oliveira Madeira
enki

(usa Zenwalk)

Enviado em 30/11/2010 - 12:26h

gokernel, eu me referia ao tamanho do executável final, mas concordo com o que o amigo acima disse, creio que velocidade de compilação e tamanho do executável não são tão importantes se comparados a outras coisas como velocidade de execução e uso efetivo de memória.


11. Re: TCC - Incrível compilador C.

Rafael Umbelino
tlaloc

(usa Gentoo)

Enviado em 30/11/2010 - 12:33h

Pra quê eu quero "velocidade de compilação" ou mesmo "tamanho de binário" quando estou falando de sistemas para desktops que já vem com 1 TB de armazenamento e processador de 4 núcleos?
Tamanho de binário só tem importância em thin client e celular.
Velocidade de compilação só para quem vai fazer a burrice de tentar compilar algo em um thin client.


12. Re: TCC - Incrível compilador C.

Alberto Federman Neto.
albfneto

(usa openSUSE)

Enviado em 30/11/2010 - 12:35h

Eu já ví na Net, experimentos sôbre trocar compilador GCC em Gentoo, porém é bastante difícil, porque o Portage usa GCC e tem muitas dependencias, então os experimentos que ví, até que funcionam, mas os autores tiverma um trabalhão para "acertar" o compilador para poder trabalhar no Portage.




01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts