building xalanc using msvc++ 2005 express edition

Discussion in 'XML' started by hsmit.home@gmail.com, Sep 21, 2007.

  1. Guest

    I spent way too much time on this and I must say, I was a little
    disgruntled with what has been posted on all the various Xalan C
    mailing lists. Everyone says there's a solution, but give next to no
    detail on how to achieve this "allusive" solution. Well I spent the
    better part of a day finally figuring it out the hard way, trial and
    error.

    Here's a list of steps to compile the Xalan C version 1.10.0 on
    Microsofts Visual C++ 2005 Express Edition (MSVC++ 2005 Express Ed.)

    NOTE: these are only the steps to compile the Release version, I never
    got around to figuring out how to compile it in Debug mode (I ran into
    some more problems)

    NOTE: Xerces and Xalan were compiled in the c:\dev directory, you can
    of course compile it any where you like.


    XERCES
    ======
    1) Download xerces-c-src_2_7_0.zip and unzip it in c:\dev
    2) Copy the contents of C:\dev\xerces-c-src_2_7_0\Projects\Win32\VC7.1
    into a newly created VC8 directory
    3) Open Projects\Win32\VC8\xerces-all.sln. It will automatically get
    converted to MSVC++ express edition Solutions
    4) Set the solution configuration to Release
    5) Right mouse click on the XercesLib project and select Properties
    6) in the C++ and Linker sections change all VC7.1 directories to VC8
    7) C++ -> Advanced -> Disable Specific Warnings = 4996
    8) C++ -> Language -> Treat w_char as Built in type = NO
    9) Remove XercesLib\util\WIN32\version.rc file from the project.
    10) Compile only the XercesLib project

    11) Change the Tools -> Options -> Projects and Solutions -> VC++
    Directories:
    Include Files: C:\dev\xerces-c-src_2_7_0\src
    Library files: C:\dev\xerces-c-src_2_7_0\Build\Win32\VC8\Release

    12) My Computer->Properties->Advanced->Environement Variables
    XERCESCROOT:C:\dev\xerces-c-src_2_7_0


    XALAN
    =====

    1) Downloaded source distro. Xalan-C_1_10_0-src.zip 2,894,892 bytes
    2) unziped to c:\dev directory
    3) Copy the contents of C:\dev\xml-xalan\c\Projects\Win32\VC7.1 into a
    newly created VC8 directory
    4) Open Projects\Win32\VC8\Xalan.sln. It will automatically get
    converted to MSVC++ express edition Solutions
    4) Set the solution configuration to Release
    5) Right mouse click on the AllInOne project and select Properties
    6) in the C++ and Linker sections change all VC7.1 directories to VC8
    7) C++ -> Advanced -> Disable Specific Warnings = 4996
    8) C++ -> Language -> Treat w_char as Built in type = NO
    9) Remove AllInOne\Resource Files\allinone.rc file from the project.

    compiling localisation
    ----------------------
    1) Update the following files (from the C:\dev\xml-xalan\c\ root):
    Projects\Win32\VC8\Utils\Localization\tools.ini
    Projects\Win32\VC8\Utils\Localization\BuildMessages.mak
    Projects\Win32\VC8\Utils\MsgCreator\MsgCreator.mak
    Projects\Win32\VC8\Utils\XalanMsgLib\XalanMsgLib.mak

    2) All places that have a VC7.1, change to VC8
    3) tools.ini : comment [NMAKE] -> #[NMAKE]
    4) BuildMessages.mak : insert the following line at the top : include
    tools.ini

    5) MsgCreator.mak: change the following line,
    CPP_PROJ=/nologo /W4 /EHsc /wd4996 /Zc:wchar_t- /O2 /I ".\\" /I $
    (XALANINCLUDE) $(XERCESINCLUDE) /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /
    D "_MBCS" /Fp"$(INTDIR)\MsgCreator.pch" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\
    \" /FD /c
    to,
    CPP_PROJ=/nologo /ML /W4 /GX /O2 /I ".\\" /I $(XALANINCLUDE) $
    (XERCESINCLUDE) /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /Fp"$
    (INTDIR)\MsgCreator.pch" /YX /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /c

    6) XalanMsgLib.mak: change the following line,
    CPP_PROJ=/nologo /MD /W4 /GX /O2 $(XERCESINCLUDE) /I "..\..\..\..\..
    \src" /I ".\$(BUILDRESDIR)\Nls\Include" /D "WIN32" /D "NDEBUG" /D
    "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "XALANMSGLIB_EXPORTS" /D
    "XALAN_XALANMSGLIB_BUILD_DLL" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /
    c
    to,
    CPP_PROJ=/nologo /MD /W4 /EHsc /O2 $(XERCESINCLUDE) /I "..\..\..\..\..
    \src" /I ".\$(BUILDRESDIR)\Nls\Include" /D "WIN32" /D "NDEBUG" /D
    "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "XALANMSGLIB_EXPORTS" /D
    "XALAN_XALANMSGLIB_BUILD_DLL" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /
    c

    7) Ensure that the Release build is active

    8) Right-mouse click on the Localization project -> Project Only - >
    Build only Localization

    11) Change the Tools -> Options -> Projects and Solutions -> VC++
    Directories:
    Include Files: C:\dev\xml-xalan\c\src
    xxx Library files: C:\dev\xerces-c-src_2_7_0\Build\Win32\VC8\Release

    12) Build AllInOne Project



    That's it! Don't let the number of steps and the compiler switches
    intimidate you. It's not so bad. I've been discovering the wonderful
    world of server side / C++/ XSLT processing, ever since - and it's a
    beautiful thing.

    I hope this helps.
     
    , Sep 21, 2007
    #1
    1. Advertising

  2. wrote:
    > detail on how to achieve this "allusive" solution.


    I think you meant "elusive", but thanks for posting the step-by-step. I
    hope you've posted it to Xalan's own mailing lists as well as comp.text.xml.

    (I haven't tried building Xalan C since shortly after we first started
    to port it over from Java, and I don't have/use MS VC++, so I really
    couldn't have offered much advice.)

    --
    () ASCII Ribbon Campaign | Joe Kesselman
    /\ Stamp out HTML e-mail! | System architexture and kinetic poetry
     
    Joe Kesselman, Sep 21, 2007
    #2
    1. Advertising

  3. Guest

    I should spell check more often, spelling mistakes are a bit silly in
    this day and age (built in browser spell checkers).

    I'm a little new to the news group thing, I'm more of a reader rather
    than a poster. I would like to change that.

    Here's a silly question. How does one post a message on the xalanc
    news group? I assume it's just a matter of sending an email to that
    specific news group and providing the identical subject heading to
    ensure a response to the posted subject? I'm also assuming the XalanC
    news group email address is:


    Thanks.
     
    , Sep 21, 2007
    #3
  4. wrote:
    > Here's a silly question. How does one post a message on the xalanc
    > news group?


    It's a mailing list, not a newsgroup. See
    http://xml.apache.org/mail.html#xalan-c-users

    To subscribe, send a note to


    Posting to it is just a matter of sending mail to

    --
    Joe Kesselman / Beware the fury of a patient man. -- John Dryden
     
    Joseph Kesselman, Sep 21, 2007
    #4
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Heikki Toivonen
    Replies:
    1
    Views:
    392
    Vincent Wehren
    May 6, 2006
  2. Olaf
    Replies:
    2
    Views:
    1,496
    Joseph Kesselman
    Jul 10, 2007
  3. Replies:
    8
    Views:
    608
    James Kanze
    Nov 21, 2007
  4. black_13
    Replies:
    3
    Views:
    326
    Martin v. Löwis
    Dec 11, 2007
  5. Jake Henderson

    Visual Web Developer 2005 Express and SQL 2005 Express

    Jake Henderson, Mar 10, 2006, in forum: ASP .Net Web Services
    Replies:
    0
    Views:
    262
    Jake Henderson
    Mar 10, 2006
Loading...

Share This Page