GCC 4.5.0
Saiu a versão 4.5.0 da GNU Compiler Collection, que um dia já foi o GNU C Compiler, iniciado por Richard Stallman em 1985 a partir do código de um compilador de Pastel. As décadas passaram, o projeto pariu o EGCS, o EGCS transmutou-se novamente em GCC e deu continuidade à sua linhagem, o significado da sigla mudou, e hoje chegamos a uma nova versão.
As mudanças em relação à versão 4.4, lançada há cerca de um ano, incluem o uso da biblioteca MPC para resolver aritmética complexa em tempo de compilação, paralelização automática como parte do Graphite, suporte a novos processadores ARM, otimizações para o Atom e para o AMD Orochi, e mais. Para os detalhes, visite o Changelog. (via osnews.com).
Se não me engano tem o novo GDB – o debugger – que é muito mais inteligente. Você pode compilar com otimização máxima e ainda sim o GDB será capaz de percorrer o código. Fantástico.
Parabéns ao time do Gnu ;)
Alguem sabe dizer se o GCC já chegou perto do Intel C Compiler ? Ou do Visual Studio 6.0 em questões de otimizações ?
É a primeira vez que vejo alguém falar bem do Visual Studio 6.0.
O Intel C Compiler eu sabia que era bom, mas o Visual Studio?!?!
Um compilador que parece estar indo pelo caminho certo é o LLVM + clang
“a partir do código de um compilador de Pastel”
Se Pastel estivesse em letra minúscula era piada pronta ! :D
“…o projeto pariu o EGCS, o EGCS…”
Que linguagem mais incoveniente, pra dizer o mínimo…
Alguem sabe dizer se o GCC já chegou perto do Intel C Compiler ? Ou do Visual Studio 6.0 em questões de otimizações ?
PAREM O MUNDO QUE EU QUERO DESCER! O VC2008 e um DVD inteiro, o GCC:
Obter:2 http://sft.if.usp.br/ubuntu/ lucid/main gcc-4.4 4.4.3-4ubuntu5 (tar) [48,8MB]
P.s: Nunca tive o desprazer de programar no VC: Só usei ele para compilar uma app que só compilava naquela porcaria. E mesmo assim foram quase 12Gb de parafernália instaladas.
@Leonardo, vê-se que você nunca programou mesmo. O VC2008 é grande porque vem com uma infinidades de bibliotecas prontas pras mais diversas finalidades. Se você for pegar todas as bibliotecas equivalentes para o GCC, vai ficar muito próximo a um DVD mesmo. Agora, se você quiser usar só o compilador, os tamanhos também não devem mudar muito.
O código gerado pelo Visual C++ da MS é muito mais rápido que o código gerado pelo GCC no Windows. Não dá pra comparar é com outras plataformas pelo motivo óbvio…
@marcosalex
Com comentarios totalmente desprovidos de inteligencia como o do nosso amigo acima justificam o termo “GNU-CHATOS”
Em compensação, o VC2008 só tem versão para um sistema operacional.
@Allan, como quase tudo da MS, feito por Windows e para Windows :-)
E, rodando só numa arquitetura de processador ainda… Assim como provavelmente o compilador da Intel deve ser otimizadíssimo para sua a arquitetura de seu principal produto.
Se tem um compilador para linux que é rápido pra caramba, este é o tcc, do mesmo criador do QEMU. No site do projeto tem umas comparações, mas só usando para ver como é mesmo mais rápido. Só resta saber de seu nível de otimização (embora os binários que eu tenha visto com o tcc tenham ficado menores que os correspondentes em gcc, mas fiz só testes com programas pequenos).
Aqui que esta o problema do mundo “openSource”
“Ahhh mas rodando em uma arquitetura só… ai vc pode ser MUITO MELHOR”
Nego fica preocupado em rodar 123123 arquiteturas , quando na realidade seu “produto” roda mesmo em uma meia duzia… ai vc tem um belo software PATO… Voa , nada e anda , mas tudo +/-….
Ah, pronto.
Agora ter suporte a múltiplas arquiteturas é defeito. Como se dar suporte para só uma ou duas plataformas tivesse sido uma escolha consciente em prol da otimização.
Pooois sim.
Ele não disse que dar suporte a várias plataformas seja defeito. As pessoas entendem errado as coisas. Ele disse que não ser otimizado para nenhuma plataforma é defeito.
Quem prefere pagar R$ XXX pelo produto comercial, para usar em uma plataforma especifica de hardware e software proprietários , que o faça ( não tem problema algum , cada um queima o seu dinheiro da forma que quer ) e adquira uma licença, pois software com eula não permite cópia ilegal e pirataria é crime.
Quem prefere adquirir um software livre e tecnicamente equivalente ( ou superior ), sem nehuma burocracia e para diversas plataformas, fartamente documentado , também é livre para fazê-lo, lembrando que software livre não tem nada a ver com “software de graça”.
@Dyego Souza do Carmo
o marcosalex não disse que o gcc não é otimizado em nem uma outra plataforma. Ele disse que não pode comparar as otimizações existestes em outras arquiteturas simplesmente pq o VC2008 não possui suporte.
Pelo que vi, alguns estão tentando comparar a IDE Visual Studio + as bibliotecas que vem com o Visual Studio + o compilador Visual Studio com o compilador GCC.
Pra começar, quem suporta mais padrões (inclusive padrões que ainda vão ser lançados, que nem o C++0x)? Quem suporta mais arquiteturas? A otimização eu já não sei, mas parece que ele está começando a ficar competitivo contra o LLVM, que é um referencial, ao que me parece, em otimizações.
E se quiserem comparar toda o ambiente de programação, comparem com o GCC + Qt + Qt Creator + GDB que faz tudo e faz em várias plataformas.
Eh engraçado defensores do VC dizerem que instalar o VC pelado fica tão pequeno quanto o GCC pelado. Lib quem tem que escolher é o usuário, e eu – apesar de não ter a estatística dos mirrors, duvido que boa parte das bibliotecas usadas por ai ultrapassem 8~12gb, como qt, gtk, etc..
E em tempo, eu disse mesmo que não uso o VC. Instalei ele porque precisei compilar uma aplicação windows only que não conseguia ser compilada com o GCC. Em todo caso, o GCC é o tipo de software que tem qualidade e é livre, portanto não acho que nesse contexto cabe dizer que o VC é bom.
P.s:
$ aptitude download gcc-4.4 gcc-4.4-base gcc-4.4-doc gcc-4.4-locales gcc-4.4-multilib
Lendo listas de pacotes… Pronto
Construindo árvore de dependências
Lendo informação de estado… Pronto
Lendo informações estendidas de estado
Inicializando estados de pacotes… Pronto
Obter:1 http://sft.if.usp.br/ubuntu/ lucid/main gcc-4.4 4.4.3-4ubuntu5 [2986kB]
Obter:2 http://sft.if.usp.br/ubuntu/ lucid/main gcc-4.4-base 4.4.3-4ubuntu5 [118kB]
Obter:3 http://sft.if.usp.br/ubuntu/ lucid/main gcc-4.4-doc 4.4.3-4ubuntu5 [2120kB]
Obter:4 http://sft.if.usp.br/ubuntu/ lucid/universe gcc-4.4-locales 4.4.3-4ubuntu5 [942B]
Obter:5 http://sft.if.usp.br/ubuntu/ lucid/main gcc-4.4-multilib 4.4.3-4ubuntu5 [2204kB]
Buscados 7428kB em 32s (225kB/s)
A Microsoft criou um sistema operacional e desenvolve aplicações voltadas a esse sistema. Não há nada de errado nisso, tampouco há uma lei que a obrigue a portar seus produtos para sistemas concorrentes do seu.
@André Machado, exatamente. Na minha cidade (Maringá) está ocorrendo um evento chamado Maringá Tech Days, patrocinado pela MS e fala só sobre tecnologias Microsoft.
Ela simplesmente cria um bom SO, excelentes ferramentas e softwares, mas tudo girando em torno de sua marca.
Contra a lei não é, mas este comportamento já mostrou o que pode acontecer com o mercado de softwares, principalmente de uso pessoal.
Crime não é. Quem disse que só é moralmente errado o que é criminoso?
@Leonardo Amaral
O VS 6.0 de fato é bem pequeno, então comparação com o VS 2008 é um tanto bizarra.
Outra coisa de fato nem gosto de usar Windows, entretanto o Seven eu gostei (mais para jogos).
@Hell, realmente o VC 6.0 é bem menor que o VS 2008, mas ainda são 2 CD’s (mais um da documentação).
O GCC ainda é bem menor que isso. E não há forma de você obter o compilador da MS sem o VC++, ao menos a versão express.
Mas siceramente eu acho essa discussão de qual é melhor sem propósito:
VC++ 6.0/2003/2008/2010 – Compilador proprietário otimizado para Windows.
GCC – Bom compilador livre com opções de otimização para vários SO’s e plataformas.
Cada um que pese seus prós e contras e escolha o seu.
Sobre a comparação de tamanho entre o VC e o GCC é totalmente descabido o VC é uma IDE (Integrated development environment) a instalação básica oferece muitos mais recursos, além dos diversos frameworks embutidos, não estou aquii defendendo um ou outro só acho que não cabem comparações descabidas, querer comparar otimização do compilador é uma coisa, agora comparar uma IDE com um compilador já é demais.