Página 1 de 1

XHarbour não gera executável... Socorro!

Enviado: 27 Jun 2007 10:22
por miracle
Bom dia, amigos!

Li a respeito do XHarbour aqui no fórum e decidi tentar usá-lo. Instalei o XHarbour e o BCC55 no meu computador de acordo com um How to que baixei não me lembro de onde e tentei gerar um programa. É o clássico "Hello World!". Gerar o arquivo ".c" eu consegui. Agora o executável.... Olhem só:

C:\HBFontes>harbour /n /m hello
xHarbour Compiler build 0.99.70 (SimpLex)
Copyright 1999-2006, http://www.xharbour.org http://www.harbour-project.org/
Compiling 'hello.prg'...
Lines 11, Functions/Procedures 1
Generating C source output to 'hello.c'...
Done.

C:\HBFontes>bcc32 -OS -5 -tW hello.c rtl.lib lang.lib vm.lib macro.lib pp.lib co
mmon.lib gtwin.lib rdd.lib dbfcdx.lib dbfntx.lib
Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
hello.c:
Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland
Error: Unresolved external '_hb_sxDeCrypt' referenced from C:\HARBOUR\LIB\RDD.LI
B|dbf1
Error: Unresolved external '_hb_sxPtoD' referenced from C:\HARBOUR\LIB\RDD.LIB|d
bf1
Error: Unresolved external '_hb_sxDtoP' referenced from C:\HARBOUR\LIB\RDD.LIB|d
bf1
Error: Unresolved external '_hb_sxEnCrypt' referenced from C:\HARBOUR\LIB\RDD.LI
B|dbf1
Error: Unresolved external '_HB_FUN_DBFFPT' referenced from C:\HARBOUR\LIB\RDD.L
IB|rddsys

O que eu faço?
PS: Não instelei nenhuma lib. Deduzo que o XHarbour deve tê-la.

Enviado: 27 Jun 2007 10:28
por Maligno
Pelas mensagens, o linker não está conseguindo encontrar os objetos que precisam ser encadeados. Você precisa então, configurar suas variáveis de ambiente. Algo como, por exemplo: SET LIB=%LIB%;\XHARBOUR\LIB. Experimente pela linha de comando diretamente. Se der certo, matou a charada. :)

Enviado: 27 Jun 2007 12:47
por sygecom
Segue como manda no link abaixo, não tem erro....qualquer coisa poste aqui no forum...
http://www.caclipperwebsite.com/harbour.shtml

Se quiser ir mais adiante...pode utilizar o CVS...de uma olhda no link abaixo:
https://pctoledo.org/forum/viewtopic.php?t=6007

Abraços
Leonardo Machado

Enviado: 27 Jun 2007 12:51
por sygecom
Colega miracle delete o post que saiu repedido....
https://pctoledo.org/forum/viewtopic.php?t=6061

Abraços
Leonardo Machado

Enviado: 28 Jun 2007 14:27
por vagucs
Inclusa a lib HBSIX.LIB na linha de comando que deve funcionar.

Enviado: 01 Jul 2007 11:22
por Hasse
Bom dia a todos.

Como se faz para saber quais funções estão contidas numa LIB e numa DLL compiladas no xHarbour ?

Já tentei usar o LIB.EXE mas não funciona. Reporta erro.

Enviado: 01 Jul 2007 11:49
por Maligno
Para ver quais funções existem nas LIBs do XHarbour você pode usar o utilitário LIBRA. Funciona perfeitamente, listanto inclusive as dependências de cada objeto. Mas você terá apenas os nomes, claro. Só com a documentação para conhecer as interfaces das funções. Para DLL eu não tenho nada. Mas também não adianta muita coisa sem conhecer as interfaces. O ideal seria obter as documentações.

Enviado: 01 Jul 2007 17:26
por sygecom
Hasse escreveu:Como se faz para saber quais funções estão contidas numa LIB e numa DLL compiladas no xHarbour ?
ex:

Código: Selecionar todos

TLIB MINHALIB.LIB, LISTA.TXT
Obs: A TLIB vem junto no pacote do BCC.

Abraços
Leonardo Machado

Enviado: 01 Jul 2007 18:51
por Maligno
sygecom escreveu:Obs: A TLIB vem junto no pacote do BCC.
Entretanto, convém lembrar: além do LIBRA ser mais fácil de usar, ele também mostra as dependências do objeto.
Mas NENHUM utilitário mostrará qual é a interface das funções. Isso é só com a documentação.

Enviado: 02 Jul 2007 00:18
por sygecom
Maligno escreveu:
sygecom escreveu:Obs: A TLIB vem junto no pacote do BCC.
Entretanto, convém lembrar: além do LIBRA ser mais fácil de usar, ele também mostra as dependências do objeto.
Mas NENHUM utilitário mostrará qual é a interface das funções. Isso é só com a documentação.
Tens razão Maligno....mas pelo o que eu entendi o colega Hasse...só quer listar as funções de uma LIB ou DLL !!!

Abraços
Leonardo Machado

Enviado: 02 Jul 2007 00:45
por Maligno
sygecom escreveu:Tens razão Maligno....mas pelo o que eu entendi o colega Hasse...só quer listar as funções de uma LIB ou DLL !!!
Pode ser. Mas eu quis dizer que, na maior parte dos casos, a interface é necessária e essencial. Afinal de contas, sem ela nada pode ser feito.

Enviado: 02 Jul 2007 00:50
por sygecom
Maligno escreveu:
sygecom escreveu:Tens razão Maligno....mas pelo o que eu entendi o colega Hasse...só quer listar as funções de uma LIB ou DLL !!!
Pode ser. Mas eu quis dizer que, na maior parte dos casos, a interface é necessária e essencial. Afinal de contas, sem ela nada pode ser feito.
Entendi e concordo com vc.....mas geralmente quando vc pega ou acha alguma lib......mesmo que a mesma não acompanhe uma documentação....alguma coisa dela vc jah sabe....diria a ideia principal...pra que a mesma serve e como podera usar ...

Abraços
Leonardo Machado

Enviado: 02 Jul 2007 00:59
por Maligno
sygecom escreveu:Entendi e concordo com vc.....mas geralmente quando vc pega ou acha alguma lib......mesmo que a mesma não acompanhe uma documentação....alguma coisa dela vc jah sabe....diria a ideia principal...pra que a mesma serve e como podera usar ...
Ah, mas você está falando de casos raríssimos. Só com o nome do objeto e seus símbolos é muito difícil saber que serventia isso tem. Nas poucas vezes em que recorri a algo como o LIBRA, foi pra investigar uma dependência ou pra descobrir um nome de símbolo.
Mas é claro que é melhor ter esse recurso limitado do que não ter nenhum. :)

Enviado: 02 Jul 2007 10:31
por Hasse
Bom dia colegas.

Realmente Maligno e Sygecom nada melhor que ter a Documentação das LIB's e DLL's que se deseja usar.

Porém, todos sabemos e sentimos na carne (nos neurônios também) as dificuldades para se conseguir as ditas documentações.

De qualquer forma já é alguma coisa, um passo a mais para seguir em direção à busca das informações.

Obrigado pelas dicas, e também belo belo diálogo entre Mestres.

Enviado: 02 Jul 2007 15:28
por Stanis Luksys
Hasse escreveu:Bom dia a todos.

Como se faz para saber quais funções estão contidas numa LIB e numa DLL compiladas no xHarbour ?

Já tentei usar o LIB.EXE mas não funciona. Reporta erro.
No caso do xharbour em especial talvez a maneira mais fácil seria baixando os fontes, se for parte integrante do projeto open, e não de terceiros, é claro.

hehe

Falou!