FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour vscode hbmk2 vcvarsall
Posts: 694
Joined: Fri Oct 07, 2005 06:58 AM
vscode hbmk2 vcvarsall
Posted: Sun Aug 21, 2022 09:09 AM
Estiamos,

Estoy empezando a usar vscode.

Me gustaria saber como puedo crear el json para que genere el ejecutable con "vcvarsall.bat" y "hbmk2" con todos los prg que tenga el projecto.

Actualmente las pruebas las estoy realizando ejecutando manualmente un bat.
Code (fw): Select all Collapse
call "%ProgramFiles%\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat" x86
c:\harbour\bin\hbmk2 tutor04.hbp -comp=msvc
tutor04.exe


creando el archivo tutor04.hbp
Pero con esta opción tendría que ir añadiendo uno a uno los prg en el archivo.
Code (fw): Select all Collapse
-gui

-Ic:\fwh\include

tutor04.prg

-Lc:\fwh\lib

-lFiveH32
-lFiveHC32

-lgdiplus
-lole32
-lOleDlg
-lversion

xhb.hbc
hbct.hbc
hbwin.hbc
hbmzip.hbc
hbziparc.hbc
hbfoxpro.hbc

-ldflag=/NODEFAULTLIB:msvcrt

tutor04
Un saludo

Fernando González Diez

ALSIS Sistemas Informáticos
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: vscode hbmk2 vcvarsall
Posted: Sun Aug 21, 2022 09:13 AM

Estimado Fernando,

Estás usando alguna extensión de vscode para la gestión de proyectos ?

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 694
Joined: Fri Oct 07, 2005 06:58 AM
Re: vscode hbmk2 vcvarsall
Posted: Sun Aug 21, 2022 10:23 AM

Estimado Antonio,

He instalado las he ido viendo que en el foro se usan.

  • Git
  • Spanish Language Pack Para español
  • Harbour and xHarbour de Antonino Perricone
  • Vscode-Icons
  • Clipboard History
  • Project Manager
  • Task
  • CTags
Un saludo

Fernando González Diez

ALSIS Sistemas Informáticos
Posts: 309
Joined: Wed Mar 28, 2018 04:38 PM
Re: vscode hbmk2 vcvarsall
Posted: Sun Aug 21, 2022 05:53 PM

Hola.

Aquí se comentó algo al respecto.

viewtopic.php?f=6t=41837sid=2006ad77797a85764729906cef8f9a2f1

&&

--------

¿ Y porque no ?

¿ And why not ?
Posts: 694
Joined: Fri Oct 07, 2005 06:58 AM
Re: vscode hbmk2 vcvarsall
Posted: Tue Aug 23, 2022 08:16 AM

Hola,

De momento he construido el archivo .hbp para que llame a todos los prgs de una carpeta.
Sin embargo, esto implica que todas las veces se van a compilar todos los prgs.

Actualmente uso uestudio y sólo compila los prgs que han variado, ya que me facilita las pruebas del executable

Un saludo

Fernando González Diez

ALSIS Sistemas Informáticos
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: vscode hbmk2 vcvarsall
Posted: Tue Aug 23, 2022 09:50 AM

Estimado Fernando,

> Sin embargo, esto implica que todas las veces se van a compilar todos los prgs

Eso no debería ser asi, ya que el make debería comparar las fechas de los PRGs y el EXE resultante y no compilar los PRGs en los que no han habido cambios

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 694
Joined: Fri Oct 07, 2005 06:58 AM
Re: vscode hbmk2 vcvarsall
Posted: Tue Aug 23, 2022 10:23 AM

Hola Antonio,

¿Y quién se encarga de comprobarlo?, ¿Hbmk2?

Me imagino que haya que indicar una ruta donde guarde los .obj y/o los .c, y así los pueda usar.
En los ejemplos hbp que he encontrado en el foro, no indican una ruta para guardar estos archivos.
Y al compilar veo que hbmk2 los está generando en la carpeta temporal y luego lo borra.

Un saludo

Fernando González Diez

ALSIS Sistemas Informáticos
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: vscode hbmk2 vcvarsall
Posted: Tue Aug 23, 2022 10:25 AM

Si, debería hacerlo hbmk2

Si borra los archivos temporales, entonces debería comparar la fecha del EXE resultante con los ficheros PRGs

Tambien puedes probar la opción -inc de hbmk2 que si recuerdo bien hace una construcción incremental y asi debería guardar los archivos temporales

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 694
Joined: Fri Oct 07, 2005 06:58 AM
Re: vscode hbmk2 vcvarsall
Posted: Tue Aug 23, 2022 10:38 AM

Hola Antonio,

Trabajaré con ello y buscaré los parámetros que necesité.

Muchas gracias.

Un saludo

Fernando González Diez

ALSIS Sistemas Informáticos
Posts: 694
Joined: Fri Oct 07, 2005 06:58 AM
Re: vscode hbmk2 vcvarsall
Posted: Tue Aug 30, 2022 11:33 AM
Ya lo tengo totalmente operativo.

En vscode he generado el archivo tasks.json dentro de la carpeta .vscode de la carpeta con el código fuente
Code (fw): Select all Collapse
{
   "version": "2.0.0",
   "tasks": [
    {
        "label": "build",
        "type": "shell",
        "command": ".\\go32.bat",
        "problemMatcher": []
    }
]
}


He generado un bat go32.bat y tt.hbp en el raiz de la carpeta con el código fuente

go32.bat
Code (fw): Select all Collapse
call "%ProgramFiles%\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat" x86
c:\harbour\bin\hbmk2 tt.hbp -comp=msvc


tt.hbp
Code (fw): Select all Collapse
-gui

#Incremental, sólo compila los prgs modificados
-inc

#Generar el ejecutable en otra carpeta
-oD:\Tycwin2\Alges.exe

#Ruta para guardar los obj y c 
-workdir=D:\Obj\fiveVSCode\Alges\vRelease\

#RC
D:\five\Alges\rc\Alges.rc
D:\five\comun\rc\comun.rc
D:\five\comun\rc\manifest_new.rc
 
#PRG
# ------ MODULO PRINCIPAL -------
D:\Five\Alges\prg\*.prg

# ------ SOURCES -----------------
D:\Five\Comun\Incluir_New\*.prg

#INCLUDES
-Ic:\fwh\include
-ID:\five\include

#LIBRERIAS DE PROPIAS
-LD:\Obj\fiveVSCode\Lib
-lExtAlsis

#LIBRERIAS DE FIVEWIN
-Lc:\fwh\lib
-lFiveH32
-lFiveHC32

#LIBRECIAS VISUAL STUDIO
-lgdiplus
-lole32
-lOleDlg
-lversion

#LIBRERIAS DE HARBOUR
-lpng
-lgtgui
-lhbtipssl
-llibeay32
-lssleay32
-lminizip
-lace32

#HBC DE HARBOUR
xhb.hbc
hbct.hbc
hbwin.hbc
hbmzip.hbc
hbziparc.hbc
hbtip.hbc
hbssl.hbc
hbnf.hbc
rddads.hbc

-ldflag=/NODEFAULTLIB:MSVCRT
Un saludo

Fernando González Diez

ALSIS Sistemas Informáticos
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: vscode hbmk2 vcvarsall
Posted: Tue Aug 30, 2022 11:48 AM

Excelente Fernando!!!

Muy buen trabajo!

Muchas gracias por compartirlo :-)

un abrazo,

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 1387
Joined: Fri May 23, 2008 01:33 PM
Re: vscode hbmk2 vcvarsall
Posted: Tue Aug 30, 2022 06:44 PM
fgondi wrote:Ya lo tengo totalmente operativo.

En vscode he generado el archivo tasks.json dentro de la carpeta .vscode de la carpeta con el código fuente
Code (fw): Select all Collapse
{
   "version": "2.0.0",
   "tasks": [
    {
        "label": "build",
        "type": "shell",
        "command": ".\\go32.bat",
        "problemMatcher": []
    }
]
}


He generado un bat go32.bat y tt.hbp en el raiz de la carpeta con el código fuente

go32.bat
Code (fw): Select all Collapse
call "%ProgramFiles%\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat" x86
c:\harbour\bin\hbmk2 tt.hbp -comp=msvc


tt.hbp
Code (fw): Select all Collapse
-gui

#Incremental, sólo compila los prgs modificados
-inc

#Generar el ejecutable en otra carpeta
-oD:\Tycwin2\Alges.exe

#Ruta para guardar los obj y c 
-workdir=D:\Obj\fiveVSCode\Alges\vRelease\

#RC
D:\five\Alges\rc\Alges.rc
D:\five\comun\rc\comun.rc
D:\five\comun\rc\manifest_new.rc
 
#PRG
# ------ MODULO PRINCIPAL -------
D:\Five\Alges\prg\*.prg

# ------ SOURCES -----------------
D:\Five\Comun\Incluir_New\*.prg

#INCLUDES
-Ic:\fwh\include
-ID:\five\include

#LIBRERIAS DE PROPIAS
-LD:\Obj\fiveVSCode\Lib
-lExtAlsis

#LIBRERIAS DE FIVEWIN
-Lc:\fwh\lib
-lFiveH32
-lFiveHC32

#LIBRECIAS VISUAL STUDIO
-lgdiplus
-lole32
-lOleDlg
-lversion

#LIBRERIAS DE HARBOUR
-lpng
-lgtgui
-lhbtipssl
-llibeay32
-lssleay32
-lminizip
-lace32

#HBC DE HARBOUR
xhb.hbc
hbct.hbc
hbwin.hbc
hbmzip.hbc
hbziparc.hbc
hbtip.hbc
hbssl.hbc
hbnf.hbc
rddads.hbc

-ldflag=/NODEFAULTLIB:MSVCRT


Thank you for your sharing.

Can you be more specific for "Task" and "CTags" extensions? There are several extensions.
Regards,



Hakan ONEMLI



Harbour & MSVC 2022 & FWH 23.06
Posts: 694
Joined: Fri Oct 07, 2005 06:58 AM
Re: vscode hbmk2 vcvarsall
Posted: Wed Aug 31, 2022 08:11 AM

Task -> actboy168
ctags -> jaydenlin

Un saludo

Fernando González Diez

ALSIS Sistemas Informáticos
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: vscode hbmk2 vcvarsall
Posted: Wed Aug 31, 2022 03:09 PM

Estimado Fernando,

Podrias poner algunas capturas de pantalla, ó un gif animado, para ilustrar mejor lo que has hecho como lo usas ?

Mostrando la instalación de las extensiones, creación de un proyecto, etc

Te estaríamos muy agradecidos. Cuando tengas tiempo :-)

un abrazo

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 1387
Joined: Fri May 23, 2008 01:33 PM
Re: vscode hbmk2 vcvarsall
Posted: Thu Sep 01, 2022 07:13 AM
fgondi wrote:Task -> actboy168
ctags -> jaydenlin


Thank you Fernando.
Regards,



Hakan ONEMLI



Harbour & MSVC 2022 & FWH 23.06