Page 1 of 1

Compilando con 64 Bits

Posted: Thu Jan 21, 2010 8:47 am
by jnavas
Colegas,
Aqui les dejo un excelente trabajo que realizo Antonio Linares para lograr compilar con 64 bits,
Les dejo, buil64.bat

@ECHO OFF
CLS
ECHO ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
ECHO ³ FiveWin for Harbour 2.8 (64 bits) November 2008 Harbour development power ³Ü
ECHO ³ (c) FiveTech, 1993-2008 for Microsoft Windows 95/98/NT/2000/ME and XP ³Û
ECHO ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙÛ
ECHO ÿ ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß

if A%1 == A GOTO :SINTAX
if NOT EXIST %1.prg GOTO :NOEXIST

ECHO Compiling...

set hdir=c:\harbour64
set vcdir=c:\vc64
set include=%vcdir%\include;%hdir%\include
set lib=%vcdir%\lib;%hdir%\vc\lib

%hdir%\bin\harbour %1 /n /d__64__ /i..\include;%hdir%\include /w /p %2 %3 > clip.log
@type clip.log
IF ERRORLEVEL 1 PAUSE
IF ERRORLEVEL 1 GOTO EXIT

%vcdir%\bin\cl -TP -W3 -c /GA %1.c
:ENDCOMPILE

IF EXIST %1.rc %vcdir%\bin\rc -r -d__64__ %1

echo %1.obj > msvc.tmp

echo ..\lib\FiveH64.lib ..\lib\FiveHC64.lib >> msvc.tmp

echo %hdir%\lib\hbrtl.lib >> msvc.tmp
echo %hdir%\lib\hbvm.lib >> msvc.tmp
echo %hdir%\lib\gtgui.lib >> msvc.tmp
echo %hdir%\lib\hblang.lib >> msvc.tmp
echo %hdir%\lib\hbmacro.lib >> msvc.tmp
echo %hdir%\lib\hbrdd.lib >> msvc.tmp
echo %hdir%\lib\rddntx.lib >> msvc.tmp
echo %hdir%\lib\rddcdx.lib >> msvc.tmp
echo %hdir%\lib\rddfpt.lib >> msvc.tmp
rem echo %hdir%\lib\hbsix.lib >> msvc.tmp
echo %hdir%\lib\hbdebug.lib >> msvc.tmp
echo %hdir%\lib\hbcommon.lib >> msvc.tmp
echo %hdir%\lib\hbpp.lib >> msvc.tmp
echo %hdir%\lib\hbw32.lib >> msvc.tmp
echo %hdir%\lib\hbcpage.lib >> msvc.tmp
echo %hdir%\lib\hbsix.lib >> msvc.tmp

rem Uncomment these two lines to use Advantage RDD
rem echo %hdir%\lib\rddads.lib >> msvc.tmp
rem echo ..\lib\coff\ace32.lib >> msvc.tmp

echo %vcdir%\lib\libc.lib >> msvc.tmp
echo %vcdir%\lib\kernel32.lib >> msvc.tmp
echo %vcdir%\lib\user32.lib >> msvc.tmp
echo %vcdir%\lib\gdi32.lib >> msvc.tmp
echo %vcdir%\lib\winspool.lib >> msvc.tmp
echo %vcdir%\lib\comctl32.lib >> msvc.tmp
echo %vcdir%\lib\comdlg32.lib >> msvc.tmp
echo %vcdir%\lib\advapi32.lib >> msvc.tmp
echo %vcdir%\lib\shell32.lib >> msvc.tmp
echo %vcdir%\lib\ole32.lib >> msvc.tmp
echo %vcdir%\lib\oleaut32.lib >> msvc.tmp
echo %vcdir%\lib\uuid.lib >> msvc.tmp
echo %vcdir%\lib\odbc32.lib >> msvc.tmp
echo %vcdir%\lib\odbccp32.lib >> msvc.tmp
echo %vcdir%\lib\iphlpapi.lib >> msvc.tmp
echo %vcdir%\lib\mpr.lib >> msvc.tmp
echo %vcdir%\lib\version.lib >> msvc.tmp
echo %vcdir%\lib\wsock32.lib >> msvc.tmp
echo %vcdir%\lib\msimg32.lib >> msvc.tmp
echo %vcdir%\lib\bufferoverflowu.lib >> msvc.tmp
rem echo %vcdir%\lib\Shlwapi.lib >> msvc.tmp

IF EXIST %1.res echo %1.res >> msvc.tmp

%vcdir%\bin\link @msvc.tmp /nologo /subsystem:windows /force:multiple /NODEFAULTLIB:libcmt

IF ERRORLEVEL 1 GOTO LINKERROR
ECHO * Application successfully built
%1
GOTO EXIT
ECHO

rem delete temporary files
@del %1.c
@del msvc.tmp

:LINKERROR
ECHO * There are errors
GOTO EXIT

:SINTAX
ECHO SYNTAX: Build [Program] {-- No especifiques la extensi¢n PRG
ECHO {-- Don't specify .PRG extension
GOTO EXIT

:NOEXIST
ECHO The specified PRG %1 does not exist

:EXIT

Re: Compilando con 64 Bits

Posted: Thu Jan 21, 2010 9:11 am
by Antonio Linares
Juan,

Me alegro de que haya funcionado correctamente y que ya esteis en el camino de obtener la versión en 64 bits de vuestra aplicación lo antes posible :-)

Re: Compilando con 64 Bits

Posted: Fri Jan 22, 2010 9:40 am
by JoseGS
Hola amigos:

Me gustaria saber que cambios o ventajas lograria al pasar a 64bits.

Disculpen mi ignorancia :D

Gracias

Re: Compilando con 64 Bits

Posted: Fri Jan 22, 2010 2:56 pm
by Antonio Linares
Jose,

En la wikipedia tienes una buena explicación :-)
http://es.wikipedia.org/wiki/64_bits#Pros_y_contras

Desde un punto de vista técnico, las aplicaciones en 64 bits son más rápidas y eficientes al manejar cantidades de memoria superiores a los 4 gigas, aunque en realidad es a partir de 2 gigas y algo más, que es límite al que llegan las aplicaciones de 32 bits.

Re: Compilando con 64 Bits

Posted: Sat Jan 23, 2010 12:45 pm
by JoseGS
Gracias por la explicacion