Harbour Compiler no Lubuntu 20.04 ... exe não roda ...

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

Moderador: Moderadores

arcanjoebc
Usuário Nível 2
Usuário Nível 2
Mensagens: 63
Registrado em: 23 Dez 2015 23:58
Localização: Tramandaí/RS

Harbour Compiler no Lubuntu 20.04 ... exe não roda ...

Mensagem por arcanjoebc »

Amigos do forum, instalei o Lubuntu 20.04 em meu computador, e estou tendo dificuldades com os executáveis gerados pelo Harbour. Via ambiente gráfico, nas propriedades do arquivo "dito" executável, mostra que ele é um "x-sharedlib" em vez de um "x-executable", o que impossibilita sua execução pelo ambiente gráfico LXqt. Andei vendo na internet que tem que se usar o atributo "-no-pie" para que o Gcc faça a compilação correta ... mas como eu passo esse parâmetro pelo harbour? Já tentei várias instruções e nada!!! Aguardo suas respostas.
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

Harbour Compiler no Lubuntu 20.04 ... exe não roda ...

Mensagem por Itamar M. Lins Jr. »

Olá!
Use -fullstatic ou -static para linkar o harbour.so junto com seu aplicativo. Isso no arquivo .hbp ou quando compilar o harbour

Código: Selecionar todos

--with static      - link all binaries with static libs

Código: Selecionar todos

~$ hbmk2 meuarquivo.hbp -static
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Harbour Compiler no Lubuntu 20.04 ... exe não roda ...

Mensagem por JoséQuintas »

Código: Selecionar todos

HB_BUILD_CONTRIB_DYN=no
HB_BUILD_DYN=no
HB_BUILD_SHARED=no
HB_BUILD_STRIP=all
HB_COMPILER=mingw
HB_INSTALL_PREFIX=d:\harbour
e mais o -fullstatic quando compilar.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"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 do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Harbour Compiler no Lubuntu 20.04 ... exe não roda ...

Mensagem por JoséQuintas »

Se puder, caso eu tenha problemas e puder me ajudar:
Vou tentar isso no github, em ubuntu.

https://github.com/JoseQuintas/hwgui/actions

Nota: movi pra hwgui, porque só ela tem versão pra linux
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"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 do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

Harbour Compiler no Lubuntu 20.04 ... exe não roda ...

Mensagem por Itamar M. Lins Jr. »

Olá!
Consegui de novo compilar o Harbour 3.4 no GCC 10.2 no Linux.

Código: Selecionar todos

itamar@itamar-desktop:~/dev/hb34$ hbmk2 -build
Harbour 3.4.0dev (a5acfc5) (2020-12-19 19:58)
Copyright (c) 1999-2020, https://github.com/vszakats/hb/

Harbour Build Info
---------------------------
Version: Harbour 3.4.0dev (a5acfc5) (2020-12-19 19:58)
Compiler: GNU C 10.2 (64-bit)
Platform: Linux 5.8.0-40-generic x86_64
PCode version: 0.3
Commit info: 2020-12-19 19:58:55 +0000
Commit ID: a5acfc550aba09e711e55f206b098d506025c5a6
Build options:
---------------------------
itamar@itamar-desktop:~/dev/hb34$ 
Tem que editar na mão e fazer as correções em 4 arquivos com funções que não existem mais.

Código: Selecionar todos

    
Era:
  fResult  = stime( &tm ) == 0;
Mudei para:
  fResult  = clock_settime( CLOCK_REALTIME, &tm ) == 0;
Isso em 3 arquivos hbct e hbnf, e outro do, "fatal error: sys/sysctl.h: No such file or directory" esse arquivo não existe mais.

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Responder