IDE RAD para desenvolvimento Harbour.
Moderador: Moderadores
IDE RAD para desenvolvimento Harbour.
Olá, tudo bem ? Então qual a linha de comando correta e completa para gerar um executável clicável no Linux, por favor ? Obrigado...
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
IDE RAD para desenvolvimento Harbour.
Para gerar o executável de uso, acrescente -fullstatic
Mas pra gerar o Harbour, é necessário criar variáveis de ambiente, senão fica dependente da "dll" do Harbour.
O default no Linux é diferente do default no Windows.
Mas pra gerar o Harbour, é necessário criar variáveis de ambiente, senão fica dependente da "dll" do Harbour.
O default no Linux é diferente do default no Windows.
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/
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/
IDE RAD para desenvolvimento Harbour.
Bom dia, tudo bem ?
Obrigado e desculpa a demora na resposta.
Vamos lá, eu fiz assim:
E, realmente gera um executável, mas não clicável, ou seja, quando clico nele ele não abre, mesmo colocando INKEY(0) para segurar a tela ele não abre é de jeito nenhum.
Como posso estar resolvendo isso ? Obrigado...
Obrigado e desculpa a demora na resposta.
Vamos lá, eu fiz assim:
Código: Selecionar todos
hbmk2 -fullstatic prog.prgComo posso estar resolvendo isso ? Obrigado...
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7928
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
IDE RAD para desenvolvimento Harbour.
Olá!
Por favor, seja mais objetivo com suas questões.
A melhor forma de perguntar em forum de programação é mostrando seu código. Cadê ele ?
O que é um executável não clicável ?
Quando usa o "./" ele executa ? Cadê os atributos dele ? etc...
Saudações,
Itamar M. Lins Jr.
Por favor, seja mais objetivo com suas questões.
A melhor forma de perguntar em forum de programação é mostrando seu código. Cadê ele ?
O que é um executável não clicável ?
Quando usa o "./" ele executa ? Cadê os atributos dele ? etc...
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
IDE RAD para desenvolvimento Harbour.
Opa, vamos lá:
Quando você clica em um PROGRAMA.EXE do windows ele abre, correto ?
Pois é, é isso que quero fazer no linux mas não estou conseguindo.
Quando você clica em um PROGRAMA.EXE do windows ele abre, correto ?
Pois é, é isso que quero fazer no linux mas não estou conseguindo.
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7928
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
IDE RAD para desenvolvimento Harbour.
Olá!
Sem ver o seu código fica complicado... Sem ver os atributos ai dele no LINUX fica complicado... Qual é a dificuldade de mostrar seu código ?
Vamos ficar correndo atrás das suas perguntas com adivinhações. Pode ser isso, pode ser aquilo...
PS. Se tem erro, ai não abre mesmo. Compila tudo "bunitinho" mas não abre. Pode gerar arquivo de log... Se for Hwgui, "inkey" no Linux, nem lembro se funciona... Fica nessa adivinhação ai.... Vc vem pelas adivinhações resolve, depois faz outra pergunta...
Saudações,
Itamar M. Lins Jr.
Não é assim. Depende do propósito dele, se é para abrir janela ou não.PROGRAMA.EXE do windows ele abre, correto ?
Sem ver o seu código fica complicado... Sem ver os atributos ai dele no LINUX fica complicado... Qual é a dificuldade de mostrar seu código ?
Vamos ficar correndo atrás das suas perguntas com adivinhações. Pode ser isso, pode ser aquilo...
PS. Se tem erro, ai não abre mesmo. Compila tudo "bunitinho" mas não abre. Pode gerar arquivo de log... Se for Hwgui, "inkey" no Linux, nem lembro se funciona... Fica nessa adivinhação ai.... Vc vem pelas adivinhações resolve, depois faz outra pergunta...
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
IDE RAD para desenvolvimento Harbour.
Façamos assim, esse tópico já estava encerrado mas outro camarada disse que não, aí lá vai eu dar continuidade.
Mas estou encerrando ele oficialmente agora...
Obrigado, vou pular para a próxima...
Mas estou encerrando ele oficialmente agora...
Obrigado, vou pular para a próxima...
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
IDE RAD para desenvolvimento Harbour.
O tópico de início era pra fazer o Harbour compilar, e não depender de nada.aioware escreveu:Façamos assim, esse tópico já estava encerrado mas outro camarada disse que não, aí lá vai eu dar continuidade.
Mas estou encerrando ele oficialmente agora...
Faltava a parte do fullstatic para dar por encerrado a INSTALAÇÃO.
Por outro lado, podemos considerar que ainda não teve um EXE funcionando pra confirmar se tudo ok.
O Itamar já disse que isso não é suficiente.aioware escreveu:E, realmente gera um executável, mas não clicável, ou seja, quando clico nele ele não abre, mesmo colocando INKEY(0) para segurar a tela ele não abre é de jeito nenhum.
Como posso estar resolvendo isso ? Obrigado...
Em todo caso, vi algo parecido recentemente.
Por acaso deu o nome de MAIN para o módulo principal?
Se não existir MAIN, o programa carrega mas não tem ponto de partida.
Mas fora isso tem LIB gráfica ou console, isso já dependeria de mais detalhes, e já seria algo mais específico, que foge do uso inicial.
O uso inicial seria compilar um exemplo que vém no Harbour e testar.
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/
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/
IDE RAD para desenvolvimento Harbour.
Olá, tentei com main mas não vai também:
Fiz assim:
Mas, com já havia dito, gera o executável mas não abre no duplo click.
Código: Selecionar todos
PROCEDURE MAIN
? "DEUS EH MAIS QUE FIEL, AMEM..."
INKEY(0)
RETURN
Código: Selecionar todos
hbmk2 -fullstatic main.prg
-
marcosgambeta
- Usuário Nível 3

- Mensagens: 332
- Registrado em: 16 Jun 2005 22:53
IDE RAD para desenvolvimento Harbour.
Pelo visto, você está gerando um executável, sem janela gráfica, que vai executar somente numa janela de terminal.aioware escreveu:Fiz assim:
Mas, com já havia dito, gera o executável mas não abre no duplo click.Código: Selecionar todos
hbmk2 -fullstatic main.prg
Tente assim:
Código: Selecionar todos
hbmk2 main.prg -fullstatic -gtxwcCaso sua instalação do Harbour não tenha a biblioteca gtxwc, precisará instalar o pacote libx11-dev (ou algo parecido) e recompilar o Harbour.
Atenciosamente,
Marcos Antonio Gambeta
Marcos Antonio Gambeta
IDE RAD para desenvolvimento Harbour.
Boa tarde Marcos, tudo bem ?
Desculpa a demora na resposta mas mesmo instalando libx11 deu esse erro abaixo:
Desculpa a demora na resposta mas mesmo instalando libx11 deu esse erro abaixo:
Código: Selecionar todos
$ hbmk2 rec.prg -fullstatic -gtxwc
Harbour 3.2.0dev (r2104281802)
Copyright (c) 1999-2021, https://harbour.github.io/
Compiling 'rec.prg'...
Lines 23, Functions/Procedures 1
Generating C source output to '/tmp/hbmk_6rujx4.dir/rec.c'... Done.
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libX11.a(CrGlCur.o): na função "open_library":
(.text+0x2e): aviso: Using 'dlopen' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libX11.a(xim_trans.o): na função "_XimXTransSocketINETConnect":
(.text+0xcfc): aviso: Using 'getaddrinfo' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libX11.a(OpenDis.o): na função "OutOfMemory":
(.text+0x3c4): referência não definida para "xcb_disconnect"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libX11.a(OpenDis.o): na função "XOpenDisplay":
(.text+0x81a): referência não definida para "xcb_get_setup"
/usr/bin/ld: (.text+0xdad): referência não definida para "xcb_get_maximum_request_length"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libX11.a(xcb_io.o): na função "require_socket.part.0":
(.text+0x6da): referência não definida para "xcb_take_socket"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libX11.a(xcb_io.o): na função "poll_for_event":
(.text+0x7fa): referência não definida para "xcb_poll_for_event"
/usr/bin/ld: (.text+0x839): referência não definida para "xcb_poll_for_queued_event"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libX11.a(xcb_io.o): na função "poll_for_response":
(.text+0x930): referência não definida para "xcb_poll_for_reply64"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libX11.a(xcb_io.o): na função "_XSend":
(.text+0xb9a): referência não definida para "xcb_writev"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libX11.a(xcb_io.o): na função "_XEventsQueued":
(.text+0xc8d): referência não definida para "xcb_connection_has_error"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libX11.a(xcb_io.o): na função "_XReadEvents":
(.text+0xdc6): referência não definida para "xcb_connection_has_error"
/usr/bin/ld: (.text+0xe94): referência não definida para "xcb_wait_for_event"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libX11.a(xcb_io.o): na função "_XAllocIDs":
(.text+0xfe7): referência não definida para "xcb_generate_id"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libX11.a(xcb_io.o): na função "_XReply":
(.text+0x1174): referência não definida para "xcb_wait_for_reply64"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/libgcc_eh.a(unwind-dw2-fde-dip.o): na função "__register_frame_info_bases.part.0":
(.text+0x1698): referência não definida para "pthread_mutex_lock"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/libgcc_eh.a(unwind-dw2-fde-dip.o): na função "__register_frame_info_table_bases":
(.text+0x17ac): referência não definida para "pthread_mutex_lock"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/libgcc_eh.a(unwind-dw2-fde-dip.o): na função "__deregister_frame_info_bases":
(.text+0x1872): referência não definida para "pthread_mutex_lock"
/usr/bin/ld: (.text+0x18ba): referência não definida para "pthread_mutex_unlock"
/usr/bin/ld: (.text+0x193d): referência não definida para "pthread_mutex_unlock"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/libgcc_eh.a(unwind-dw2-fde-dip.o): na função "_Unwind_Find_FDE":
(.text+0x1a74): referência não definida para "pthread_mutex_lock"
/usr/bin/ld: (.text+0x1b98): referência não definida para "pthread_mutex_unlock"
/usr/bin/ld: (.text+0x1bd9): referência não definida para "pthread_mutex_unlock"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/libgcc_eh.a(unwind-dw2-fde-dip.o): na função "__register_frame_info_bases.part.0":
(.text+0x16cb): referência não definida para "pthread_mutex_unlock"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/libgcc_eh.a(unwind-dw2-fde-dip.o): na função "__register_frame_info_table_bases":
(.text+0x17df): referência não definida para "pthread_mutex_unlock"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libX11.a(ClDisplay.o): na função "XCloseDisplay":
(.text+0xc5): referência não definida para "xcb_disconnect"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libX11.a(locking.o): na função "_XFreeMutex":
(.text+0x9c): referência não definida para "pthread_mutex_destroy"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libX11.a(locking.o): na função "_XFreeDisplayLock":
(.text+0xd9): referência não definida para "pthread_mutex_destroy"
/usr/bin/ld: (.text+0x100): referência não definida para "pthread_cond_destroy"
/usr/bin/ld: (.text+0x128): referência não definida para "pthread_cond_destroy"
/usr/bin/ld: (.text+0x14d): referência não definida para "pthread_cond_destroy"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libX11.a(locking.o): na função "_XInitDisplayLock":
(.text+0x2a1): referência não definida para "pthread_mutex_init"
/usr/bin/ld: (.text+0x2b3): referência não definida para "pthread_cond_init"
/usr/bin/ld: (.text+0x2c5): referência não definida para "pthread_cond_init"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libX11.a(locking.o): na função "_XCreateCVL":
(.text+0x44b): referência não definida para "pthread_cond_init"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libX11.a(locking.o): na função "_XLockDisplay":
(.text+0x503): referência não definida para "pthread_mutex_lock"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libX11.a(locking.o): na função "_XPopReader":
(.text+0x6dd): referência não definida para "pthread_cond_destroy"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libX11.a(locking.o): na função "_XInternalLockDisplay":
(.text+0x72a): referência não definida para "pthread_mutex_lock"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libX11.a(locking.o): na função "XInitThreads":
(.text+0x7db): referência não definida para "pthread_mutex_init"
/usr/bin/ld: (.text+0x7f7): referência não definida para "pthread_mutex_init"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libX11.a(locking.o): na função "_XCreateMutex":
(.text+0x21): referência não definida para "pthread_mutex_init"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libX11.a(locking.o): na função "_XConditionBroadcast":
(.text+0x485): referência não definida para "pthread_cond_broadcast"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libX11.a(locking.o): na função "_XConditionSignal":
(.text+0x495): referência não definida para "pthread_cond_signal"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libX11.a(locking.o): na função "_XConditionWait":
(.text+0x4a5): referência não definida para "pthread_cond_wait"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libX11.a(locking.o): na função "_XUnlockDisplay":
(.text+0x4bf): referência não definida para "pthread_mutex_unlock"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libX11.a(locking.o): na função "_XUnlockMutex":
(.text+0x4d8): referência não definida para "pthread_mutex_unlock"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libX11.a(locking.o): na função "_XLockMutex":
(.text+0x4e8): referência não definida para "pthread_mutex_lock"
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libX11.a(xcb_disp.o): na função "_XConnectXCB":
(.text+0x180): referência não definida para "xcb_parse_display"
/usr/bin/ld: (.text+0x1f8): referência não definida para "xcb_connect_to_display_with_auth_info"
/usr/bin/ld: (.text+0x218): referência não definida para "xcb_get_file_descriptor"
/usr/bin/ld: (.text+0x234): referência não definida para "xcb_generate_id"
/usr/bin/ld: (.text+0x293): referência não definida para "pthread_cond_init"
/usr/bin/ld: (.text+0x2a5): referência não definida para "pthread_cond_init"
/usr/bin/ld: (.text+0x2ad): referência não definida para "xcb_connection_has_error"
/usr/bin/ld: (.text+0x2c6): referência não definida para "xcb_connect"
collect2: error: ld returned 1 exit status
hbmk2: Erro: Executando linkeditor. 1
gcc '/tmp/hbmk_6rujx4.dir/rec.o' '/tmp/hbmk_6rujx4.dir/hbmk_f8si2p.o' -Wl,--start-group -lgtxwc -lhbextern -lhbdebug -lhbvm -lhbrtl -lhblang -lhbcpage -lgtcgi -lgtpca -lgtstd -lgttrm -lhbrdd -lhbuddall -lhbusrrdd -lrddntx -lrddcdx -lrddnsx -lrddfpt -lhbrdd -lhbhsx -lhbsix -lhbmacro -lhbcplr -lhbpp -lhbcommon -lm -ldl -lrt -lpcre -lz -lX11 -lgpm -Wl,--end-group -static -orec -L/usr/local/lib/harbour -L/usr/X11R6/lib
