[mapguide-internals] cross-compiling CS-Map 64-bit

Norm Olsen norm.olsen at autodesk.com
Wed Aug 4 11:24:34 EDT 2010


Hello All . . .

Two ideas which might help.

1> As there is no difference between theresults produced by the 32 bit and 64 bit compiler programs, arranging for a simple "is a compile needed" may alleviate the problem somewhat.  There are (currently) four source files and four result files.  If the all result files are newer than the all of the source files, then the compilation process can just be skipped.

2> The Windows solution file builds both versions of the compiler program.  In the post build event, or perhaps somewhere else, could not a conditional be used and is the host machine is a 32 bit machine, always use the version of the compiler in the 32 bit binary result directory?

Just a thought.

Norm

-----Original Message-----
From: mapguide-internals-bounces at lists.osgeo.org [mailto:mapguide-internals-bounces at lists.osgeo.org] On Behalf Of Trevor Wekel
Sent: Tuesday, August 03, 2010 5:52 PM
To: MapGuide Internals Mail List
Subject: RE: [mapguide-internals] cross-compiling CS-Map 64-bit

Hmm... This issue is more tricky than it seems.

The cs_comp.exe executable depends on the CSMap library.  Cross compiling for 64 bit on a 32 bit machine means that the 64 bit build/install script for MapGuide has to build both the 32 bit and the 64 bit of the CSMap library just so that the 32 bit cs_comp.exe can generate the dictionaries on the 32 bit machine.  It is a bit weird.  Walt's fix for the build issue is probably as good as we can get.

MapGuide 2.2 has branched and is now using http://svn.osgeo.org/metacrs/csmap/branches/12.02/.  This fix may also need to be applied to branches/12.02.

Incidentally, the MapGuide Open Source build VM I have been using is a 64 bit OS.  That's why I asked to get cs_comp.exe added to the 64 bit build.  The open source build is already complicated enough without having to build the 32 bit cs_comp.exe and CsMap library just to get the dictionaries compiled.

Is seems as though everyone else is using a 32 bit machine to cross compile 64 bit MapGuide, Fdo, and CsMap.  I could throw away the 64 bit MapGuide build machine and rebuild a 32 bit image from scratch.  This will take me approximately 2 days and another $1000 in licensing fees.  Total cost, somewhere around $2500.  Obviously, I am not too keen on doing this but there seem to be multiple "incompatibility" quirks with doing the builds on a native 64 bit OS - mostly with Fdo Thirdparty and CsMap.

Walt - what operating system does Autodesk use internally to build MapGuide, FDO, and CsMap?
 

Regards,
Trevor


-----Original Message-----
From: mapguide-internals-bounces at lists.osgeo.org [mailto:mapguide-internals-bounces at lists.osgeo.org] On Behalf Of Walt Welton-Lair
Sent: August 3, 2010 8:05 AM
To: MapGuide Internals Mail List
Subject: RE: [mapguide-internals] cross-compiling CS-Map 64-bit

The post-build step was adjusted yesterday in the CsMap trunk stream.

https://trac.osgeo.org/csmap/changeset/1875/trunk


-----Original Message-----
From: mapguide-internals-bounces at lists.osgeo.org [mailto:mapguide-internals-bounces at lists.osgeo.org] On Behalf Of Jackie Ng
Sent: Tuesday, August 03, 2010 9:54 AM
To: mapguide-internals at lists.osgeo.org
Subject: [mapguide-internals] cross-compiling CS-Map 64-bit


Hi All,

I am having an issue compiling CS-Map with the 64-bit Visual C++ cross-compiler. The problem is that the "Compiler" project has a post-build event which actually runs the compiled executable (CS_Comp.exe).

If I am cross-compiling CS-Map from a 32-bit environment, this will obviously fail because CS_Comp.exe will be a 64-bit binary.

What I was wondering is if I can get away with explicitly building the "Compiler" project as 32-bit while building the rest as 64-bit. The purpose of CS_Comp.exe is just to compile these CS dictionaries and isn't used by any other MapGuide component. Am I correct in saying this?

- Jackie
--
View this message in context: http://osgeo-org.1803224.n2.nabble.com/cross-compiling-CS-Map-64-bit-tp5368454p5368454.html
Sent from the MapGuide Internals mailing list archive at Nabble.com.
_______________________________________________
mapguide-internals mailing list
mapguide-internals at lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/mapguide-internals
_______________________________________________
mapguide-internals mailing list
mapguide-internals at lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/mapguide-internals



More information about the mapguide-internals mailing list