Instalación

Esta guía te acompaña paso a paso en la instalación de FiveWin for Harbour (FWH) y la verificación de que tu entorno de desarrollo está listo para compilar aplicaciones Windows.

Requisitos del Sistema

Componente Mínimo Recomendado
Sistema Operativo Windows 7 SP1 Windows 10 / 11
Compilador Harbour Harbour 3.2.0 Harbour 3.2.0 (última versión nightly)
xHarbour (alternativa) xHarbour 1.2.3 xHarbour 1.3+ (última compilación)
Compilador C Cualquiera: BCC 5.5+, MSVC 2017+ o MinGW GCC 8+ MSVC 2022 (64 bits)
Espacio en Disco 200 MB 500 MB (con ejemplos y documentación)
RAM 2 GB 4 GB+

Flujo de Instalación

flowchart LR A["Download FWH
from fivetech.com"] --> B["Run Installer
or Unzip"] B --> C["Set Environment
Variables"] C --> D["Install Harbour
Compiler"] D --> E["Install C Compiler
(BCC/MSVC/GCC)"] E --> F["Run First
Test Build"] F --> G{"Build OK?"} G -- Yes --> H["Ready to
Develop!"] G -- No --> I["Check Paths
& Libraries"] I --> F

Descarga e Instalación

Paso 1: Obtener FiveWin

Descarga el paquete más reciente de FiveWin for Harbour desde fivetech.com. Recibirás un instalador autoextraíble o un archivo ZIP.

Paso 2: Instalar Harbour

Si aún no tienes Harbour instalado, descárgalo desde github.com/harbour/core o utiliza una distribución binaria precompilada. Una instalación típica de Harbour se ubica en C:\harbour.

// Verify Harbour is installed:
C:\> harbour --version
Harbour 3.2.0dev (r2104281802)

Paso 3: Instalar un Compilador C

Elige uno o más de los siguientes compiladores:

Compilador Fuente de Descarga Ruta Típica
Borland BCC 5.5 Herramientas gratuitas de Embarcadero C:\BCC55 o C:\Borland\BCC55
Microsoft Visual C++ Visual Studio Build Tools C:\Program Files\Microsoft Visual Studio\2022
MinGW GCC mingw-w64.org o MSYS2 C:\mingw64 o C:\msys64\mingw64

Paso 4: Configurar Variables de Entorno

Los scripts de compilación de FiveWin buscan ciertas variables de entorno. Configúralas en el sistema o en un archivo batch antes de compilar:

// Example environment setup (add to your PATH or setenv.bat):
SET FWH=C:\FWH
SET HARBOURDIR=C:\harbour
SET BCCDIR=C:\BCC55
SET PATH=%BCCDIR%\BIN;%HARBOURDIR%\BIN;%PATH%

Estructura de Directorios

Después de la instalación, el directorio de FWH contiene estas carpetas:

graph TD ROOT["C:\FWH (root)"] ROOT --> LIB["lib/
Pre-built .lib files
for all compilers"] ROOT --> INC["include/
Header files (.ch)
FiveWin.ch, etc."] ROOT --> SRC["source/
FWH source code
classes/ function/"] ROOT --> SAM["samples/
Example programs
organized by topic"] ROOT --> MAK["makes/
Build scripts for
each compiler"] ROOT --> DOC["docs/
Documentation
HTML reference"] LIB --> L1["FiveH32.lib"] LIB --> L2["FiveH64.lib"] LIB --> L3["FiveHM32.lib"] LIB --> L4["FiveHG32.lib"] SRC --> SC["source/classes/
TWindow.prg, TDialog.prg..."] SRC --> SF["source/function/
Utility functions"] SRC --> SW["source/winapi/
Win32 API wrappers (C)"] MAK --> M1["makes/hb_bcc32/"] MAK --> M2["makes/hb_msvc64/"] MAK --> M3["makes/hb_gcc64/"]

La Carpeta lib/

Esta carpeta contiene las bibliotecas estáticas precompiladas de FiveWin. Cada variante de compilador tiene su propio archivo .lib:

Archivo Compilador Arquitectura
FiveH32.libBCC 5.x (Borland)32-bit
FiveHM32.libMSVC32-bit
FiveH64.libMSVC64-bit
FiveHG32.libMinGW GCC32-bit
FiveHG64.libMinGW GCC64-bit

La Carpeta include/

Los archivos de cabecera proporcionan definiciones de comandos y constantes. El archivo include más importante es FiveWin.ch, que se incluye al inicio de todo programa FWH:

#include "FiveWin.ch"

Otras cabeceras de uso frecuente:

La Carpeta samples/

Decenas de programas de ejemplo listos para compilar, organizados por tema. Cada carpeta de ejemplo contiene típicamente un archivo .prg y un script de compilación (b32.bat o b32.bc):

samples/
  +-- ai/            // OpenAI, ChatGPT integration
  +-- misc/          // General-purpose examples
  +-- ui/
  |   +-- xbrowse/   // TXBrowse grid examples
  +-- manus/         // Automation examples

Primera Prueba de Compilación

La forma más rápida de verificar tu instalación es compilar uno de los programas de ejemplo incluidos usando el script de compilación proporcionado. Navega a la carpeta makes de tu compilador y ejecuta:

// For BCC32 (Borland):
cd C:\FWH\makes\hb_bcc32
go.bat ..\samples\hello.prg

// For MSVC 64-bit:
cd C:\FWH\makes\hb_msvc64
go.bat ..\samples\hello.prg

// For GCC 64-bit:
cd C:\FWH\makes\hb_gcc64
go.bat ..\samples\hello.prg

Si la compilación tiene éxito, verás hello.exe en la carpeta de salida. Ejecútalo y debería aparecer una ventana de FiveWin. Si la compilación falla, verifica:

Uso de build_new.bat

FiveWin incluye un script de compilación universal build_new.bat que soporta todas las variantes de compilador desde un solo comando. Consulta la página de Sistema de Construcción para todos los detalles.

// Quick test with BCC32:
build_new.bat hello.prg hb32

// Quick test with MSVC 64-bit:
build_new.bat hello.prg hm64

Lista de Verificación

Después de la instalación, verifica lo siguiente:

Verificación Comando / Acción Resultado Esperado
Harbour está en el PATH harbour --version Muestra la versión 3.2.0+
El compilador C está en el PATH bcc32 --version o cl /? Muestra información del compilador
Variable de entorno FWH configurada echo %FWH% Muestra el directorio raíz de FWH
El archivo de librería existe Verificar %FWH%\lib\ Contiene FiveH32.lib (o la variante correspondiente)
El ejemplo compila Compilar hello.prg Produce hello.exe, se ejecuta correctamente

Solución de Problemas

Compilador No Encontrado

Si obtienes errores de "command not found", asegúrate de que el directorio bin\ del compilador esté en el PATH del sistema. Para MSVC, puede ser necesario ejecutar desde un "Developer Command Prompt" o llamar primero a vcvarsall.bat.

Símbolos Externos No Resueltos

Esto generalmente significa que el enlazador no puede encontrar una librería requerida. Asegúrate de usar la librería correcta de FiveWin para tu compilador (por ejemplo, no uses FiveH32.lib con MSVC — usa FiveHM32.lib en su lugar).

Archivo de Cabecera No Encontrado

Agrega la carpeta include\ de FiveWin a la ruta de includes de Harbour:

harbour myapp.prg -i%FWH%\include -i%HARBOURDIR%\include -n -w

Próximos Pasos