Página 1 de 1

Compilar o mesmo projeto com Harbour e xHarbour

Enviado: 04 Jun 2025 16:50
por marco.prodata
Caros,

É possível compilar o mesmo projeto com Harbour e xHarbour separando as diferenças por um IFDEF ou algo do tipo?
Compilar com o xBuilder do antigo xHarbour comercial e o hbmk2.

Compilar o mesmo projeto com Harbour e xHarbour

Enviado: 04 Jun 2025 17:39
por JoséQuintas
Dá pra usar mesmo projeto, e compilar com hbmk2 nos dois.
No projeto. {xhb} indica xharbour.
Na prática, você mesmo vai criar o seu caminho, conforme seus fontes.

Compilar o mesmo projeto com Harbour e xHarbour

Enviado: 04 Jun 2025 18:10
por marco.prodata
O problema é que a versão do xHarbour que uso é uma versão comercial bem antiga, de 2006, com o xBuild, então acredito que o hbmk2 não deva conseguir compilar ele, usando as libs antigas do xHarbour.

Compilar o mesmo projeto com Harbour e xHarbour

Enviado: 04 Jun 2025 23:52
por JoséQuintas
hbmk2 converte projeto do xbuild pra usar no hbmk2.

Detalhe sobre hbmk2:
- Precisa estar na pasta bin do harbour/xharbour
- Pra compilar xharbour precisa -xhb, senão vai ser usado o harbour embutido
- Talvez precise SET HB_INSTALL_PREFIX=c:\(x)harbour

Tanto faz se usar bcc ou outro em cada um, dá pra setar isso também.

É só o trabalho inicial de configuração, pra depois ficar mais fácil.

Compilar o mesmo projeto com Harbour e xHarbour

Enviado: 05 Jun 2025 12:53
por Kapiaba
Eu faço assim e funciona tanto com HARBOUR bem como com XHARBOUR normal(Não comercial)

xHarbours downloads normal e commercial:

https://forums.fivetechsupport.com/view ... 92#p278492

Código: Selecionar todos

EXTERNAL HB_LANG_PT, HB_CODEPAGE_PTISO, HB_CODEPAGE_PT850

#ifNdef __XHARBOUR__     // somente para HARBOUR, XHARBOUR nao tem isso ainda.
   REQUEST HB_CODEPAGE_UTF8
   REQUEST HB_CODEPAGE_UTF8EX
#endif

FUNCTION Main()

Código: Selecionar todos

   #ifdef __XHARBOUR__  // PERFEITO COM XHARBOUR( I Like )

      HB_LANGSELECT( 'PT' )     // Default language is now Portuguese
      HB_SETCODEPAGE( "PT850" ) // ASSIM NAO FUNCIONA ACENTUACAO 
      HB_CDPSELECT( "PTISO" )   // ASSIM FUNCIONA COM FWH1905
      HB_SETCODEPAGE( "UTF8" )  // 15/03/2025 - Joao

   #Else // HARBOUR E ASSIM:

      HB_LANGSELECT( 'PT' )
      HB_SETCODEPAGE( "UTF8" )
      HB_CDPSELECT( "UTF8EX" )
      HB_SETCODEPAGE( "PT850" )
      HB_CDPSELECT( "PTISO" )

   #Endif


RETURN NIL
Regards, saludos.

Compilar o mesmo projeto com Harbour e xHarbour

Enviado: 05 Jun 2025 13:25
por marco.prodata
Kapiaba escreveu:Eu faço assim e funciona tanto com HARBOUR bem como com XHARBOUR normal(Não comercial)

xHarbours downloads normal e commercial:

https://forums.fivetechsupport.com/view ... 92#p278492

Código: Selecionar todos

EXTERNAL HB_LANG_PT, HB_CODEPAGE_PTISO, HB_CODEPAGE_PT850

#ifNdef __XHARBOUR__     // somente para HARBOUR, XHARBOUR nao tem isso ainda.
   REQUEST HB_CODEPAGE_UTF8
   REQUEST HB_CODEPAGE_UTF8EX
#endif

FUNCTION Main()

Código: Selecionar todos

   #ifdef __XHARBOUR__  // PERFEITO COM XHARBOUR( I Like )

      HB_LANGSELECT( 'PT' )     // Default language is now Portuguese
      HB_SETCODEPAGE( "PT850" ) // ASSIM NAO FUNCIONA ACENTUACAO 
      HB_CDPSELECT( "PTISO" )   // ASSIM FUNCIONA COM FWH1905
      HB_SETCODEPAGE( "UTF8" )  // 15/03/2025 - Joao

   #Else // HARBOUR E ASSIM:

      HB_LANGSELECT( 'PT' )
      HB_SETCODEPAGE( "UTF8" )
      HB_CDPSELECT( "UTF8EX" )
      HB_SETCODEPAGE( "PT850" )
      HB_CDPSELECT( "PTISO" )

   #Endif


RETURN NIL
Regards, saludos.
Ótimo, era exatamente isso que estava procurando, muito obrigado.