Compilar letobackup no Linux

Fórum sobre Banco de Dados e RDDs para Clipper/[x]Harbour.

Moderador: Moderadores

Avatar do usuário
Linguagemclipper
Usuário Nível 3
Usuário Nível 3
Mensagens: 240
Registrado em: 16 Abr 2016 17:33
Localização: Maceió/AL
Contato:

Compilar letobackup no Linux

Mensagem por Linguagemclipper »

Parece estar faltando a lib gtxwc:
/usr/bin/ld: cannot find -lgtxwc: No such file or directory
Imagem

Tentei compilar essa lib, mas deu isso:
Imagem

Alguém já conseguiu compilar ele no Linux?
Usando xHarbour v1.2.3 Rev. 10264 + BCC 5.8, Elchs' LetoDBf, DBFCDX e SIBRA para imprimir relatórios.
Avatar do usuário
developer
Usuário Nível 3
Usuário Nível 3
Mensagens: 149
Registrado em: 09 Nov 2024 23:45
Localização: Londrina/PR

Compilar letobackup no Linux

Mensagem por developer »

Eu consegui sem problemas, mas como você está tentando usar é diferente para mim...

Eu uso assim: hbmk2 proj -gtxwc
(experienta fazer assim)

Nunca uso como você faz, com -lgtxwc
Avatar do usuário
Linguagemclipper
Usuário Nível 3
Usuário Nível 3
Mensagens: 240
Registrado em: 16 Abr 2016 17:33
Localização: Maceió/AL
Contato:

Compilar letobackup no Linux

Mensagem por Linguagemclipper »

hbmk2 letobackup.hbp
É assim que compilei, ele tem o hbp dele.
Lá nele já tem isso:

Código: Selecionar todos

-n
-w3
-q0
-es0
-mt
-strip
-compr=max

{!win}-static
{win}-fullstatic
{mingw64}-pic

{linux}-gtxwc
{win}-gtwvt

../../letodb.hbc

letobackup.prg
../../source/common/common.prg
Usando xHarbour v1.2.3 Rev. 10264 + BCC 5.8, Elchs' LetoDBf, DBFCDX e SIBRA para imprimir relatórios.
Avatar do usuário
developer
Usuário Nível 3
Usuário Nível 3
Mensagens: 149
Registrado em: 09 Nov 2024 23:45
Localização: Londrina/PR

Compilar letobackup no Linux

Mensagem por developer »

Parece que está certo.
O que me ocorreu é que talvez você gerou o Harbour no Linux sem antes ter instalado os prerequisitos.
Dá uma olhada aqui: https://github.com/harbour/core?tab=rea ... ux-generic

Código: Selecionar todos

sudo apt-get install libx11-dev
Avatar do usuário
Linguagemclipper
Usuário Nível 3
Usuário Nível 3
Mensagens: 240
Registrado em: 16 Abr 2016 17:33
Localização: Maceió/AL
Contato:

Compilar letobackup no Linux

Mensagem por Linguagemclipper »

Isso eu já tinha feito, mas não adiantou.
apt-get install libx11-dev libxft-dev
Instalei essas 2 inclusive.
Depois tem que recompilar o Harbour dos fontes novamente daí então apareceu a lib na pasta hb32/lib/linux/gcc, mas ainda não compilou.
Tive que apontar o path na linha de comando para funcionar.
Expliquei tudo aqui: https://linguagemclipper.com.br/blogs/t ... p-no-linux
O problema é que depois de compilar eu não estou conseguindo rodar ele... diz que não conecta com o letodbf e aborta.
Usando xHarbour v1.2.3 Rev. 10264 + BCC 5.8, Elchs' LetoDBf, DBFCDX e SIBRA para imprimir relatórios.
Avatar do usuário
developer
Usuário Nível 3
Usuário Nível 3
Mensagens: 149
Registrado em: 09 Nov 2024 23:45
Localização: Londrina/PR

Compilar letobackup no Linux

Mensagem por developer »

Bem, não sei o que pode ser, eu uso no Linux Mint (Cinnamon).
O que usa?
Avatar do usuário
Linguagemclipper
Usuário Nível 3
Usuário Nível 3
Mensagens: 240
Registrado em: 16 Abr 2016 17:33
Localização: Maceió/AL
Contato:

Compilar letobackup no Linux

Mensagem por Linguagemclipper »

Debian
Já conseguí compilar o bendito letobackup sem erro, mas ele não conecta.
Já usou o Harbour com Debug no Linux? Tentei usar e dá erro nos debuggers etc.
Usando xHarbour v1.2.3 Rev. 10264 + BCC 5.8, Elchs' LetoDBf, DBFCDX e SIBRA para imprimir relatórios.
Avatar do usuário
developer
Usuário Nível 3
Usuário Nível 3
Mensagens: 149
Registrado em: 09 Nov 2024 23:45
Localização: Londrina/PR

Compilar letobackup no Linux

Mensagem por developer »

Não, nunca usei, na realidade nunca usei o debug em lugar algum, nunca precisei (ou não percebi que precisei...)
Eu vou testando por método de redução do código dividido em partes até achar o problema, questão de costume mas talvez deveria dar uma olhada no debug para ver como funciona.
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Compilar letobackup no Linux

Mensagem por JoséQuintas »

biblioteca é uma merd., faz tudo errado.

O debug apenas usa a GT em uso.

Compilar com -gui já usa a gui default do harbour, não tem que definir qual é.
Tanto em Windows quanto em Linux.

Lógico, quando se fala em GUI no Linux, tem a ver também com a GUI instalada.
Não é igual Windows, onde o Windows faz tudo.
Não lembro se é GTK ou X11.

Não tenho mais o Windows Linux pra testar.
Em 2015 minha máquina deixou de ser compatível com máquina virtual.
Ao impedir máquina virtual, impede o Windows Linux.
Pois é.... isso de máquina nova começou no próprio Windows 10, antes do Windows 11.
A virtualização de hardware na minha máquina deixou de ser compatível.
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

Compilar letobackup no Linux

Mensagem por Itamar M. Lins Jr. »

Olá!
Captura de imagem_20250105_114141.png
Aqui foi de boa. Não faço absolutamente nada extra.

Código: Selecionar todos

hbmk2 letobackup.hbp -b
/dev/LetoDBf/utils/backup$ ./letobackup 
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
Linguagemclipper
Usuário Nível 3
Usuário Nível 3
Mensagens: 240
Registrado em: 16 Abr 2016 17:33
Localização: Maceió/AL
Contato:

Compilar letobackup no Linux

Mensagem por Linguagemclipper »

Imagem
O meu dá erro quando chamo compilado com o debug.
Compila normal, mas quando executo dá erro.
Consigo executar e rodar o letobackup no Windows, mas pretendo deixar no servidor Linux rodando como serviço para fazer backups diários às 23h.
O letobackup dá erro de conexão e não consigo rodar o debug.
Usando xHarbour v1.2.3 Rev. 10264 + BCC 5.8, Elchs' LetoDBf, DBFCDX e SIBRA para imprimir relatórios.
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

Compilar letobackup no Linux

Mensagem por Itamar M. Lins Jr. »

Olá!
Normal!
Vc não tá rodando ele no servidor X. A mensagem é bem clara!
Via PUTTY/SSH não vai mesmo.
Compile usando ncurses ou slang, que vai dar certo.
Servidor X ou X11... Para rodar o KDE/GNOME... Vc acessa usando TERMINAL não gráfico e quer chamar uma tela gráfica, é a mesma coisa de vc usar DOS e querer usar WINDOWS.
comente essa linha do letobackup.hbp:

Código: Selecionar todos

#{linux}-gtxwc
sudo apt install  libncurses-dev
hbmk2 letobackup.hbp -b -gtcrs
Captura de imagem_20250105_114141.png
Sabe o que é ruim ? ... Ficar adivinhando o que vc faz, só agora observando sua tela foi que entendi que vc acessa via SSH um servidor(sabe-se lá onde e se vc tem algum acesso via tela gráfica). Que vc não está acessando via tela (KDE/GNOME/MINT) gráfica.
Lembre-se que vc não está usando, esses Linux(Gráficos) que estamos falando Ubuntu/Mint/Gnome...

E o mais importante, os principais desenvolvedores(Harbour), usam LINUX como plataforma de desenvolvimento. Muito diferente do xHarbour quem ninguém(desenvolvedores principais) usam LINUX.
E por conta disso, é mais fácil da BO no Windows,...prompt do Windows, do quê no Linux.

!Off topic
A nova versão da Microsoft Windows 11 já tem até o comando SUDO do LINUX... E era apenas questão de tempo ele clonar o Linux... Vamos ver que irá sobreviver nesses novos tempos.

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
Linguagemclipper
Usuário Nível 3
Usuário Nível 3
Mensagens: 240
Registrado em: 16 Abr 2016 17:33
Localização: Maceió/AL
Contato:

Compilar letobackup no Linux

Mensagem por Linguagemclipper »

Desde o início postei a imagem da tela do putty...

Fiz o q vc recomendou, mas deu diversos erros:
hbmk2 -L/hb32/lib/linux/gcc letobackup.hbp
/usr/bin/ld: /hb32/lib/linux/gcc/libgtcrs.a(gtcrs.o): warning: relocation against `gpm_visiblepointer' in read-only section `.text'
/usr/bin/ld: /hb32/lib/linux/gcc/libgtcrs.a(gtcrs.o): in function `hb_gt_crs_mouse_Hide':
gtcrs.c:(.text+0x24a): undefined reference to `gpm_visiblepointer'
/usr/bin/ld: /hb32/lib/linux/gcc/libgtcrs.a(gtcrs.o): in function `hb_gt_crs_mouse_Show':
gtcrs.c:(.text+0x1b44): undefined reference to `gpm_zerobased'
/usr/bin/ld: gtcrs.c:(.text+0x1b4f): undefined reference to `gpm_visiblepointer'
/usr/bin/ld: gtcrs.c:(.text+0x1b61): undefined reference to `gpm_zerobased'
/usr/bin/ld: gtcrs.c:(.text+0x1b67): undefined reference to `_gpm_buf'
/usr/bin/ld: gtcrs.c:(.text+0x1b73): undefined reference to `_gpm_arg'
/usr/bin/ld: gtcrs.c:(.text+0x1b79): undefined reference to `gpm_consolefd'
/usr/bin/ld: gtcrs.c:(.text+0x1ba2): undefined reference to `_gpm_buf'
/usr/bin/ld: /hb32/lib/linux/gcc/libgtcrs.a(gtcrs.o): in function `hb_gt_crs_mouse_SetPos':
gtcrs.c:(.text+0x1d42): undefined reference to `gpm_visiblepointer'
/usr/bin/ld: gtcrs.c:(.text+0x1d4e): undefined reference to `gpm_zerobased'
/usr/bin/ld: gtcrs.c:(.text+0x1d5e): undefined reference to `gpm_zerobased'
/usr/bin/ld: gtcrs.c:(.text+0x1d6a): undefined reference to `_gpm_arg'
/usr/bin/ld: gtcrs.c:(.text+0x1d75): undefined reference to `_gpm_buf'
/usr/bin/ld: gtcrs.c:(.text+0x1d84): undefined reference to `gpm_consolefd'
/usr/bin/ld: gtcrs.c:(.text+0x1d93): undefined reference to `_gpm_buf'
/usr/bin/ld: /hb32/lib/linux/gcc/libgtcrs.a(gtcrs.o): in function `hb_gt_crs_Suspend':
gtcrs.c:(.text+0x2329): undefined reference to `gpm_visiblepointer'
/usr/bin/ld: gtcrs.c:(.text+0x2346): undefined reference to `_gpm_buf'
/usr/bin/ld: gtcrs.c:(.text+0x234f): undefined reference to `gpm_zerobased'
/usr/bin/ld: gtcrs.c:(.text+0x2357): undefined reference to `gpm_zerobased'
/usr/bin/ld: gtcrs.c:(.text+0x235e): undefined reference to `_gpm_buf'
/usr/bin/ld: gtcrs.c:(.text+0x236e): undefined reference to `_gpm_arg'
/usr/bin/ld: gtcrs.c:(.text+0x2374): undefined reference to `gpm_consolefd'
/usr/bin/ld: /hb32/lib/linux/gcc/libgtcrs.a(gtcrs.o): in function `hb_gt_crs_Refresh':
gtcrs.c:(.text+0x2471): undefined reference to `gpm_visiblepointer'
/usr/bin/ld: gtcrs.c:(.text+0x2487): undefined reference to `_gpm_buf'
/usr/bin/ld: gtcrs.c:(.text+0x248e): undefined reference to `gpm_zerobased'
/usr/bin/ld: gtcrs.c:(.text+0x2495): undefined reference to `_gpm_arg'
/usr/bin/ld: gtcrs.c:(.text+0x249b): undefined reference to `gpm_consolefd'
/usr/bin/ld: gtcrs.c:(.text+0x24c3): undefined reference to `_gpm_buf'
/usr/bin/ld: /hb32/lib/linux/gcc/libgtcrs.a(gtcrs.o): in function `hb_gt_crs_Resume':
gtcrs.c:(.text+0x2591): undefined reference to `gpm_visiblepointer'
/usr/bin/ld: gtcrs.c:(.text+0x25a3): undefined reference to `gpm_zerobased'
/usr/bin/ld: gtcrs.c:(.text+0x25bd): undefined reference to `gpm_zerobased'
/usr/bin/ld: gtcrs.c:(.text+0x25c3): undefined reference to `_gpm_buf'
/usr/bin/ld: gtcrs.c:(.text+0x25cf): undefined reference to `_gpm_arg'
/usr/bin/ld: gtcrs.c:(.text+0x25d5): undefined reference to `gpm_consolefd'
/usr/bin/ld: gtcrs.c:(.text+0x25ec): undefined reference to `_gpm_buf'
/usr/bin/ld: /hb32/lib/linux/gcc/libgtcrs.a(gtcrs.o): in function `gt_resize':
gtcrs.c:(.text+0x2791): undefined reference to `gpm_visiblepointer'
/usr/bin/ld: gtcrs.c:(.text+0x27a3): undefined reference to `gpm_zerobased'
/usr/bin/ld: gtcrs.c:(.text+0x27bd): undefined reference to `gpm_zerobased'
/usr/bin/ld: gtcrs.c:(.text+0x27c3): undefined reference to `_gpm_buf'
/usr/bin/ld: gtcrs.c:(.text+0x27cf): undefined reference to `_gpm_arg'
/usr/bin/ld: gtcrs.c:(.text+0x27d5): undefined reference to `gpm_consolefd'
/usr/bin/ld: gtcrs.c:(.text+0x27ec): undefined reference to `_gpm_buf'
/usr/bin/ld: /hb32/lib/linux/gcc/libgtcrs.a(gtcrs.o): in function `gt_refresh':
gtcrs.c:(.text+0x3162): undefined reference to `gpm_visiblepointer'
/usr/bin/ld: gtcrs.c:(.text+0x3174): undefined reference to `gpm_zerobased'
/usr/bin/ld: gtcrs.c:(.text+0x318e): undefined reference to `gpm_zerobased'
/usr/bin/ld: gtcrs.c:(.text+0x3194): undefined reference to `_gpm_buf'
/usr/bin/ld: gtcrs.c:(.text+0x31a0): undefined reference to `_gpm_arg'
/usr/bin/ld: gtcrs.c:(.text+0x31a6): undefined reference to `gpm_consolefd'
/usr/bin/ld: gtcrs.c:(.text+0x31bd): undefined reference to `_gpm_buf'
/usr/bin/ld: /hb32/lib/linux/gcc/libgtcrs.a(gtcrs.o): in function `set_gpmevt':
gtcrs.c:(.text+0x33ef): undefined reference to `Gpm_GetEvent'
/usr/bin/ld: /hb32/lib/linux/gcc/libgtcrs.a(gtcrs.o): in function `hb_gt_crs_PreExt':
gtcrs.c:(.text+0x3961): undefined reference to `gpm_visiblepointer'
/usr/bin/ld: gtcrs.c:(.text+0x3977): undefined reference to `gpm_zerobased'
/usr/bin/ld: gtcrs.c:(.text+0x3991): undefined reference to `gpm_zerobased'
/usr/bin/ld: gtcrs.c:(.text+0x3997): undefined reference to `_gpm_buf'
/usr/bin/ld: gtcrs.c:(.text+0x39a3): undefined reference to `_gpm_arg'
/usr/bin/ld: gtcrs.c:(.text+0x39a9): undefined reference to `gpm_consolefd'
/usr/bin/ld: gtcrs.c:(.text+0x39c0): undefined reference to `_gpm_buf'
/usr/bin/ld: /hb32/lib/linux/gcc/libgtcrs.a(gtcrs.o): in function `destroy_ioBase':
gtcrs.c:(.text+0x3daa): undefined reference to `gpm_fd'
/usr/bin/ld: gtcrs.c:(.text+0x3de6): undefined reference to `Gpm_Close'
/usr/bin/ld: gtcrs.c:(.text+0x3f58): undefined reference to `Gpm_Close'
/usr/bin/ld: /hb32/lib/linux/gcc/libgtcrs.a(gtcrs.o): in function `hb_gt_crs_Init':
gtcrs.c:(.text+0x7df2): undefined reference to `gpm_zerobased'
/usr/bin/ld: gtcrs.c:(.text+0x7dfc): undefined reference to `gpm_visiblepointer'
/usr/bin/ld: gtcrs.c:(.text+0x7e0d): undefined reference to `Gpm_Open'
/usr/bin/ld: gtcrs.c:(.text+0x7e1b): undefined reference to `gpm_fd'
/usr/bin/ld: gtcrs.c:(.text+0x7e3f): undefined reference to `gpm_fd'
/usr/bin/ld: gtcrs.c:(.text+0x7ea1): undefined reference to `gpm_fd'
/usr/bin/ld: gtcrs.c:(.text+0x7eba): undefined reference to `gpm_fd'
/usr/bin/ld: gtcrs.c:(.text+0x7eca): undefined reference to `gpm_fd'
/usr/bin/ld: /hb32/lib/linux/gcc/libgtcrs.a(gtcrs.o):gtcrs.c:(.text+0x7ee7): more undefined references to `gpm_fd' follow
/usr/bin/ld: warning: creating DT_TEXTREL in a PIE
collect2: error: ld returned 1 exit status
hbmk2[letobackup]: Error: Running linker. 1
gcc '/tmp/hbmk_2sagt3.dir/letobackup.o' '/tmp/hbmk_2sagt3.dir/common.o' '/tmp/hbmk_2sagt3.dir/hbmk_fyob3m.o' -Wl,--start-group -lgtcrs -lrddleto -lhbextern -lhbdebug -lhbvmmt -lhbrtl -lhblang -lhbcpage -lgtcgi -lgtpca -lgtstd -lgttrm -lhbrdd -lhbuddall -lhbusrrdd -lrddntx -lrddcdx -lrddnsx -lrddfpt -lhbrdd -lhbhsx -lhbsix -lhbmacro -lhbcplr -lhbpp -lhbcommon -lm -lpthread -ldl -lrt -lncurses -lhbpcre -lhbzlib -Wl,--end-group -oletobackup -L/usr/local/lib/harbour -L/hb32/lib/linux/gcc -L../../lib
root@debian:/letodb/utils/backup#
Meu .hbp:
-n
-w3
-q0
-es0
-mt
#-strip

{!win}-static
{win}-fullstatic
{mingw64}-pic

#{linux}-gtxwc
{linux}-gtcrs
{win}-gtwvt

../../letodb.hbc

letobackup.prg
../../source/common/common.prg
Usando xHarbour v1.2.3 Rev. 10264 + BCC 5.8, Elchs' LetoDBf, DBFCDX e SIBRA para imprimir relatórios.
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

Compilar letobackup no Linux

Mensagem por Itamar M. Lins Jr. »

Olá!
sudo apt install libgpm-dev ou libgpmg1-dev -> seu mouse!!!

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
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

Compilar letobackup no Linux

Mensagem por Itamar M. Lins Jr. »

Olá!
Desde o início postei a imagem da tela do putty...
Mas é isso... a tela não diz eu que adivinhei(lembrei) do que se trata.

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