All right, I figured out the problem. The problem is that the format of
the .map file changes between linked for 32-bit and linked for 64-bit,
and the createDLL.cpp program parses the .map file. The format change is
this: every symbol in the .map file that has 1, 2, or 3 initial
underscore characters has 0, 1, or 2 underscores (respectively) in the
64-bit .map file. Several places in createDLL.cpp, symbols with two
initial underscores are skipped. I changed this to one initial
underscore and everything links fine in 64-bit.
James
------------------------------------------------------------------------
*From:* address@hidden
[mailto:address@hidden *On
Behalf Of *James Vanderhyde
*Sent:* Tuesday, November 20, 2007 1:16 PM
*To:* address@hidden
*Subject:* [Openexr-devel] Building Visual C++ 2005 for x64 platform
I am trying to build a 64-bit dll of OpenEXR for 64-bit Windows. I’m
using Visual Studio 2005 (VC8). I started by downloading the math
library (IlmBase) and trying to build the IlmBase solution. I created a
configuration for the x64 platform. I had to make a few changes to get
the “createDLL” project to compile. I changed the Output Directory and
Intermediate Directory to match what the Win32 configuration had. Since
the project uses a lot of hard-coded relative paths, these needed to be
fixed from Visual Studio’s defaults.
This createDLL program runs the linker for the rest of the projects, and
it has one line of code that controls the command-line options for the
linker. I changed this line to be “X64” instead of “X86.”
At this point the “Half” project compiles and links successfully, but
when I try to build the “Iex” project I get several linker errors, such
as the following:
Iex.exp : error LNK2001: unresolved external symbol address@hidden@@
All the .lib, .def, and .obj files seem to be OK, so I can’t figure out
what the problem is.
Does anyone have any tips for me? Thanks.
James
------------------------------------------------------------------------
_______________________________________________
Openexr-devel mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/openexr-devel