[I had to hand-approve this mail, since it contains "subscribe"
in the first few lines. Martin Maechler, list administrator]
1) This is very interesting stuff.
2) But it really belongs on R-devel, not R-help. R-help is for helping
users with installing and using R, not debating its future or
discussing technical issues. Could I ask you to subscribe and then we
move the discussion there? (Don't worry, R-devel is not a very high
volume list.)
guido@sirio.stat.unipd.it writes:
I have been using R under Linux for more than a year and
I think that it is great.
Last week, I downloaded the binary Ms Windows version. I wanted
to test it for my students. Our labs are under Bill Gates.
I am not happy but I can do nothing.
Same thing here.
R worked. But, I could not use the dyn.load command
...
No dyn.load means no additional packages. Since I don't want
to buy a commercial compiler to support free software, this
morning I tried to recompile the 0.61.1 distribution with
egcs. Now, after more than 10000 grep's to understand
the differences between the windows sources and the unix ones,
I have a version of R-0.61.1 under Win95. It works.
I tried essentially the same stunt, but couldn't figure out how to get
the Windows console and graphics going, "Multiple Document Interface"
and all that. In particular, there's trouble with the gnuwin header
files versus the MS Platform SDK used in the sources. Does this mean
that you have a version running just like the "official" one? And
could it run under Win3 too?
It seems
also a little faster than the october binary version
(perhaps since I compiled the fortran sources directly
using g77).
I wouldn't be surprised, although Watcon does some register-passing
tricks, which one would think made it faster, (as well as incompatible
with other C compilers...!)
But I have some questions:
(a) The windows sources in R-0.61.1 are not the ones used
to build the last windows distribution in CRAN. For example,
the menus are different and also the src/library/base/R/system.win has no
support for library. Where can I find the new sources?
In the R-snapshot at CRAN (src/devel), I think. The very latest
versions are on Roberts computer...
(b) I prepared a Makefile that build the system using the
directory structure of R-0.61.1 under unix. But I don't known
the differences between the the 0.61 version and the 0.50.xxx
for which src/library/base/R/system.win. has been wrote.
Where can I find a description of the differences?
Hmm. I don't know exactly what you mean here. I don't think that there
is a true writeup documenting any of this.
(c) Is someone interested in this port?
Definitely!
If yes, I can make it available.
I tried to make rebuilding easy. Essentially, you untar a small archive
in src/ (essentially the makefiles and the pacthed windows sources).
Then
make RHOME=??? firstofall
make RHOME=??? HAVEG77=[YES,NO]
make RHOME=??? HAVEG77=[YES,NO] packages
should build and install the system with all the packages in src/library;
make RHOME=??? HAVEG77=[YES,NO] pkg-???
will make the package ???. You need gnu-make+sed+rm+cp+ls.
( perhaps also a sh-like shell (I used bash)).
I have not tried but this should work also with the Cygnus and
the gcc-mingw32 port of gcc. Indeed, for this reason, I used the
HAVEG77 flag.
How about the cross-compilers?
I believe that is not appropriate to make a binary distribution available
before (i) the base/R/system.win file has been fixed (or at least
before I, or better, someone else understand, what is going);
(ii) more testing.
Agreed, but binaries (of R *and* all the packages) will in a
not-so-long perspective be needed for practical people.
(d) I tried to recompile the regex library in the src/regex
directory. But there is no regex.h file. So, I gave up.
(d1) Are the source there to let people without regex
to build the library? If yes, how?
Where can I find the regex.h file for that
version of the library which is not the gnu rl one?
(d2) Have someone tried to use some free regex library
under mingw32?
Hmm. Does this line in src/regex/WHATSNEW ring a bell? (Not that I
know what I'm talking about, I just use grep...)
you have to build regex.h explicitly by "make h". The two known bugs
(e) The last point is a proposal for a medium term project.
The modifications that I made were necessary to update the
windows sources to the changes made in the system interface
(R_ReadConsole, R_WriteConsole,....). Now, the gnuplot people
has developed a layer between stdio and a windows console
(a graphics not a ms-dos one). In this way, for example,
just doing some #undef and some #define, you can printf
on the console. They also have a version of readline.
If we borrow the layer we can hope to use the unix/system.c
file without changes (or with few changes). And hence,
it will be easier for the developers to bring the MsWindows
version update with the main unix one.
This sounds interesting. An alternative that I have been playing with
is to use Tcl/Tk, with a longer term perspective of developing R/Tk
language bindings like in STk (Scheme/Tk). This could have the benefit
of automatic (hah!) *Mac* portability.
Note, BTW, that some substantial changes have been made in the
nonreleased 0.62 version (see aforementioned snapshot) to the parser
and I/O parts, specifically to cater for windowing systems.
O__ ---- Peter Dalgaard Blegdamsvej 3
c/ /'_ --- Dept. of Biostatistics 2200 Cph. N
(*) \(*) -- University of Copenhagen Denmark Ph: (+45) 35327918
~~~~~~~~~~ - (p.dalgaard@biostat.ku.dk) FAX: (+45) 35327907
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-devel mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !) To: r-devel-request@stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._
There has been some talk about missing header files for compiling the
windows stuff under gcc . A company called Willows (www.willows.com)
produces a set of tools for porting Windows programs to other platforms,
including the necessary header files, all under the GNU LGPL. This might
have the files we need (I don't know enough about the problem to tell for
sure).
-thomas
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-devel mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !) To: r-devel-request@stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._
Thomas Lumley <thomas@biostat.washington.edu> writes:
There has been some talk about missing header files for compiling the
windows stuff under gcc . A company called Willows (www.willows.com)
produces a set of tools for porting Windows programs to other platforms,
including the necessary header files, all under the GNU LGPL. This might
have the files we need (I don't know enough about the problem to tell for
sure).
-thomas
These were checked out by someone on the Gnuwin32 list a couple of
weeks ago and were found inadequate. I also tried them myself without
luck at some point.
Basically, every time you try to lift header files off of another
package in this game you find that they are incompatible in some
*other* aspect and cause your programs to get burnt to cinders in an
astounding flurry of error messages...
As I understand Guido M's work, he's filled in the few gaps necessary
to get the current R/Windows functions to run by inserting the
relevant definitions by hand. I think most of these definitions are
already in *some* freeware toolkit, so they're not likely to cause
legal trouble (and the possibility of copyrighting the information
that WM_DDE_FIRST is 0x03E0 etc., is dubious in the first place). I
haven't gotten around to looking at the details (today was crazy
enough already!) but I expect that what he's done already should make
it possible to do what we want as far as current sources are
concerned. Trouble may arise as we try to improve the Win32 functions,
though.
There are two obvious pathways to proceed along in that case:
1) Figure out exactly what you *can* do with the gnu headers and use
that. Obviously requires knowledge of the Win32 API.
2) Use a portable toolkit. V, wxWindows, Tcl/Tk, with the latter
appealing quite a bit to me as I've already indicated on a number of
occasions.
O__ ---- Peter Dalgaard Blegdamsvej 3
c/ /'_ --- Dept. of Biostatistics 2200 Cph. N
(*) \(*) -- University of Copenhagen Denmark Ph: (+45) 35327918
~~~~~~~~~~ - (p.dalgaard@biostat.ku.dk) FAX: (+45) 35327907
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-devel mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !) To: r-devel-request@stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._
"Peter" == Peter Dalgaard BSA <p.dalgaard@biostat.ku.dk> writes:
"Peter" == Peter Dalgaard BSA <p.dalgaard@biostat.ku.dk> writes:
Peter> 2) Use a portable toolkit. V, wxWindows, Tcl/Tk, with the
Peter> latter appealing quite a bit to me as I've already
Peter> indicated on a number of occasions.
I have just started looking into the "latter". I've done some work
with Tcl/Tk but I am just looking seriously at R sources now. Should
we form a core group to coordinate this effort? This might help me come
up to speed quickly.
________________________________________________________________
B. Narasimhan naras@stat.stanford.edu
http://www-stat.stanford.edu/~naras
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-devel mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !) To: r-devel-request@stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._