[mapguide-users] building 64bit openmapguide on rhel 5.4
Trevor Wekel
trevor_wekel at otxsystems.com
Wed Mar 31 01:18:38 EDT 2010
Hi Rajeev,
You will need to create 64 bit FDO libraries before compiling MapGuide. MapGuide 2.2 should be built against FDO 3.5.0. I have started working on Linux build and packaging scripts for both FDO and MapGuide. The scripts are a work in progress but they might get you somewhere on a 64 bit machine. I haven't tried them yet.
http://svn.osgeo.org/fdo/branches/3.5/install/
- buildall.sh, buildfdocore.sh, buildfdoprovider.sh
http://svn.osgeo.org/mapguide/trunk/Installer/scripts/
- build.sh, revnum.pl
If you make some headway with the 64bit Linux builds and would like to make changes to these scripts, please let me know.
A couple of cautionary words before you begin:
- MapGuide 2.2 will only build on GCC 4.1. Trying to use GCC 4.4 is problematic to say the least.
- Check out http://trac.osgeo.org/mapguide/wiki/CompilingMapGuide22. It could save you a few hours.
Regards,
Trevor
-----Original Message-----
From: mapguide-users-bounces at lists.osgeo.org [mailto:mapguide-users-bounces at lists.osgeo.org] On Behalf Of Rajeev Singh
Sent: March 30, 2010 10:56 PM
To: MapGuide Users Mail List
Subject: RE: [mapguide-users] building 64bit openmapguide on rhel 5.4
Thanks for sharing that - though Trevor has explicitly said that 2.2 is the
one that might be 64 bit, let me share my experience on Centos 5.5 (btw you
can use the 32 bit build on 64 bit machine)
**Trevor - my interest in 64 bit was actually to use it against 64 bit java
(and the current plan for not doing 64 bit web components, in my opinion,
restricts utility to a large extent.
I also did -fPIC - infact lots of the makefiles did not pass on the
parameters (i.e. the makefiles being generated do not follow good practices
of taking things from environment). So created a script wrapper around
gcc/cc/g++/c++ (yup all the 4 compiler commands are used by the make files)
The DwfCore needed to be tweaked (for the Tick32) and some compile
directives needed to be checked. I got a sense looking at these files and
one of the core component files (I forget which one) had assumptions builit
in about size of int and there were issues fixed for 16 to 32 bit
conversion, though I think we did a cursory fix the end result was that
though successful compilation happened, the thing did not run.
Anyway I will look at 2.2 branch and retry 64 bit compilation.
thx
--------------------------------------------
Rajeev K. Singh
IntelliPlanner Software Systems, Inc.
West Windsor, NJ (USA) / New Delhi (India)
+1.609.945.4927 (o) / +1.203.558.3224 (c)
+91.11.4672 6635(o) / +91.995 841 1064(c)
--------------------------------------------
This mail contains proprietary and confidential information.
Please destroy it if you received it by mistake and notify the sender.
-----Original Message-----
From: mapguide-users-bounces at lists.osgeo.org
[mailto:mapguide-users-bounces at lists.osgeo.org]On Behalf Of
kfwebb at bombasticlocution.com
Sent: 30 March 2010 21:43
To: MapGuide Users Mail List
Subject: Re: [mapguide-users] building 64bit openmapguide on rhel 5.4
Hello Adam, Rajeev, and others interested in 64bit MapGuide,
I thought I had the problem solved last week. I got FDO and MapGuide to
compile on a x86_64 installation of Fedora Core 8 (a torturous
experience). When I tested using the Sheboygan.mgp sample data, mgserver
threw an FDO exception related to the ConvertUTF16toUTF32() routine in
Fdo. It was then that I realized I had contract work to do and I didn't
have the time it would take to do a thorough job on Fdo and any other
packages needing work, so I stopped my 64-bit installation and installed
on an ancient 32-bit box so that I could get some work done. (I am still
debugging the 32-bit install - nothing is ever easy in this business).
To answer your direct question, here is how I got around the DWFTimer
issues. My thinking is that DWF is an Internet Explorer only viewer, not
much use for today's browser market. I also didn't know what other
dependencies there were for the DWF library so I just wanted to make it
compile and not ever use the viewer. I copied the dwfcore/x86/Core.cpp,
and dwfcore/x86/Timer.cpp files into the dwfcore directory. I then
edited Timer.cpp to change the 32-bit assembler into 64-bit assembler,
register name changes only. I added Timer.cpp and Core.cpp to the
dwfcore Makefile and Makefile.am for the libdwfcore_la_SOURCES tag.
In general I had to sprinkle around alot of -fPIC directives in numerous
spots, and I changed all of the build_oem.sh entries that were
--enable-static --disable-shared
to
--enable-shared --disable-static
The change to dynamic linking required adding some -l___ and -L____
directives as called for.
I hope to go back to the 64-bit build when I have time, but maybe the
2.2 version will be out by then.
Good luck!
Kevin Webb
On Tue, 2010-03-30 at 15:15 +0200, adamb at geoform.hu wrote:
> Dear fellows,
> Our office have a 64bit rhel 5.4 linux machine, that I want to use (among
> others) for openmapguide. I passed through fdo install, and build_oem.sh.
> I downloaded some third party libraries newer then what was provided in
> the tarball (namely: libpng, libjped, freetype and agg) Otherwise it's
> clean and tidy. Now I faced errors during build, that I cannot resolve
> alone. Can anyone help, please? Adam
>
> /usr/local/src/MgDev/Oem/DWFTK7.1/develop/global/src/dwf/.libs/libdwftk:
> undefined reference to `DWFCore::AtomicDecrement(int volatile*)'
> /usr/local/src/MgDev/Oem/DWFTK7.1/develop/global/src/dwf/.libs/libdwftk:
> undefined reference to `DWFCore::AtomicIncrement(int volatile*)'
> /usr/local/src/MgDev/Common/Renderers/.libs/libMgRenderers.so: undefined
> reference to `png_check_sig'
> /usr/local/src/MgDev/Oem/DWFTK7.1/develop/global/src/dwf/.libs/libdwftk:
> undefined reference to `DWFCore::DWFTimer::Tick64()'
> /usr/local/src/MgDev/Common/Renderers/.libs/libMgRenderers.so: undefined
> reference to `png_set_gray_1_2_4_to_8'
>
/usr/local/src/MgDev/Oem/DWFTK7.1/develop/global/src/dwfcore/.libs/libdwfcor
e:
> undefined reference to `DWFCore::DWFTimer::Tick32()'
> collect2: ld returned 1 exit status
> make[3]: *** [mgserver] Error 1
> make[3]: Leaving directory `/usr/local/src/MgDev/Server/src/Core'
> make[2]: *** [all-recursive] Error 1
> make[2]: Leaving directory `/usr/local/src/MgDev/Server/src'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/usr/local/src/MgDev/Server'
> make: *** [all-recursive] Error 1
> _______________________________________________
> mapguide-users mailing list
> mapguide-users at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/mapguide-users
>
_______________________________________________
mapguide-users mailing list
mapguide-users at lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/mapguide-users
_______________________________________________
mapguide-users mailing list
mapguide-users at lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/mapguide-users
More information about the mapguide-users
mailing list