0

I am working on 64 bit migration of 32 bit Delphi project.

While using C obj file I was getting errors which are solved by answer provided in the question link: Bad object file formate

But after using the answers provided by David and Rudy. I have resolved the issue but now I am getting some other errors:

[dcc64 Error] xxx.dpr(936): E2065 Unsatisfied forward or external declaration: '__GSHandlerCheck'
[dcc64 Error] xxx.dpr(936): E2065 Unsatisfied forward or external declaration: '__security_cookie'
[dcc64 Error] xxx.dpr(936): E2065 Unsatisfied forward or external declaration: '__security_check_cookie'
[dcc64 Error] xxx.dpr(936): E2065 Unsatisfied forward or external declaration: '__imp_free'
[dcc64 Error] xxx.dpr(936): E2065 Unsatisfied forward or external declaration: '__imp_malloc'

I am not able to see any traces of these functions.

Can anyone help me on this?

Community
  • 1
  • 1
A B
  • 1,461
  • 2
  • 19
  • 54
  • See my comment on your previous questions. Read this article: http://rvelthuis.de/articles/articles-cobjs.html. It explains how you can resolve these unsatisfied forwards, and some more. – Rudy Velthuis May 17 '17 at 08:57
  • @RudyVelthuis I have followed all the procedure as per your article, all other errors solved but these errors are not able to removed. Can you please help me if I am missing something – A B May 17 '17 at 08:59
  • @AB I don't think Rudy is really helping you here. As he states in his article, he doesn't have experience of doing this on x64. – David Heffernan May 17 '17 at 09:01
  • As for how to help you, I'd like to see how you are compiling the objects. That needs to be added to the question. I'd like to see the full command line passed to `cl`. Also, I think you should accept one of the answers at your other question. Either one, it doesn't matter, they are both correct. – David Heffernan May 17 '17 at 09:01
  • @DavidHeffernan Do you mean the delphi compilation command or C compilation command? – A B May 17 '17 at 09:03
  • `cl` is the MS command line compiler. That's what matters here. You will need `/GS-` to suppress stack checking. And it looks like you are also compiling for dynamic linking to the runtime which isn't right. My guess is that you aren't using `cl` at all, otherwise you'd know what it was. Instead you are driving this from the VS GUI. That won't do. – David Heffernan May 17 '17 at 09:08
  • @DavidHeffernan I have added the /GS- and the some errors are resolved except: [dcc64 Error] XXX.dpr(936): E2065 Unsatisfied forward or external declaration: '__imp_free' [dcc64 Error] XXX.dpr(936): E2065 Unsatisfied forward or external declaration: '__imp_malloc' – A B May 17 '17 at 09:35
  • That implies that you target dynamic runtime linking. That's what the `__imp_XXX` tells me. But I still don't know what your command line is. I'm getting a little tired of doing this with information missing. – David Heffernan May 17 '17 at 09:45

0 Answers0