Mail Archives: cygwin/2001/08/09/22:00:19
>>Have you installed cygwin on their machine (via setup.exe?)
>>
>
> No I haven't. This program must be distributed to many
> computer-illiterate people who won't want that. That's why I linked
> statically, but you are probably right that something is still missing.
> Strangely, the prog. executes fine on my 98 box, even from a dos shell
> that doesn't have the Cygwin bin in its search path. AFAIK, that means
> that the only part of the Cygwin system it can be seeing is cygwin1.dll,
> which is in the windows/system directory.
AAAAGGGGGGGGGHHHHHHHHH!!!!!!!!!
Don't DO that. If you MUST use just the cygwin1.dll (without using
setup to do a barebones install), then at LEAST put the dll in the same
dir as the executable, and not into winnt/system32.
But I don't think that will work, either. See, ncurses uses an on-disk
database for most of its knowledge about various terminals'
characteristics. (Some terminal definitions are compiled-in, but not
many: xterm, vt100, ansi, I think. The choice of which terminals are
"compiled-in" is set when then ncurses package is built; I just used the
defaults set by the main ncurses developers)
Anyway, this means that if you link to ncurses, then your code will hunt
for that database in the default location: /usr/share/terminfo/. But,
without a "real" cygwin installation, there are no regsitry entries to
indicate where "/" is, so how can "/usr/share/terminfo" be found?
Of course, since you linked to ncurses statically, you probably aren't
even installing the ncurses package -- which contains the terminfo
database. So even if your app *could* find /usr/share/terminfo --
there's nothing there in your "installation".
Now, you might decide that you can use libtermcap instead of ncurses.
But termcap needs to be able to locate /etc/termcap, which brings us
back to the same problem.
Basically, if you want to distribute a cygwin-based program, you really
ought to instruct your users to install (a minimal version of) cygwin
itself. And don't forget your GPL obligations.
BTW, you can search the mailing lists for the following: a while back
someone was investigating how to install the cygwin dist on a network
share, and then replicate the necessary registry entries on client
machines...I believe they were successful, but that "installation"
method is not really supported.
--Chuck
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
- Raw text -