Error linking ace_gperf.exe (Embarcadero C++Builder 12)
Version
8.0.3
Host machine and operating system
Windows 10 Pro, x64
Target machine and operating system (if different from host)
Windows 10 Pro, x64
Compiler name and version (including patch level)
Embarcadero® RAD Studio 12 Version 29.0.53982.0329
The $ACE_ROOT/ace/config.h file
#include "ace/config-win32.h"
The $ACE_ROOT/include/makeinclude/platform_macros.GNU file
Contents of $ACE_ROOT/bin/MakeProjectCreator/config/default.features
I don't have this file.
AREA/CLASS/EXAMPLE AFFECTED:
$ACE_ROOT/apps/gperf
The problem effects:
Error linking.
Synopsis
Error linking ace_gperf.exe.
Description
MAKE Version 5.43 Copyright (c) 1987, 2019 Embarcadero Technologies, Inc.
C:\Windows\system32\cmd.exe /c "cd ..\ace\Compression && make -DBCC64X -DRELEASE=1 -DUNICODE=0 -f Makefile.ACE_Compression.bmak all"
MAKE Version 5.43 Copyright (c) 1987, 2019 Embarcadero Technologies, Inc.
C:\Windows\system32\cmd.exe /c "cd ..\ace\Compression\rle && make -DBCC64X -DRELEASE=1 -DUNICODE=0 -f Makefile.ACE_RLECompression.bmak all"
MAKE Version 5.43 Copyright (c) 1987, 2019 Embarcadero Technologies, Inc.
C:\Windows\system32\cmd.exe /c "cd ..\ace\ETCL && make -DBCC64X -DRELEASE=1 -DUNICODE=0 -f Makefile.ACE_ETCL.bmak all"
MAKE Version 5.43 Copyright (c) 1987, 2019 Embarcadero Technologies, Inc.
C:\Windows\system32\cmd.exe /c "cd ..\ace\ETCL && make -DBCC64X -DRELEASE=1 -DUNICODE=0 -f Makefile.ACE_ETCL_Parser.bmak all"
MAKE Version 5.43 Copyright (c) 1987, 2019 Embarcadero Technologies, Inc.
C:\Windows\system32\cmd.exe /c "cd ..\ace\Monitor_Control && make -DBCC64X -DRELEASE=1 -DUNICODE=0 -f Makefile.Monitor_Control.bmak all"
MAKE Version 5.43 Copyright (c) 1987, 2019 Embarcadero Technologies, Inc.
C:\Windows\system32\cmd.exe /c "cd ..\ace\QoS && make -DBCC64X -DRELEASE=1 -DUNICODE=0 -f Makefile.QoS.bmak all"
MAKE Version 5.43 Copyright (c) 1987, 2019 Embarcadero Technologies, Inc.
C:\Windows\system32\cmd.exe /c "cd ..\apps\gperf\src && make -DBCC64X -DRELEASE=1 -DUNICODE=0 -f Makefile.gperf.bmak all"
MAKE Version 5.43 Copyright (c) 1987, 2019 Embarcadero Technologies, Inc.
bcc64x @MAKE0000.@@@
clang version 15.0.7 ([email protected]:llvm-project 3052252252f2bb600fb623cdb63ea78079a69adc)
Target: x86_64-w64-windows-gnu
Thread model: posix
InstalledDir: C:\PROGRA~2\EMBARC~1\Studio\23.0\bin64
Borland configuration file: C:/Program Files (x86)/Embarcadero/Studio/23.0/bin64/bcc64x.cfg
Embarcadero C++ 7.70 for Win64/COFF Copyright (c) 2012-2024 Embarcadero Technologies, Inc.
"C:\\PROGRA~2\\EMBARC~1\\Studio\\23.0\\bin64\\ld.lld" -m i386pep -Bdynamic -o ../../../bin/ace_gperf.exe "C:\\PROGRA~2\\EMBARC~1\\Studio\\23.0\\x86_64-w64-mingw32\\lib\\crt2u.o" "C:\\PROGRA~2\\EMBARC~1\\Studio\\23.0\\x86_64-w64-mingw32\\lib\\crtbegin.o" "-Lc:\\program files (x86)\\embarcadero\\studio\\23.0\\lib\\win64x\\release" -L. -L../../../lib "-LC:\\PROGRA~2\\EMBARC~1\\Studio\\23.0\\x86_64-w64-mingw32\\lib" "-LC:\\PROGRA~2\\EMBARC~1\\Studio\\23.0\\x86_64-w64-mingw32\\mingw/lib" "-LC:\\PROGRA~2\\EMBARC~1\\Studio\\23.0\\lib" "-LC:\\PROGRA~2\\EMBARC~1\\Studio\\23.0\\x86_64-w64-mingw32/sys-root/mingw/lib" "-LC:\\Program Files (x86)\\Embarcadero\\Studio\\23.0\\lib\\clang\\15.0.7\\lib\\windows" Release/Unicode/gperf/gperf.o Release/Unicode/gperf/Options.o Release/Unicode/gperf/Iterator.o Release/Unicode/gperf/Gen_Perf.o Release/Unicode/gperf/Key_List.o Release/Unicode/gperf/List_Node.o Release/Unicode/gperf/Hash_Table.o Release/Unicode/gperf/Bool_Array.o Release/Unicode/gperf/Vectors.o Release/Unicode/gperf/Version.o ACE_bru.lib -liphlpapi -lws2_32 -lucrt -lmingwthrd -l:import64.lib -lc++ -lmingw32 "C:\\Program Files (x86)\\Embarcadero\\Studio\\23.0\\lib\\clang\\15.0.7\\lib\\windows\\libclang_rt.builtins-x86_64.a" -lunwind -lmoldname -lmingwex -ladvapi32 -lshell32 -luser32 -lkernel32 -lmingw32 "C:\\Program Files (x86)\\Embarcadero\\Studio\\23.0\\lib\\clang\\15.0.7\\lib\\windows\\libclang_rt.builtins-x86_64.a" -lunwind -lmoldname -lmingwex -lkernel32 "C:\\PROGRA~2\\EMBARC~1\\Studio\\23.0\\x86_64-w64-mingw32\\lib\\crtend.o"
ld.lld: error: undefined symbol: wWinMain
>>> referenced by libmingw32.a(lib64_libmingw32_a-ucrtexewin.o):(wmain)
bcc64x: error: linker command failed with exit code 1 (use -v to see invocation)
Repeat by
set BCC64X=1
set RELEASE = 1
set UNICODE = 0
make -f Makefile.bmak all
Sample fix/ workaround
Which exact Embarcadero C++ Builder are you using, the older 12.0 isn't supported anymore by the recent releases, see https://github.com/DOCGroup/ACE_TAO/releases/tag/ACE%2BTAO-8_0_2.
I am using Embarcadero® RAD Studio 12.2 Version 29.0.53982.0329.
Try RAD Studio 12.3 or try to downgrade to ACE/TAO 8.0.2 with RAD Studio 12.2, haven't tested with 12.2 for some time now
My support for the Embarcadero C++ compilers here on github is very limited, when you need guaranteed support see https://www.remedy.nl/opensource/emb
On version 8.0.2 the same error.