Back Midas Rome Roody Rootana
  Root Display GUI  Not logged in ELOG logo
Entry  29 Nov 2005, Joe Chuma, Release, roody directory reorganization and Makefile changes 
    Reply  07 Dec 2005, Stefan Ritt, Info, roody directory reorganization and Makefile changes 
    Reply  19 Dec 2005, Konstantin Olchanski, Release, roody directory reorganization and Makefile changes 
Message ID: 104     Entry time: 07 Dec 2005     In reply to: 103
Author: Stefan Ritt 
Topic: Info 
Subject: roody directory reorganization and Makefile changes 
> 1) roody has been converted from libxml2 to mxml
> 2) the files have been shuffled around so the *.cxx, *.cpp files
>    are in the roody/src/ directory, the *.h files are in the
>    roody/include/ directory, the Makefile is in the top roody/
>    directory which is where the roody executable goes while
>    roody.so now goes into the roody/lib/ directory. The mxml
>    files are in roody/mxml.  The *.o files now go into the
>    roody/obj/ directory (which is created by the Makefile if
>    it doesn't exist).
> 3) the Makefile has been redone and simplified, and the windows
>    stuff removed, since the windows version has its own makefile.
> 4) clicking on the Help About menu item now displays a message box
>    with the current version.  For now, the code must be edited
>    manually for each code revision, but it would be nice to automate
>    this. 

Compilation under Windows now works fine, many thanks.

I had however a problem under windows. Your scheme with the rootsys.h file does
not work under windows, since the ROOTSYS variable usually points to something
like c:\root. If I follow your scheme, I get following in rootsys.h

const char* rootsys = "c:\root";

where the "\r" is interpreted as a carriage return. I did not find a clever way to
convert this to 

const char* rootsys = "c:\\root";

in the Makefile, so for windows I just make it empty, like

const char* rootsys = "";

I changed your src/main.cxx to check for an empty rootsys, and if yes just take
the environment variable. I committed that change, I hope it's ok.

There is one small warning left whern running under windows;

C:\roody>bin\roody
Error in <TWinNTSystem::BaseName>: name = 0

Do I have to worry about that?

- Stefan
ELOG V3.1.4-2e1708b5