Click here to Skip to main content
15,501,036 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
As part of migration of a 32 bit project to 64 bit i had to build a projectwhich is having only .idl files. I am not so familiar with COM programming.
The build goes fine in 32 bit but is giving the following errors in 64 bit build. ( build is bone on a 32 bit after installing 64 bit compiler)

Error   1   error LNK2001: unresolved external symbol basedataobj_ProxyFileInfo C:\workspace\cominterfaces\basedataobj_dlldata.obj   1

Error   2   fatal error LNK1120: 1 unresolved externals C:\workspace\cominterfaces\basedataobjps.dll

Error   3   fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 8\VC\bin\x86_amd64\link.EXE"' : return code '0x460'   NMAKE

The build seems to be going fine and it generates all the 4 files (.h,_i.c,_p.c,_dlldata.c)
But the post build step "nmake /f $(InputName)" seems to be creating this error.

can any one guide me in finding how to resolve this issue.

1 solution

I think Error message 1 is pretty clear. You have a reference to the item basedataobj_ProxyFileInfo in file C:\workspace\cominterfaces\basedataobj_dlldata.obj which is not externally defined anywhere. Check the source to find the reference and see if you can discover where the definition should be.
Share this answer

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900