Clipper On Line • Ver Tópico - Instalar Harbour no Linux e mais uma duvida...

Instalar Harbour no Linux e mais uma duvida...

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

Moderador: Moderadores

 

Instalar Harbour no Linux e mais uma duvida...

Mensagempor ricardosierban » 17 Out 2020 23:01

Olá senhores.

Tenho duas questões...

1 - Esta é a principal, como instalar o Harbour no Linux (estou usando o Mint, baseado no Ubuntu, que é baseado no Debian).

Baixei um pacote, o "harbour_3.0.0-1_i386_ubu_10.04-2", mas aparece um erro ao instalar (ou algo parecido com segurança), é a seguinte mensagem,
"Erro: A dependência não é contentável: libqt4-network (>=4:4.5.3) ".

2 - Harbour e XHarbour...

Já entendi que o xHarbour é um fork do Harbour e encontrei informações que são ferramentas que causam (ou causavam) conflitos entre os desenvolvedores, que o pessoal que defende o Harbour são os mais puristas, enfim...

A pergunta é, vale mais a pena o Harbour, xHarbour ou os dois ?

É isso e obrigado pela atenção.

Ricardo.
Avatar de usuário

ricardosierban
Usuário Nível 2

Usuário Nível 2
 
Mensagens: 57
Data de registro: 12 Out 2020 21:08
Cidade/Estado: São Bernardo do Campo/SP
Curtiu: 23 vezes
Mens.Curtidas: 12 vezes

Instalar Harbour no Linux e mais uma duvida...

Mensagempor Vlademiro » 18 Out 2020 00:16

Olá,

A primeira questão. Eu sempre compilo o Harbour dos fontes, é bem simples.

Instalo esses pacotes
sudo apt update
sudo apt install gcc
sudo apt install build-essential

Baixo os fontes de https://github.com/harbour/core
Vou para a pasta dos fontes
cd core

Executo make
Depois sudo make install (só precisa ser root nessa etapa)

E pronto.

Já dá para brincar com Harbour no linux
Eu sempre usei no Ubuntu mas deve funcionar nas outras distribuições.

Quanto a segunda questão: não uso o xHarbour a bastante tempo, por isso não sei dizer.
Avatar de usuário

Vlademiro
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 749
Data de registro: 11 Jul 2005 02:46
Curtiu: 22 vezes
Mens.Curtidas: 62 vezes

Instalar Harbour no Linux e mais uma duvida...

Mensagempor Vlademiro » 18 Out 2020 00:34

Só complementando...

O harbour compilado dos fontes, na sua forma mais simples, possui todos os drivers para acessar os DBFs e o acesso nativo ao SQLite. Se for compilado no windows ele libera o acesso ao ADO da Microsoft também, o que lhe permite acessar todos os bancos que possuem ODBC (ou seja, todos).

Caso você queira acessar algum banco no linux é preciso compilar o harbour com suporte a esse banco ou então baixar um pacote pré-compilado (tipo esse que vc baixou).

Isso vale para qualquer outro recurso da linguagem. Quando vc tentou instalar usando apt deu um erro porque o pacote pré-compilado tentou acessar as libs da biblioteca QT e como não achou no seu sistema ele acabou reportando um erro.

O arquivo README.md do Harbour (que vem com os fontes) tem um roteiro informando como instalar ele com suporte a outros bancos e outros recursos. No Linux eu só compilei o Harbour até agora com suporte ao MySQL e PostgreSQL. Mas tem acesso nativo para outros bancos, como o Oracle através do OCI.

Boa sorte, qualquer coisa pergunta.
Avatar de usuário

Vlademiro
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 749
Data de registro: 11 Jul 2005 02:46
Curtiu: 22 vezes
Mens.Curtidas: 62 vezes

Instalar Harbour no Linux e mais uma duvida...

Mensagempor JoséQuintas » 18 Out 2020 00:42

Vlademiro escreveu:Se for compilado no windows ele libera o acesso ao ADO da Microsoft também, o que lhe permite acessar todos os bancos que possuem ODBC (ou seja, todos).


No Linux tem ODBC também, e se não me engano, o Harbour pode usar.
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: 18152
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1215 vezes

Instalar Harbour no Linux e mais uma duvida...

Mensagempor Vlademiro » 18 Out 2020 02:31

É verdade, Quintas.
Avatar de usuário

Vlademiro
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 749
Data de registro: 11 Jul 2005 02:46
Curtiu: 22 vezes
Mens.Curtidas: 62 vezes

Instalar Harbour no Linux e mais uma duvida...

Mensagempor Itamar M. Lins Jr. » 18 Out 2020 17:14

Olá!
O xHarbour foi uma ideia equivocada.
Inventaram algumas coisas, e alguns desenvolvedores criaram o xHarbour, só o quê na verdade eles queriam era código "gratis" para vender.(resumindo)
Tem a xHarbour.com, com dois produtos(pagos) baseados no xHarbour.org e não tem manutenção do código desde a saída do Przemek o guru master do Harbour e do xHarbour.
Na verdade os usuários do xHarbour são (99%) usuários apenas do windows. Coisa que no Harbour é bem diferente.
Para entender melhor tecnicamente as LIMITAÇÕES do xHarbour leia:
This text describes most important differences between Harbour and xHarbour
with some references to Clipper and other compatible compilers like Xbase++,
CLIP, FlagShip.
Many thanks to Pritpal and Viktor for updating this text.
I hope that it will be updated in the future also by xHarbour developers,
It describes status of both compiler at the end of October 2009:
   Harbour 2.0.0 beta3 (revision 12788)
   xHarbour 1.2.1 (revision 6629)

Przemek,

(Przemyslaw Czerpak, druzus /at/ priv.onet.pl)

...

Este arquivo completo está em \doc\xhb-diff.txt
No Harbour temos o hbmk2 que faz tudo e bem feito, compilar os fontes.

Por exemplo: No xHarbour eles usam ".bats", por não desejarem ou não entendem ou querem estudar os códigos do Viktor(criador do hbmk2)
E ocultam, não divulgam as ferramentas da pasta contrib, pois querem vender suporte em cima de ferramentas similares pagas.
E outros desentendimentos com o Przemek que abandonou o xHarbour.

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

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 6951
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 312 vezes
Mens.Curtidas: 508 vezes

Instalar Harbour no Linux e mais uma duvida...

Mensagempor JoséQuintas » 19 Out 2020 13:46

ricardosierban escreveu:"harbour_3.0.0-1_i386_ubu_10.04-2"


Esquecemos o mais importante:
Tem o Harbour 3.2, e os forks Harbour 3.4 e XHarbour

O Harbour 3.0 foi a única versão onde criaram um pacote de instalação, mas é muito antigo.
Me parece que a senha de atualização do source-forge foi perdida, e por isso parou.

Endereço atual dos fontes:
https://github.com/harbour/core

Site oficial:
https://harbour.github.io/

Versão atual 3.2

A última vez que testei o 3.4 no Linux também compilou normal.
Acho que nenhum foi ajustado pra última versão do C do Ubuntu 20.04
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: 18152
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1215 vezes

Instalar Harbour no Linux e mais uma duvida...

Mensagempor NiltonGM » 16 Jun 2021 20:34

Vlademiro escreveu:foi a única versão


Vlademiro, Olha eu ai de novo, achei que não ia mais voltar ao Harbour, lá estou eu tentando compilar um simples Hello Word no Linux, segui sua dica, mas não consigo gerar um programa "executável" no Linux, executei os seguintes comandos:
harbour teste.prg

foi gerado um teste.c e nada mais. Se executo apenas o harbour e enter, mostra que o harbour está instalado na versão 3.2.0dev
ou rodando:
hbmk2 teste.prg
é gerado o binário teste sem extensão.
Ao rodar no terminal:
$ ./teste
./teste: error while loading shared libraries: libharbour.so.3.2: cannot open shared object file: No such file or directory


Dentro do teste.prg:
procedure main
    @ 10, 10 say "Hello Word"
    @ 12, 10 say "Tecle algo para sair"
    inkey(0)
    return
Nilton Medeiros
nilton@sistrom.com.br
Avatar de usuário

NiltonGM
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 393
Data de registro: 05 Jun 2014 23:47
Cidade/Estado: Caieiras/SP
Curtiu: 249 vezes
Mens.Curtidas: 25 vezes

Instalar Harbour no Linux e mais uma duvida...

Mensagempor Itamar M. Lins Jr. » 16 Jun 2021 21:37

Olá!

1) Qual é sua distribuição LINUX ?

2) Como foi que instalou o Harbour ?

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

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 6951
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 312 vezes
Mens.Curtidas: 508 vezes

Instalar Harbour no Linux e mais uma duvida...

Mensagempor JoséQuintas » 17 Jun 2021 07:54

Acrescente -fullstatic ou -static

Isso é pra não ter dependências.
No Linux o default é com dependências, e pelo jeito não tem 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: 18152
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1215 vezes

Instalar Harbour no Linux e mais uma duvida...

Mensagempor Itamar M. Lins Jr. » 17 Jun 2021 08:45

Olá!
No Linux o default é com dependências, e pelo jeito não tem aí.

Por isso eu perguntei.
Qual foi o procedimento adotado para instalar o Harbour e qual é a distribuição LINUX.
Porquê, o normal é não acontecer isso.
Ele fez a mesma pergunta em outro post.
Lá eu informei para colocar o parâmetro -fullstatic no hbmk2.
Mas não é para acontecer esse erro de dependência mesmo se não usar esse parâmetro, por padrão a compilação do Harbour no Linux não é static/fullstatic.

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

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 6951
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 312 vezes
Mens.Curtidas: 508 vezes

Instalar Harbour no Linux e mais uma duvida...

Mensagempor JoséQuintas » 17 Jun 2021 09:19

Itamar M. Lins Jr. escreveu:Mas não é para acontecer esse erro de dependência mesmo se não usar esse parâmetro, por padrão a compilação do Harbour no Linux não é static/fullstatic.


Depende de como a coisa funciona.

O Harbour pode ser gerado com dependência de DLLs, que é o default no Linux, ou fullstatic.
Neste momento estou falando da GERAÇÃO do Harbour.
E para os EXEs, mesma coisa.

NÃO tem DLLs.
Se o Harbour foi gerado fullstatic, ele NÃO precisa de DLL pra funcionar.
Já os programas compilados.... se precisarem de DLL, elas não existem, e por isso não funcionam.
Nesta situação, compilar com -fullstatic resolveria.

Outra situação, talvez, é o EXE compilado não encontrar as DLLs, e elas funcionarem para o Harbour porque estão no mesmo PATH.
Neste caso, o Harbour também não estaria no PATH, e nem o HBMK2.
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: 18152
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1215 vezes

Instalar Harbour no Linux e mais uma duvida...

Mensagempor JoséQuintas » 17 Jun 2021 09:26

Traduzindo isso:

Tem lá

\harbour\harbour.exe
\harbour\harbour32.dll (que pode existir ou não)

-fullstatic é pra não precisar dessa dll.

Se o Harbour precisar, pode estar lá na mesma pasta, mas o aplicativo pode não enxergá-la.
Se o Harbour não precisar, ainda resta o aplicativo precisar ou não.
-shared -> default no Linux, é precisando dll
-fullstatic -> default no Windows, é sem precisar dll

Então, está relacionado a como foi obtido/gerado o Harbour (pra DLL existir), e também como foi gerada a compilação.
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: 18152
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1215 vezes

Instalar Harbour no Linux e mais uma duvida...

Mensagempor Itamar M. Lins Jr. » 17 Jun 2021 09:54

Olá!
No Linux(Ubuntu/Debian e variantes), tem que funcionar das DUAS formas.
Sem mexer em configuração nenhuma.
Não é o LINUX do WINDOWS. Pq isso é gambiarra.
Quando ocorre falta de uma ".so" no Linux, é porquê não está no lugar correto a biblioteca ou esqueceu de copiar junto com o executável para outra máquina.
https://pt.wikipedia.org/wiki/Ldd_(Unix)

itamar@itamar-desktop:~/fontes/exemplos$ hbmk2 meu_exe.prg 
hbmk2: Processando script local: hbmk.hbm
Harbour 3.2.0dev (r2104142025)
Copyright (c) 1999-2021, https://harbour.github.io/
Compiling 'meu_exe.prg'...
Lines 19, Functions/Procedures 1
Generating C source output to '/tmp/hbmk_ljnpuz.dir/meu_exe.c'... Done.
itamar@itamar-desktop:~/fontes/exemplos$ ldd meu_exe
        linux-vdso.so.1 (0x00007ffe6067a000)
        libharbour.so.3.2 => /usr/local/lib/libharbour.so.3.2 (0x00007f71462c5000)
        libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f71460d9000)
        libX11.so.6 => /lib/x86_64-linux-gnu/libX11.so.6 (0x00007f7145f9b000)
        libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007f7145f25000)
        libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f7145f09000)
        libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f7145f02000)
        libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f7145ede000)
        libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f7145d90000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f71467ee000)
        libxcb.so.1 => /lib/x86_64-linux-gnu/libxcb.so.1 (0x00007f7145d66000)
        libXau.so.6 => /lib/x86_64-linux-gnu/libXau.so.6 (0x00007f7145d60000)
        libXdmcp.so.6 => /lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007f7145d58000)
        libbsd.so.0 => /lib/x86_64-linux-gnu/libbsd.so.0 (0x00007f7145d3e000)
        libmd.so.0 => /lib/x86_64-linux-gnu/libmd.so.0 (0x00007f7145d31000)

Lugar onde deve ficar o arquivo
libharbour.so.3.2 => /usr/local/lib/libharbour.so.3.2 (0x00007f71462c5000)
Na verdade é apenas um LINK para a pasta harbour no mesmo local.
drwxr-xr-x 2 root root  4096 mai 26 15:56 harbour
lrwxrwxrwx 1 root root    27 abr 15 03:47 libharbour.so -> harbour/libharbour.so.3.2.0
lrwxrwxrwx 1 root root    27 abr 15 03:47 libharbour.so.3.2 -> harbour/libharbour.so.3.2.0
lrwxrwxrwx 1 root root    27 abr 15 03:47 libharbour.so.3.2.0 -> harbour/libharbour.so.3.2.0
lrwxrwxrwx 1 root root    27 jan 21 21:21 libharbour.so.3.4 -> harbour/libharbour.so.3.4.0
lrwxrwxrwx 1 root root    27 jan 21 21:21 libharbour.so.3.4.0 -> harbour/libharbour.so.3.4.0


Dai se instalar de qualquer jeito, não vai funcionar. Pq isso quem faz é o próprio install do Harbour.
Outra coisa, Linux não é Windows. Não é um prompt dentro do windows. Cada distro tem suas particularidades. O interessado em usar Linux deve estudar o terreno antes, para não se perder nos labirintos de pastas e possibilidades.

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

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 6951
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 312 vezes
Mens.Curtidas: 508 vezes

Instalar Harbour no Linux e mais uma duvida...

Mensagempor Itamar M. Lins Jr. » 17 Jun 2021 10:09

Olá!
Repare que as perguntas, dificultam até as possíveis respostas.
Não diz como fez. Nem qual OS está usando.
Em que pasta está os fontes do Harbour ? Se compilou os fontes ou baixou um arquivo ".deb" de algum lugar ?...

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

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 6951
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 312 vezes
Mens.Curtidas: 508 vezes

Próximo



Retornar para Harbour

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 15 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