Bueno, seguimos con el proceso.
Requerimientos:
Descargar MYSQL SERVER
Descargar constribución TMYSQL
Bueno, también el xHarbour y el Borland.
Ya descargadas las herramientas, pues pasamos al mero, mero, meoyo del asunto.
Ya instalado el server mysql, localizar la carpeta de los include's, donde se encuentran los headers necesarios para compilar la tmysql.
Supongamos que tenemos instalado las herramientas en:
Servidor mysql:
y:\mysql
xHarbour:
y:\xharbour
Borland C
y:\bcc55
ya localizada la carpeta, procederemos a modificar el bat de compilación. Antes listo el contenido de la carpeta mysql de las contribuciones.
Descargar imagen
El contenido del archivo BAT es el siguiente:
@echo off
rem
rem $Id: make_b32.bat,v 1.2 2006/09/30 17:47:20 areainformatica Exp $
rem
if "%1" == "clean" goto CLEAN
if "%1" == "CLEAN" goto CLEAN
:BUILD
make -fmakefile.bc %1 %2 %3 > make_b32.log
if errorlevel 1 goto BUILD_ERR
:BUILD_OK
copy ..\..\lib\b32\mysql.lib ..\..\lib\*.* > nul
goto EXIT
:BUILD_ERR
notepad make_b32.log
goto EXIT
:CLEAN
if exist ..\..\lib\b32\mysql.lib del ..\..\lib\b32\mysql.lib
if exist ..\..\lib\b32\mysql.bak del ..\..\lib\b32\mysql.bak
if exist ..\..\obj\b32\mysql.obj del ..\..\obj\b32\mysql.obj
if exist ..\..\obj\b32\tsqlbrw.c del ..\..\obj\b32\tsqlbrw.c
if exist ..\..\obj\b32\tmysql.c del ..\..\obj\b32\tmysql.c
if exist ..\..\obj\b32\tsqlbrw.obj del ..\..\obj\b32\tsqlbrw.obj
if exist ..\..\obj\b32\tmysql.obj del ..\..\obj\b32\tmysql.obj
if exist ..\..\obj\b32\mysqlrdd.obj del ..\..\obj\b32\mysqlrdd.obj
if exist ..\..\obj\b32\mysqlrdd.c del ..\..\obj\b32\mysqlrdd.c
goto EXIT
:EXIT
Y debe de quedar:
@echo off
rem
rem $Id: make_b32.bat,v 1.2 2006/09/30 17:47:20 areainformatica Exp $
rem
if "%1" == "clean" goto CLEAN
if "%1" == "CLEAN" goto CLEAN
:BUILD
y:\bcc55\bin\make -fmakefile.bc %1 %2 %3 > make_b32.log
if errorlevel 1 goto BUILD_ERR
:BUILD_OK
copy y:\xharbour\lib\mysql.lib y:\xharbour\lib > nul
goto EXIT
:BUILD_ERR
notepad make_b32.log
goto EXIT
:EXIT
El contenido del archivo makefile.bc
#
# $Id: makefile.bc,v 1.2 2006/09/30 17:47:20 areainformatica Exp $
#
# makefile for Borland C/C++ 32 bits
# Building of mysql.lib - Harbour API to mySQL
INCLUDE_DIR = ..\..\include
BIN_DIR = ..\..\bin\b32
OBJ_DIR = ..\..\obj\b32
LIB_DIR = ..\..\lib\b32
$(LIB_DIR)\mysql.lib : \
$(OBJ_DIR)\mysqlrdd.obj \
$(OBJ_DIR)\tmysql.obj \
$(OBJ_DIR)\tsqlbrw.obj \
$(OBJ_DIR)\mysql.obj
$(OBJ_DIR)\mysqlrdd.c : mysqlrdd.prg
$(OBJ_DIR)\mysqlrdd.obj : $(OBJ_DIR)\mysqlrdd.c
$(OBJ_DIR)\tmysql.c : tmysql.prg
$(OBJ_DIR)\tmysql.obj : $(OBJ_DIR)\tmysql.c
$(OBJ_DIR)\tsqlbrw.c : tsqlbrw.prg
$(OBJ_DIR)\tsqlbrw.obj : $(OBJ_DIR)\tsqlbrw.c
$(OBJ_DIR)\mysql.obj : mysql.c
.c.obj:
bcc32 $(CLIBFLAGS) -c -O2 -I$(INCLUDE_DIR) -DHB_OS_WIN_32_USED -o$@ $<
tlib $(LIB_DIR)\mysql.lib -+$@,,
.prg.c:
$(BIN_DIR)\harbour.exe $< -q0 -w -es2 -gc0 -n -i$(INCLUDE_DIR) -o$@
Y debe de quedar de la siguiente manera:
#
# $Id: makefile.bc,v 1.2 2006/09/30 17:47:20 areainformatica Exp $
#
# makefile for Borland C/C++ 32 bits
# Building of mysql.lib - Harbour API to mySQL
INCLUDE_DIR = y:\xharbour\include;y:\mysql\include
BIN_DIR = y:\xharbour\bin
OBJ_DIR = .\obj
LIB_DIR = y:\xharbour\lib
$(LIB_DIR)\mysql.lib : \
$(OBJ_DIR)\mysqlrdd.obj \
$(OBJ_DIR)\tmysql.obj \
$(OBJ_DIR)\tsqlbrw.obj \
$(OBJ_DIR)\mysql.obj
$(OBJ_DIR)\mysqlrdd.c : mysqlrdd.prg
$(OBJ_DIR)\mysqlrdd.obj : $(OBJ_DIR)\mysqlrdd.c
$(OBJ_DIR)\tmysql.c : tmysql.prg
$(OBJ_DIR)\tmysql.obj : $(OBJ_DIR)\tmysql.c
$(OBJ_DIR)\tsqlbrw.c : tsqlbrw.prg
$(OBJ_DIR)\tsqlbrw.obj : $(OBJ_DIR)\tsqlbrw.c
$(OBJ_DIR)\mysql.obj : mysql.c
.c.obj:
y:\bcc55\bin\bcc32 $(CLIBFLAGS) -c -O2 -I$(INCLUDE_DIR) -DHB_OS_WIN_32_USED -o$@ $<
y:\bcc55\bin\tlib $(LIB_DIR)\mysql.lib -+$@,,
.prg.c:
$(BIN_DIR)\harbour.exe $< -q0 -w -es2 -gc0 -n -i$(INCLUDE_DIR) -o$@
Después de esas modificaciones, debemos de darle dos click al BAT y listo, debe de crear la lib mysql.lib en la carpeta LIB donde instalamos xHarbour.
Hasta ahí podremos decir que tenemos creada la librería.
Proseguimos....
Para utilizar la LIB primero que nada debemos de hacer una importación de la lib libmysql.dll lo cual se hace con lo siguiente:
y:\bcc55\bin\implib libmysql.lib y:\mysql\bin\libmysql.dll
la libmysql.dll hay que localizar y ver que la ruta que he colocado sea la correcta según la instalación que hayan hecho.
la librería resultante, tendrá que adicionarse como librerías de tercero al proyecto que estén haciendo.
Eso quiere decir que son dos LIB que estaríamos adicionando a nuestro proyecto.
1.- mysql.lib
2.- libmysql.lib
y el archivo libmysql.dll, lo debemos de copiar a la carpeta donde tengamos nuestro exe ya generado, esto sería para que no tengamos un error en la ejecución, pues mandaría el error de DLL no existe.
Espero que con esta explicación puedan crear la LIB y hacer sus respectivas pruebas.
Como siempre, espero sus comentarios y/o dudas
Saludos
William Morales
William soy un ignorante en la creacion de librerias y dlls, puedes explicarme como y para que se hace este paso, necesito usar la libreria mysql.lib pero no se donde descargarla o hacerla, puedes echarme una manita?
ResponderEliminarWilliam al intentar generar la libreria me genera un archivo en notepad con lo siguiente;
ResponderEliminarMAKE Version 5.2 Copyright (c) 1987, 2000 Borland
Error makefile.bc 30: Command syntax error
Error makefile.bc 31: Redefinition of target 'c:\xharbour\lib\mysql.lib'
Error makefile.bc 31: Command syntax error
Error makefile.bc 33: Command syntax error
*** 4 errors during make ***
Puedes ayudarme ?
Gracias
Exactamente eso mismo me pasa a mi, alguien nos puede ayudar
ResponderEliminar