Clipper On Line • Ver Tópico - Harbour 3.4 Clang compilador padrão

Harbour 3.4 Clang compilador padrão

Projeto Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

 

Harbour 3.4 Clang compilador padrão

Mensagempor Itamar M. Lins Jr. » 02 Out 2017 16:54

Ola!
2017-09-30 15:07 UTC Viktor Szakats (vszakats users.noreply.github.com)
* .appveyor.yml
* switch to clang to build snapshot binary releases.
Please see RELNOTES, on how to install clang via MSYS2.
The binaries remain compatible with libs/objects built with
mingw 7.x.

* utils/hbmk2/pkg_dynl.hbm
! fix typo made in 2017-09-29 14:14 UTC


Parece que o padrão mudou de GCC para CLang.
Mais explicações, serão bem vindas!
Pelo que estou lendo o Clang tem vantagens sobre o GCC. Achei isso na NET.
https://clang.llvm.org/comparison.html#gcc

Saudações,
Itamar M. Lins Jr.
Avatar de usuário

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 6927
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 309 vezes
Mens.Curtidas: 503 vezes

Harbour 3.4 Clang compilador padrão

Mensagempor JoséQuintas » 02 Out 2017 19:47

Apesar de muita coisa chamar atenção, esta me chamou mais:

GCC is licensed under the GPL license. clang uses a BSD license, which allows it to be embedded in software that is not GPL-licensed


Pode significar um Harbour pronto, sem depender de nada externo.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18013
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1206 vezes

Harbour 3.4 Clang compilador padrão

Mensagempor RobertoLinux » 03 Out 2017 07:55

Bom dia.
Nobres colegas, não sei se entendi direito, mas me parece que desde o GCC 7.0 tudo que for compilado com o mesmo se torna GPL automaticamente, por isso o FreeBSD portou tudo para LLVM/clang. Eu acho que é isso, não tenho certeza.

Felicidades.
Entusiasta
Avatar de usuário

RobertoLinux
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 110
Data de registro: 14 Abr 2014 18:32
Cidade/Estado: Fortaleza/Ce
Curtiu: 7 vezes
Mens.Curtidas: 6 vezes

Harbour 3.4 Clang compilador padrão

Mensagempor asimoes » 03 Out 2017 10:39

Acompanhando:

O link que o Itamar postou:
Essa parte sobre os Prós

Clang vs GCC (GNU Compiler Collection)

Pro's of GCC vs clang:

GCC supports languages that clang does not aim to, such as Java, Ada, FORTRAN, Go, etc.
GCC supports more targets than LLVM.
GCC supports many language extensions, some of which are not implemented by Clang. For instance, in C mode, GCC supports nested functions and has an extension
â–ºHarbour 3.x | Minigui xx-x | HwGuiâ—„
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar de usuário

asimoes
Colaborador

Colaborador
 
Mensagens: 4919
Data de registro: 26 Abr 2007 16:48
Cidade/Estado: RIO DE JANEIRO-RJ
Curtiu: 341 vezes
Mens.Curtidas: 258 vezes

Harbour 3.4 Clang compilador padrão

Mensagempor RobertoLinux » 03 Out 2017 10:50

Olá.

Em termos de capacidades, no link abaixo há um comparativo bem detalhado.

https://www.phoronix.com/scan.php?page= ... lers&num=1

Felicidades.
Entusiasta
Avatar de usuário

RobertoLinux
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 110
Data de registro: 14 Abr 2014 18:32
Cidade/Estado: Fortaleza/Ce
Curtiu: 7 vezes
Mens.Curtidas: 6 vezes

Harbour 3.4 Clang compilador padrão

Mensagempor asimoes » 03 Out 2017 12:12

Vamos acompanhar a evolução disso, porque tem muita biblioteca para manter compatibilidade (hwgui, minigui, etc)
â–ºHarbour 3.x | Minigui xx-x | HwGuiâ—„
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar de usuário

asimoes
Colaborador

Colaborador
 
Mensagens: 4919
Data de registro: 26 Abr 2007 16:48
Cidade/Estado: RIO DE JANEIRO-RJ
Curtiu: 341 vezes
Mens.Curtidas: 258 vezes

Harbour 3.4 Clang compilador padrão

Mensagempor JoséQuintas » 07 Out 2017 20:56

Seja o que for... foi ou começou a ir....

2017-10-07 15:56 UTC Viktor Szakats (vszakats users.noreply.github.com)
* README.md
* clang is now the primary compiler on Windows and darwin
(as far as this fork is concerned)
* recommend at least 6.x version of mingw - it's a free upgrade.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18013
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1206 vezes

Harbour 3.4 Clang compilador padrão

Mensagempor JoséQuintas » 07 Out 2017 21:35

Da wikipedia

Clang é um front-end de um compilador para as linguagens C, C++, Objective-C e Objective-C++ que utiliza o LLVM como back-end[1] desde a versão 2.6 do LLVM. Tem como objetivo oferecer um substituto open source ao GCC, o conjunto de compiladores da GNU. O desenvolvimento do Clang conta com o envolvimento de grandes empresas como o Google[2] e a Apple[3][4].
Seu código fonte está disponível sob uma licença da Universidade de Illinois[5] que combina as licenças MIT e BSD[4]. Implementa na totalidade a especificação C++11[6].


Partes que chamaram a atenção:
- é um front-end de um compilador para as linguagens C (?)
- substituto open source do GCC
- Participação de Google e Apple
- Totalidade da especificação do C++11
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18013
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1206 vezes

Harbour 3.4 Clang compilador padrão

Mensagempor JoséQuintas » 07 Out 2017 21:47

Mais um pouco:

Clang is an "LLVM native" C/C++/Objective-C compiler, which aims to deliver amazingly fast compiles (e.g. about 3x faster than GCC when compiling Objective-C code in a debug configuration),
The Clang Static Analyzer is a tool that automatically finds bugs in your code, and is a great example of the sort of tool that can be built using the Clang frontend as a library to parse C/C++ code


https://llvm.org/

Pelo que entendi, em termos que nós conhecemos, é como se CLang fosse um pré-compilador.
Seja como for, vai reduzir as diferenças do fonte em C entre compiladores, o que vai facilitar o desenvolvimento.

Não dá pra entender no que isso afeta em termos de compatibilidade, até onde precisa se estender essa troca, nas LIBs por exemplo.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18013
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1206 vezes

Harbour 3.4 Clang compilador padrão

Mensagempor asimoes » 08 Out 2017 10:25

Eu até baixei o LLVM, tentei compilar com gcc 7.10 gerou 7 libs e abortou, pelo que eu vi tem que usar o GCC 6.x, não testei, enfim vou aguardar mais informações pra ver o impacto disso.
â–ºHarbour 3.x | Minigui xx-x | HwGuiâ—„
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar de usuário

asimoes
Colaborador

Colaborador
 
Mensagens: 4919
Data de registro: 26 Abr 2007 16:48
Cidade/Estado: RIO DE JANEIRO-RJ
Curtiu: 341 vezes
Mens.Curtidas: 258 vezes

Harbour 3.4 Clang compilador padrão

Mensagempor JoséQuintas » 08 Out 2017 12:25

Também tentei e não consegui, mas não cheguei a trocar o compilador C.

Tem isto no readme, e parece que vai precisar de HB_WITH_SLANG ou algo assim.

clang1.png


Novamente: não sei no que isso pode afetar compatibilidade.
Mas como diz no changelog, é a primeira opção (primary), não que seja a única.
Por enquanto é o início de uso, pode ser que só daqui há algum tempo vejamos alguma diferença.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18013
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1206 vezes

Harbour 3.4 Clang compilador padrão

Mensagempor asimoes » 08 Out 2017 13:24

Quintas,

Eu não sei se o Viktor já tem uma versão pré-compilada com clang, usando a versão GCC do MSYS2 deu erro, usando a versão 7.10 também, se tem mais alguma variável para definir eu também não sei, por enquanto vou na compilação de costume SET HB_COMPILER= mingw
â–ºHarbour 3.x | Minigui xx-x | HwGuiâ—„
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar de usuário

asimoes
Colaborador

Colaborador
 
Mensagens: 4919
Data de registro: 26 Abr 2007 16:48
Cidade/Estado: RIO DE JANEIRO-RJ
Curtiu: 341 vezes
Mens.Curtidas: 258 vezes

Harbour 3.4 Clang compilador padrão

Mensagempor Claudio Soto » 08 Out 2017 17:37

El clang es un exelente compilador de c/c++ con un analizador de sintaxis muy bueno, mejor que gcc, yo lo he utilizado para programar en Android (ver por ejemplo el Charrua Server).

El LLVM es un "lenguaje"/herramienta para desarrollar compiladores
Saludos.
Dr. Claudio Soto
(Uruguay)
http://srvet.blogspot.com
Avatar de usuário

Claudio Soto
Colaborador

Colaborador
 
Mensagens: 555
Data de registro: 27 Ago 2012 12:31
Cidade/Estado: Uruguay
Curtiu: 35 vezes
Mens.Curtidas: 166 vezes

Harbour 3.4 Clang compilador padrão

Mensagempor JoséQuintas » 08 Out 2017 19:49

E pode dar uma idéia do que acontece com Harbour e LIBs?
Todos terão que trocar pra clang?
Ou para as LIBs não importa?
Ou como fica Harbour/xHarbour, se precisarão LIBs em versões diferentes por causa das rotinas em C?
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18013
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1206 vezes

Harbour 3.4 Clang compilador padrão

Mensagempor Claudio Soto » 08 Out 2017 21:50

La mayoría de los compiladores soporta el último estándar de C por lo tanto son compatibles, la diferencia es que algunos compiladores le agregan alguna cosa que no es estándar y ahí surgen los problemas, pero en general son cosas menores fácil de solucionar.
Saludos.
Dr. Claudio Soto
(Uruguay)
http://srvet.blogspot.com
Avatar de usuário

Claudio Soto
Colaborador

Colaborador
 
Mensagens: 555
Data de registro: 27 Ago 2012 12:31
Cidade/Estado: Uruguay
Curtiu: 35 vezes
Mens.Curtidas: 166 vezes

Próximo



Retornar para Harbour

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 8 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro