|
From: Hardy G. <nt...@ma...> - 2005-02-10 21:14:39
|
Perhaps someone is interested in my experiences compiling gnuplot 4.1 under cygwin: one has to mount the source tree to 'text' to get gnuplot compiled successfully. E.g. mount -f -s -t "d:/src" "/src" Hardy |
|
From: Hardy G. <nt...@ma...> - 2005-02-10 21:32:33
|
I love to respond to myself, but I think I have to clarify a little bit: if the source tree is mounted with the text option, compilation will work as one expects: ./prepare ./configure make make install Of course 'some' cygwin packets have to be installed before. Hardy |
|
From: Petr M. <mi...@ph...> - 2005-02-11 10:53:42
|
> if the source tree is mounted with the text option, compilation will > work as one expects: > > ./prepare > ./configure > make > make install I have all cygwin mounts with binmode, and it works as expected as well. (For portability, I prefer files with LF, not CRLF.) --- PM |
|
From: Hardy G. <nt...@ma...> - 2005-02-11 22:37:07
|
Petr Mikulik wrote: >>if the source tree is mounted with the text option, compilation will >>work as one expects: >> >>./prepare >>./configure >>make >>make install > > > I have all cygwin mounts with binmode, and it works as expected as well. > (For portability, I prefer files with LF, not CRLF.) Funny. This is perhaps the problem: I checked out gnuplot with tortoisecvs without explicitly saying 'use UNIX line endings' i.e. \n only. I also must state, that I identified this as the problem, because config.* had filenames containing ^M in it (i.e. \r). Perhaps a note in the INSTALL could help other people to not fall into this pit... Hardy |
|
From: Hans-Bernhard B. <br...@ph...> - 2005-02-12 09:57:03
|
Hardy Griech wrote: > Funny. This is perhaps the problem: I checked out gnuplot with > tortoisecvs without explicitly saying 'use UNIX line endings' i.e. \n only. That most certainly is exactly the problem. Yes, the actual files must be compatible with cygwin's "mount" option for the volume the files are on (unless that mount option is "auto", in which case it shouldn't matter). A text-mode mount will work with whatever files, but a bin-mode mount won't work with CRLF-style text files. |
|
From: Hardy G. <nt...@ma...> - 2005-02-12 10:20:42
|
Hans-Bernhard Broeker wrote: : > That most certainly is exactly the problem. Yes, the actual files must > be compatible with cygwin's "mount" option for the volume the files are > on (unless that mount option is "auto", in which case it shouldn't > matter). A text-mode mount will work with whatever files, but a > bin-mode mount won't work with CRLF-style text files. Unfortunately there is no "auto" option for cygwins mount. What I've understood so far is, that it is safer to mount with text. Is this right? What will happen if actually binary files are opened for reading? Will a \r\n sequence cut down to \n or how is the mode then detected? Seems to me that this is more a cygwin issue... Hardy |
|
From: Hans-Bernhard B. <br...@ph...> - 2005-02-12 10:52:19
|
Hardy Griech wrote: > Unfortunately there is no "auto" option for cygwins mount. There's on in their libc, but apparently it's *still* not been exported to the mount options.... > What I've understood so far is, that it is safer to mount with text. For correctly ported programs: yes. Standard C and POSIX only know two kinds of opening files: "binary" and "default". If a program expects files to keep all their bits, it's supposed to say so by activating binary mode. Failure to do so is, at least technically, a bug. > What will happen if actually binary files are opened for > reading? If the program explicitly used binary mode, they'll be opened as binary, regardless of the mount option. > Will a \r\n sequence cut down to \n or how is the mode then > detected? It's not supposed to be necessary to "detect" the mode --- the program opening the file is supposed to know what it's doing, and tell the OS. In other words: programs can fail to work in a text-mode mounted system --- but if they do, that's clearly the programs' fault. Binary mode mounts are essentially a way to deliberately break the OS to make it compatible with broken programs. |
|
From: Hardy G. <nt...@ma...> - 2005-02-12 13:00:06
|
Hans-Bernhard Broeker wrote: : > In other words: programs can fail to work in a text-mode mounted system > --- but if they do, that's clearly the programs' fault. Binary mode > mounts are essentially a way to deliberately break the OS to make it > compatible with broken programs. : Hi Hans-Bernhard, many thanks for the explanation! So I will remount my cygwin-drives with the text option. Hardy |