Sí. Debe compilar los archivos de objetos "C" en formato COFF. Esto generalmente significa los compiladores Intel y/o MSVC++. Las mismas advertencias se aplican a la vinculación de archivos de objetos de 64 bits que se aplican a 32 bits. Debe asegurarse de que todas las referencias externas se resuelvan correctamente, ya sea proporcionando otro .obj que tenga ese símbolo, o desde el código Delphi. Al crear el código "C", asegúrese de desactivar cualquier comprobación de pila u otra generación de código de verificación en tiempo de ejecución. Muchas veces, tal codegen se basa en una versión específica del C/C++ RTL de la herramienta dada.
Otra cosa a destacar es que mientras Delphi de 64 bits puede enlazar a archivos objeto COFF (eventualmente se apoyará también ELF64), 32 bits de Delphi permite el acoplamiento con C++ Builder de construcción archivos OMF objeto y, a nuevos XE2, 32 bits Archivos de objeto COFF que se pueden compilar con MSVC++. Se aplican las mismas advertencias.
He leído que puede vincular archivos de objeto COFF (creados con MS VC++ como archivos .obj) en una aplicación Delphi de 64 bits. –
@Rudy Ya ha sido enviado. ELF no es bueno para Windows. –
Por supuesto, podría usar otro compilador que pueda emitir COFF de 64 bits o lo que necesite, quizás uno de los compiladores GNU o LLVM? El compilador de BCC v. 5.5 es el gratuito, supongo? Ya es un poco viejo, y no muy estándar. –