Página 1 de 3

Compilar letobackup no Linux

Enviado: 26 Dez 2024 16:32
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?

Compilar letobackup no Linux

Enviado: 26 Dez 2024 22:54
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

Compilar letobackup no Linux

Enviado: 30 Dez 2024 19:35
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

Compilar letobackup no Linux

Enviado: 31 Dez 2024 20:09
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

Compilar letobackup no Linux

Enviado: 03 Jan 2025 10:38
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.

Compilar letobackup no Linux

Enviado: 04 Jan 2025 01:58
por developer
Bem, não sei o que pode ser, eu uso no Linux Mint (Cinnamon).
O que usa?

Compilar letobackup no Linux

Enviado: 04 Jan 2025 22:32
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.

Compilar letobackup no Linux

Enviado: 05 Jan 2025 03:34
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.

Compilar letobackup no Linux

Enviado: 05 Jan 2025 09:43
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.

Compilar letobackup no Linux

Enviado: 05 Jan 2025 11:43
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.

Compilar letobackup no Linux

Enviado: 06 Jan 2025 13:22
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.

Compilar letobackup no Linux

Enviado: 06 Jan 2025 13:49
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.

Compilar letobackup no Linux

Enviado: 06 Jan 2025 14:00
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

Compilar letobackup no Linux

Enviado: 06 Jan 2025 14:04
por Itamar M. Lins Jr.
Olá!
sudo apt install libgpm-dev ou libgpmg1-dev -> seu mouse!!!

Saudações,
Itamar M. Lins Jr.

Compilar letobackup no Linux

Enviado: 06 Jan 2025 14:06
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.