David P 3 Posted September 16 When testing BCB v12.2 I place one third-party component on a form and compile for 32-bit and 64-bit with no issues. When compling with the 64-Bit (Modern) compiler I receive the following error: [ld.lld Error] ld.lld: error: unknown file type: HTMLabel.o Do Delphi 3rd-party components need any special compilation to work with the 64-bit (Modern) compiler? Share this post Link to post
David P 3 Posted September 17 The answer requires all Delphi components to also be compiled with the 64-bit Modern compiler (usually to a 64x directory) Share this post Link to post
Roger Cigol 100 Posted September 18 21 hours ago, David P said: The answer requires all Delphi components to also be compiled with the 64-bit Modern compiler (usually to a 64x directory) For the benefit of me and other interested parties can you expand on this please? Delphi components implies they are written in Delphi. You can't compile these with any of the C++ compilers..... So what exactly did you do that made the third party component work in your case ? Share this post Link to post
Uwe Raabe 2023 Posted September 18 (edited) 26 minutes ago, Roger Cigol said: Delphi components implies they are written in Delphi. You can't compile these with any of the C++ compilers..... Actually, you can. Let me quote @Remy Lebeau from another thread: Quote C++Builder has always included the ability to compile Delphi .pas files that are added to C++ projects. As an example, see the C++ Builder packages of VirtualTreeView. Edited September 18 by Uwe Raabe Share this post Link to post
David P 3 Posted September 18 Hello Roger We have a copy of RADStudio so it was an easy job to compile any Delphi components. For the components where we have the source (Delphi or C++), we needed to add an additional 'Target Platform' of 'Windows 64-Bit (Modern) '. Using the macro $(Platform) in the output path will create a \Win64x output directory. For those Delphi components for which we do not have source code, we'll just have to wait for an update from the vendors. 1 Share this post Link to post
Roger Cigol 100 Posted September 18 22 minutes ago, Uwe Raabe said: Actually, you can. Let me quote @Remy Lebeau from another thread Yes, you can compile them of course. But not with the clang C++ compiler. Under the hood the C++ Builder (or RAD Studio) uses the pascal / delphi compiler to compile the *.pas files. Share this post Link to post
Roger Cigol 100 Posted September 18 17 minutes ago, David P said: Hello Roger We have a copy of RADStudio so it was an easy job to compile any Delphi components. For the components where we have the source (Delphi or C++), we needed to add an additional 'Target Platform' of 'Windows 64-Bit (Modern) '. Using the macro $(Platform) in the output path will create a \Win64x output directory. For those Delphi components for which we do not have source code, we'll just have to wait for an update from the vendors. Thanks @David P. Yes, you do need to recompile with the \win64x output directory. All is good now - thank you for your extra explanation. Thanks too to @Uwe Raabefor his help / clarification. Share this post Link to post
weirdo12 19 Posted September 18 (edited) I know DevExpress is hoping to deliver their components 'ready to go' for the new C++Builder tool chain. https://community.devexpress.com/blogs/vcl/archive/2024/07/24/vcl-year-end-roadmap-v24-2.aspx Quote We expect to support modern C++ compiler-related features in our v24.2 release cycle. For technical information in this regard, please review the following: second Behind the Build webinar and documentation on upgrading with key things to know. Edited September 18 by weirdo12 Share this post Link to post
weirdo12 19 Posted September 19 I know we are just lucky to be able to use C++ when building apps using the super powers of the VCL but it's so nice to have C++ specific stuff like Visual Assist added to the product! Share this post Link to post