Page 1 of 2

Ayuda compilar 64 bits con FivEdit y BCC7764

Posted: Mon Oct 14, 2024 1:53 am
by checo176
Hola Amigos, favor su ayuda y orientación en poder compilar un ejemplo (Achoice.prg), para 64 bits usando BCC7764 y Harbour_bbc77_64. Al igual que en mi tema anterrior, estoy tratanto de compilar mi actual proyecto de 32 bits a 64 Bits, pero antes quise probar las configuraciones que ya vienen en FivEdit para BCC7 64 Bits, logicamente actualizando los path como corresponde. Me compila sin error, pero al linkear me sale el siguiente error de más abajo.

Como les comenté estoy usando FWH64 (2407), Borland BCC7764 y harbour para BCC7764.

mi actual archivo de configuracuón .fiv es el siguiente:

Code: Select all | Expand

[PREFERENCES]
0=Harbour Borland 7.7 64 bits
2=64 bits
41=Borland C/C++ 7.70
44=
45=
46=
47=
48=.F.
49=.T.
50=.T.
51=.F.
52=.T.
53=.F.
54=.F.
55=.F.
56=.F.
57=.F.
58=.F.
59=.F.
60=.F.
61=.T.
62=FiveWin
63=C:\Borland\bcc7764\bin\bcc64.exe
64=C:\Borland\bcc7764\bin\ilink64.exe
65=C:\Borland\bcc7764\bin\rc.exe
68=.F.
74=C:\Borland\bcc7764\bin\tlib64.exe
1=C:\fwh64
3=
4=C:\harbour64
5=Harbour
6=/n /m /w /es1 /gc1
7=
8=C:\Borland\bcc7764
9=/Gn /aa /Tpe /s
10=
34=-c
72=-r  -D__64__                                                                                
M31=.T.
[USERLIBS]
001=C:\FWH64\LIB\FIVEH64.LIB,1
002=C:\fwh64\lib\FiveHC64.lib,1
003=C:\fwh64\lib\libmysql.lib,1
004=C:\fwh64\lib\dolphin.lib,1
005=C:\fwh64\lib\libcurl.lib,1
[XHARBOURLIBS]
001=C:\harbour64\lib\hbwin.lib,1
002=C:\harbour64\lib\gtgui.lib,1
003=C:\harbour64\lib\hbrtl.lib,1
004=C:\harbour64\lib\hbvm.lib,1
005=C:\harbour64\lib\hblang.lib,1
006=C:\harbour64\lib\hbmacro.lib,1
007=C:\harbour64\lib\hbrdd.lib,1
008=C:\harbour64\lib\rddntx.lib,1
009=C:\harbour64\lib\rddcdx.lib,1
010=C:\harbour64\lib\rddfpt.lib,1
011=C:\harbour64\lib\hbsix.lib,1
012=C:\harbour64\lib\hbdebug.lib,1
013=C:\harbour64\lib\hbcommon.lib,1
014=C:\harbour64\lib\hbpp.lib,1
015=C:\harbour64\lib\hbcpage.lib,1
016=C:\harbour64\lib\hbcplr.lib,1
017=C:\harbour64\lib\hbct.lib,1
018=C:\harbour64\lib\hbpcre.lib,1
019=C:\harbour64\lib\xhb.lib,1
020=C:\harbour64\lib\hbziparc.lib,1
021=C:\harbour64\lib\hbmzip.lib,1
022=C:\harbour64\lib\hbzlib.lib,1
023=C:\harbour64\lib\minizip.lib,1
024=C:\harbour64\lib\png.lib,1
025=C:\harbour64\lib\hbcurl.lib,1
026=C:\harbour64\lib\hbusrrdd.lib,1
027=C:\harbour64\lib\hbtip.lib,1
028=C:\harbour64\lib\hbmxml.lib,1
029=C:\harbour64\lib\hbmisc.lib,1
[CCOMPLIBS]
001=C:\Borland\bcc7764\lib\cw32.lib,1
002=C:\Borland\bcc7764\lib\uuid.lib,1
003=C:\Borland\bcc7764\lib\import32.lib,1
004=C:\Borland\bcc7764\lib\psdk\odbc32.lib,1
005=C:\Borland\bcc7764\lib\psdk\nddeapi.lib,1
006=C:\Borland\bcc7764\lib\psdk\Iphlpapi.lib,1
007=C:\Borland\bcc7764\lib\psdk\msimg32.lib,1
008=C:\Borland\bcc7764\lib\psdk\psapi.lib,1
009=C:\Borland\bcc7764\lib\psdk\rasapi32.lib,1
010=C:\Borland\bcc7764\lib\psdk\gdiplus.lib,1
011=C:\Borland\bcc7764\lib\psdk\riched20.lib,1
012=C:\Borland\bcc7764\lib\psdk\shell32.lib,1
013=C:\Borland\bcc7764\lib\psdk\urlmon.lib,1
014=C:\Borland\bcc7764\lib\Uxtheme.a,1
[INCLUDES]
001=C:\Borland\bcc7764\include,1
002=C:\Borland\bcc7764\include\dinkumware64,1
 
La configuración de los archivos cfg, son los siguientes:
bcc64.cg

Code: Select all | Expand

-I"C:\Borland\bcc7764\include\windows\crtl;C:\Borland\bcc7764\include\windows\sdk;C:\Borland\bcc7764\include\dinkumware64"
-L"C:\Borland\bcc7764\lib;C:\Borland\bcc7764\lib\psdk"
-O
-O1
-c
-d
-g0
--jobs=0
-output-dir.
-Wno-visibility
-Wno-macro-redefined
-Wno-microsoft-anon-tag
-Wno-ignored-attributes
-Wno-dangling-else
ilink64.cfg

Code: Select all | Expand

-Gn
-aa
-x
-L"C:\Borland\bcc7764\lib;C:\Borland\bcc7764\lib\psdk"

y el error que me salé al compilar y linkear es el siguiente:

Code: Select all | Expand

Build: 000002 - 20241013224039227
Harbour 3.2.0dev (r2407221137)
Copyright (c) 1999-2021, https://harbour.github.io/
Compiling 'C:\FWH64\SAMPLES\achoice.prg'...

Lines 5059, Functions/Procedures 3
Generating C source output to 'C:\FIVEDIT\achoice.c'... Done.
Embarcadero C++ 7.70 for Win64 Copyright (c) 2012-2023 Embarcadero Technologies, Inc.
Turbo Incremental Link64 6.98 Copyright (c) 1997-2023 Embarcadero Technologies, Inc.
Fatal: Unable to open file 'ACHOICE.O'
Link Error
Les pido su apoyo y orientación, en especial a Cristobal, ya que he buscado en el foro, temas similares y no he podido encontrar la solución difinitiva.

Un abrazo desde Santiago de Chile

Re: Ayuda compilar 64 bits con FivEdit y BCC7764

Posted: Mon Oct 14, 2024 6:52 am
by Antonio Linares
Estimado Sergio,

En el fichero bcc32.cfg de bcc7764 prueba a añadir esta línea:

-o.o

Re: Ayuda compilar 64 bits con FivEdit y BCC7764

Posted: Mon Oct 14, 2024 3:36 pm
by checo176
Antonio, muchas gracias por tu respuesta, efectué _ en el archivo de configuración, me refiero al arcgivo bcc64.cfg, ya que entiendo que a ese archivo te referías y no al bcc32.cg, ya que estoy generando un ejecutable de 64 bits y estoy usando BCC7764.

El archivo de configuración bcc64.cfg quedó asi:

Code: Select all | Expand

-I"C:\Borland\bcc7764\include\windows\crtl;C:\Borland\bcc7764\include\windows\sdk;C:\Borland\bcc7764\include\dinkumware64"
-L"C:\Borland\bcc7764\lib;C:\Borland\bcc7764\lib\psdk"
-o.o
-O1
-c
-d
-g0
--jobs=0
-output-dir.
-Wno-visibility
-Wno-macro-redefined
-Wno-microsoft-anon-tag
-Wno-ignored-attributes
-Wno-dangling-else
El error se mantiene:

Code: Select all | Expand

Build: 000006 - 20241014123056273
Harbour 3.2.0dev (r2407221137)
Copyright (c) 1999-2021, https://harbour.github.io/
Compiling 'C:\FWH64\SAMPLES\achoice.prg'...

Lines 5059, Functions/Procedures 3
Generating C source output to 'C:\FIVEDIT\achoice.c'... Done.
Embarcadero C++ 7.70 for Win64 Copyright (c) 2012-2023 Embarcadero Technologies, Inc.
Turbo Incremental Link64 6.98 Copyright (c) 1997-2023 Embarcadero Technologies, Inc.
Fatal: Unable to open file 'ACHOICE.O'
Link Error
Me puedes sugerir alguna otra cosa para resolver este problema en el proceso de linkeo??

Un abrazo

Re: Ayuda compilar 64 bits con FivEdit y BCC7764

Posted: Mon Oct 14, 2024 3:40 pm
by Antonio Linares
Busca el obj a ver si se genera achoice.obj ó ACHOICE.OBJ

Re: Ayuda compilar 64 bits con FivEdit y BCC7764

Posted: Mon Oct 14, 2024 4:00 pm
by checo176
Antonio, el obj que se genera es achoice.obj, es decir en minúsculas.

eso puede ser un error??

Re: Ayuda compilar 64 bits con FivEdit y BCC7764

Posted: Mon Oct 14, 2024 4:38 pm
by Enrico Maria Giordano
The correct name for BCC64 is

Code: Select all | Expand

achoice.o

Re: Ayuda compilar 64 bits con FivEdit y BCC7764

Posted: Mon Oct 14, 2024 5:04 pm
by checo176
Erico, gracias por la respuesta, pero en la compilación el proceso está generando achoice.obj y no achoice.o

Está mal que esté pasando eso??

Re: Ayuda compilar 64 bits con FivEdit y BCC7764

Posted: Mon Oct 14, 2024 7:12 pm
by Enrico Maria Giordano
You have to check your compile tool.

Re: Ayuda compilar 64 bits con FivEdit y BCC7764

Posted: Tue Oct 15, 2024 12:23 am
by checo176
Disculpen la insistencia, en realidad me encuentro parado y no puedo avanzar en poder generar un programa en 64 bits con FivEdit. El error de no encontrar el archivo .o, se mantiene. No se como configurar que el compilador pueda generar el archivo objeto con extensión .o y no .obj como lo está generando actualmente.

Desconozco si el problema lo tiene el compilador BCC7764 o mi actual configuración. Trate de bajar de versión a la Versión BCC7164 o BCC7364, pero no he podido encontrar donde poder descargarlos.

Alguien tiene alguna idea de cómo poder solucionar mi problema, ya que no he podido lograr generar una aplicación en 64 bits.

Espero sus comentarios

Re: Ayuda compilar 64 bits con FivEdit y BCC7764

Posted: Tue Oct 15, 2024 1:42 am
by Antonio Linares
Sergio,

Aqui también lo ideal es que pruebes a construir usando hbmk2.exe para asegurarnos de que estás usando las versiones correctas de Harbour, FWH64 y bcc77 64
https://github.com/FiveTechSoft/harbour ... 240814.zip

go64.bat

Code: Select all | Expand

set bcc=bcc7764
set path=c:\%bcc%\bin
set HB_USER_CFLAGS=-Ic:\%bcc%\INCLUDE\windows\crtl -Ic:\%bcc%\INCLUDE\windows\sdk -Lc:\%bcc%\LIB
set HB_USER_LDFLAGS=-Lc:\%bcc%\LIB;c:\%bcc%\LIB\psdk
c:\harbour64\bin\hbmk2.exe test64.hbp -xhb -comp=bcc64
test64.hbp

Code: Select all | Expand

-gui

test.prg 
test.rc

-workdir=

-optim-
-ldflag+=-aa
-Ic:\fwh64\include
-Lc:\fwh64\lib 

-lFivehx64
-lFiveC64

-lct
-lhbzip
-ltip
en este fichero HBP reemplaza test.prg por la lista de todos tus PRGs

Re: Ayuda compilar 64 bits con FivEdit y BCC7764

Posted: Tue Oct 15, 2024 4:07 am
by cnavarro
Sergio, compruebo si el problema es que recuerdo alguna version de borland de 64 bits que generaba ficheros con extension .o en lugar de .obj
Comprueba si genera el fichero .obj y me dices tal y como te han comentado antes
En cualquier caso asegúrate de estar utilizando la última versión de Fivedit
https://bitbucket.org/fivetech/fivewin- ... ivedit.exe
Mañana veo de sacar un ratillo y conectamos a ver donde está el problema

Re: Ayuda compilar 64 bits con FivEdit y BCC7764

Posted: Tue Oct 15, 2024 6:52 pm
by checo176
Antonio Linares wrote:Sergio,

Aqui también lo ideal es que pruebes a construir usando hbmk2.exe para asegurarnos de que estás usando las versiones correctas de Harbour, FWH64 y bcc77 64
https://github.com/FiveTechSoft/harbour ... 240814.zip

go64.bat

Code: Select all | Expand

set bcc=bcc7764
set path=c:\%bcc%\bin
set HB_USER_CFLAGS=-Ic:\%bcc%\INCLUDE\windows\crtl -Ic:\%bcc%\INCLUDE\windows\sdk -Lc:\%bcc%\LIB
set HB_USER_LDFLAGS=-Lc:\%bcc%\LIB;c:\%bcc%\LIB\psdk
c:\harbour64\bin\hbmk2.exe test64.hbp -xhb -comp=bcc64
test64.hbp

Code: Select all | Expand

-gui

test.prg 
test.rc

-workdir=

-optim-
-ldflag+=-aa
-Ic:\fwh64\include
-Lc:\fwh64\lib 

-lFivehx64
-lFiveC64

-lct
-lhbzip
-ltip
en este fichero HBP reemplaza test.prg por la lista de todos tus PRGs

Antonio:

Efectué las pruebas que me indicaste y me sale el siguiente error:

Code: Select all | Expand

c:\Pro\Raig32>go64

c:\Pro\Raig32>set bcc=bcc7764

c:\Pro\Raig32>set path=c:\bcc7764\bin

c:\Pro\Raig32>set HB_USER_CFLAGS=-Ic:\bcc7764\INCLUDE\windows\crtl -Ic:\bcc7764\INCLUDE\windows\sdk -Lc:\bcc7764\LIB

c:\Pro\Raig32>set HB_USER_LDFLAGS=-Lc:\bcc7764\LIB;c:\bcc7764\LIB\psdk

c:\Pro\Raig32>C:\harbour64\bin\win\bcc64\hbmk2.exe test64.hbp -xhb -comp=bcc64
Harbour 3.2.0dev (r2407221137)
Copyright (c) 1999-2021, https://harbour.github.io/
Compiling 'Prgh\Sisven.prg'...
Lines 7604, Functions/Procedures 27
Generating C source output to 'Sisven.c'... Done.
Harbour 3.2.0dev (r2407221137)
Copyright (c) 1999-2021, https://harbour.github.io/
Compiling 'Prgh\New_tablas.PRG'...
Lines 9249, Functions/Procedures 18
Generating C source output to 'New_tablas.c'... Done.
Harbour 3.2.0dev (r2407221137)
Copyright (c) 1999-2021, https://harbour.github.io/
Compiling 'Prgh\Codigos.PRG'...
Lines 7249, Functions/Procedures 16
Generating C source output to 'Codigos.c'... Done.
bcc64.exe: warning: argument unused during compilation: '-Lc:\bcc7764\LIB' [-Wunused-command-line-argument]
Sisven.c:
New_tablas.c:
Codigos.c:
Turbo Incremental Link64 6.98 Copyright (c) 1997-2023 Embarcadero Technologies, Inc.
Fatal: Unable to open file 'C0W64.OBJ'
hbmk2[test64]: Error: Running linker. 2
ilink64.exe @C:\Users\SVACAR~1\AppData\Local\Temp\91b2c2.lnk

Re: Ayuda compilar 64 bits con FivEdit y BCC7764

Posted: Tue Oct 15, 2024 7:11 pm
by alerchster

Re: Ayuda compilar 64 bits con FivEdit y BCC7764

Posted: Tue Oct 15, 2024 7:46 pm
by Antonio Linares
Como te indica Anton,

ve a la carpeta: bcc64\lib

y haz esto:

copy c0w64.o c0w64.obj

Re: Ayuda compilar 64 bits con FivEdit y BCC7764

Posted: Tue Oct 15, 2024 8:00 pm
by checo176
Many Thans Anton, I did what you told me, but now I get the following errors:

Code: Select all | Expand

c:\Pro\Raig32>go64

c:\Pro\Raig32>set bcc=bcc7764

c:\Pro\Raig32>set path=c:\bcc7764\bin

c:\Pro\Raig32>set HB_USER_CFLAGS=-Ic:\bcc7764\INCLUDE\windows\crtl -Ic:\bcc7764\INCLUDE\windows\sdk -Lc:\bcc7764\LIB

c:\Pro\Raig32>set HB_USER_LDFLAGS=-Lc:\bcc7764\LIB;c:\bcc7764\LIB\psdk

c:\Pro\Raig32>C:\harbour64\bin\win\bcc64\hbmk2.exe test64.hbp -xhb -comp=bcc64
Harbour 3.2.0dev (r2407221137)
Copyright (c) 1999-2021, https://harbour.github.io/
Compiling 'Prgh\Sisven.prg'...
Lines 7604, Functions/Procedures 27
Generating C source output to 'C:\Users\SVACAR~1\AppData\Local\Temp\hbmk_fupowa.dir\Sisven.c'... Done.
Harbour 3.2.0dev (r2407221137)
Copyright (c) 1999-2021, https://harbour.github.io/
Compiling 'Prgh\New_tablas.PRG'...
Lines 9249, Functions/Procedures 18
Generating C source output to 'C:\Users\SVACAR~1\AppData\Local\Temp\hbmk_fupowa.dir\New_tablas.c'... Done.
Harbour 3.2.0dev (r2407221137)
Copyright (c) 1999-2021, https://harbour.github.io/
Compiling 'Prgh\Codigos.PRG'...
Lines 7249, Functions/Procedures 16
Generating C source output to 'C:\Users\SVACAR~1\AppData\Local\Temp\hbmk_fupowa.dir\Codigos.c'... Done.
bcc64.exe: warning: argument unused during compilation: '-Lc:\bcc7764\LIB' [-Wunused-command-line-argument]
C:\Users\SVACAR~1\AppData\Local\Temp\hbmk_fupowa.dir\Sisven.c:
C:\Users\SVACAR~1\AppData\Local\Temp\hbmk_fupowa.dir\New_tablas.c:
C:\Users\SVACAR~1\AppData\Local\Temp\hbmk_fupowa.dir\Codigos.c:
Turbo Incremental Link64 6.98 Copyright (c) 1997-2023 Embarcadero Technologies, Inc.
Fatal: Illegal option: NODEFAULTLIB:msvcrt
hbmk2[test64]: Error: Running linker. 2
ilink64.exe @C:\Users\SVACAR~1\AppData\Local\Temp\vqv0sh.lnk
Please your comments