* how-programming.texinfo: Add details about building a debugging version of the DLL.

* how-using.texinfo: Correct rxvt README location.
* install.texinfo: Add mount -m note to uninstall instructions.
This commit is contained in:
Joshua Daniel Franklin 2005-01-22 19:12:33 +00:00
parent 4c133af135
commit 672879cab6
5 changed files with 62 additions and 56 deletions

View File

@ -1,3 +1,11 @@
2005-01-22 Joshua Daniel Franklin <joshuadfranklin@yahoo.com>
* how-api.texinfo: Make snapshot URL an HTML link.
* how-programming.texinfo: Add details about building a
debugging version of the DLL.
* how-using.texinfo: Correct rxvt README location.
* install.texinfo: Add mount -m note to uninstall instructions.
2005-01-21 Christopher Faylor <cgf@timesys.com> 2005-01-21 Christopher Faylor <cgf@timesys.com>
* how-programming.texinfo: Remove obsolete w32api instructions and add * how-programming.texinfo: Remove obsolete w32api instructions and add

View File

@ -26,8 +26,7 @@ is going on). They are only intended for those people who wish to
contribute code to the project. If you aren't going to be happy contribute code to the project. If you aren't going to be happy
debugging problems in a buggy snapshot, avoid these and wait for a real debugging problems in a buggy snapshot, avoid these and wait for a real
release. The snapshots are available from release. The snapshots are available from
http://cygwin.com/snapshots/ @file{http://cygwin.com/snapshots/}.
@subsection How is the DOS/Unix CR/LF thing handled? @subsection How is the DOS/Unix CR/LF thing handled?

View File

@ -301,13 +301,12 @@ rewriting the runtime library in question from specs...
Thanks to Jacob Navia (root at jacob dot remcomp dot fr) for this explanation. Thanks to Jacob Navia (root at jacob dot remcomp dot fr) for this explanation.
@subsection How do I rebuild the tools on my NT box? @subsection How do I build Cygwin on my own?
Install all required components in one directory (we'll call it /src). First, you need to get the Cygwin source. Ideally, you should check out
Ideally, you should check out what you need from CVS what you need from CVS (@file{http://cygwin.com/cvs.html}). This is the
(@file{http://cygwin.com/cvs.html}). This is the @emph{preferred @emph{preferred method} for acquiring the sources. Otherwise, you can
method} for acquiring the sources. Otherwise, you can install the install the cygwin source package from the distribution.
appropriate source packages from the cygwin distribution.
If you are trying to duplicate a cygwin release then you should just If you are trying to duplicate a cygwin release then you should just
download the corresponding source package and use "tar xjf" to unpack download the corresponding source package and use "tar xjf" to unpack
@ -315,63 +314,65 @@ it. This will unpack the sources into a directory named cygwin-x.y.z-n,
where x.y.z-n correspond to the version numbering of the tar.bz2 where x.y.z-n correspond to the version numbering of the tar.bz2
package. package.
You @emph{must} build cygwin in a separate directory from the source. @example
So, create something like a /obj directory. You'll be performing tar xjf cygwin-1.5.12-1-src.tar.bz2
your build in that directory: cd cygwin-1.5.12-1
@end example
You @emph{must} build cygwin in a separate directory from the source,
so create something like a @samp{build/} directory. You will also want
to install to a temporary location:
@example @example
bash mkdir build
cd /obj mkdir /install
/src/configure --prefix=/install -v > configure.log 2>&1 cd build
make > make.log 2>&1 (../configure --prefix=/install -v; make) >& make.out
make install > install.log 2>&1 make install > install.log 2>&1
@end example @end example
Normally, this procedure ignore errors in building the documentation, Normally, this procedure ignore errors in building the documentation.
which requires tools which are not included in the Cygwin distribution. which requires the @samp{docbook-xml}, @samp{docbook-xsl}, and
If you want to build the documentation on Linux, on most distributions a @samp{xmlto} packages. For more information on building the
package named docbook-utils should get you most of what you need. For documentation, see the README included in the cygwin-doc package.
more information on building the documentation, see the README included
in the cygwin-doc package.
To check a cygwin1.dll, run "make check" in the winsup/testsuite directory. To check a cygwin1.dll, run "make check" in the winsup/testsuite
If that works, install everything @emph{except} the dll (if you can). directory. If that works, install everything @emph{except} the dll (if
Then, close down all cygwin programs (including bash windows, inetd, you can). Then, close down all cygwin programs (including bash windows,
etc.), save your old dll, and copy the new dll to the correct place. inetd, etc.), save your old dll, and copy the new dll to the correct
Then start up a bash window, or run a cygwin program from the Windows place. Then start up a bash window, or run a cygwin program from the
command prompt, and see what happens. Windows command prompt, and see what happens.
If you get the error "shared region is corrupted" it means that two If you get the error "shared region is corrupted" it means that two
different versions of cygwin1.dll are running on your machine at the different versions of cygwin1.dll are running on your machine at the
same time. Remove all but one. same time. Remove all but one.
@subsection How can I compile a powerpc NT toolchain? @subsection I may have found a bug in Cygwin, how can I debug it (the symbols in gdb look funny)?
@strong{(Please note: This section has not yet been updated for the latest Debugging symbols are stripped from distibuted Cygwin binaries, so any
net release.)} symbols that you see in gdb are basically meaningless. It is also a good
idea to use the latest code in case the bug has been fixed, so we
recommend trying the latest snapshot from
@file{http://cygwin.com/snapshots/} or build the DLL from CVS.
Unfortunately, this will be difficult. It hasn't been built for To build a debugging version of the Cygwin DLL, you will need to follow
some time (late 1996) since Microsoft has dropped development of the instructions at @file{http://cygwin.com/faq/faq_3.html#SEC102},
powerpc NT. Exception handling/signals support semantics/args have been adding the @samp{--enable-debugging} option to @samp{../configure}. You
changed for x86 and not updated for ppc so the ppc specific support would can also contact the mailing list for pointers (a simple test case that
have to be rewritten. We don't know of any other incompatibilities. demonstrates the bug is always welcome).
Please send us patches if you do this work!
@subsection How can I compile an Alpha NT toolchain? @subsection How can I compile Cygwin for an unsupported platform (PowerPC, Alpha, ARM, Itanium)?
@strong{(Please note: This section has not yet been updated for the latest Unfortunately, this will be difficult. Exception handling and signals
net release.)} support semantics and args have been designed for x86 so you would need
to write specific support for your platform. We don't know of any other
We have not ported the tools to Alpha NT and do not have plans to incompatibilities. Please send us patches if you do this work!
do so at the present time. We would be happy to add support
for Alpha NT if someone contributes the changes to us.
@subsection How can I adjust the heap/stack size of an application? @subsection How can I adjust the heap/stack size of an application?
@strong{(Please note: This section has not yet been updated for the latest If you need to change the maximum amount of memory available to Cygwin, see
net release.)} @file{http://cygwin.com/cygwin-ug-net/setup-maxmem.html}. Otherwise,
just pass heap/stack linker arguments to gcc. To create foo.exe with
Pass heap/stack linker arguments to gcc. To create foo.exe with
a heap size of 1024 and a stack size of 4096, you would invoke a heap size of 1024 and a stack size of 4096, you would invoke
gcc as: gcc as:
@ -398,11 +399,8 @@ bash.)
@subsection How do I build a DLL? @subsection How do I build a DLL?
@strong{(Please note: This section has not yet been updated for the latest There's documentation that explains the process in the Cygwin User's
net release.)} Guide here: @file{http://cygwin.com/cygwin-ug-net/dll.html}
There's documentation that explains the process on the main Cygwin
project web page (http://cygwin.com/).
@subsection How can I set a breakpoint at MainCRTStartup? @subsection How can I set a breakpoint at MainCRTStartup?
@ -542,9 +540,6 @@ process being debugged.
@subsection The linker complains that it can't find something. @subsection The linker complains that it can't find something.
@strong{(Please note: This section has not yet been updated for the latest
net release.)}
A common error is to put the library on the command line before A common error is to put the library on the command line before
the thing that needs things from it. the thing that needs things from it.

View File

@ -712,7 +712,7 @@ middle mouse buttons, respectively. It will honor settings in your
Don't invoke as simply ``rxvt'' because that will run /bin/sh (really Don't invoke as simply ``rxvt'' because that will run /bin/sh (really
ash) which is not a good interactive shell. For details see ash) which is not a good interactive shell. For details see
@code{/usr/share/doc/Cygwin/rxvt-<ver>.README}. @code{/usr/doc/Cygwin/rxvt-<ver>.README}.
@subsection info error "dir: No such file or directory" @subsection info error "dir: No such file or directory"

View File

@ -272,6 +272,10 @@ It's up to you to deal with other changes you made to your system, such
as installing the inetd service, altering system paths, etc. Setup as installing the inetd service, altering system paths, etc. Setup
would not have done any of these things for you. would not have done any of these things for you.
If you want to save your mount points for a later reinstall, save the
output of @samp{mount -m} as described at
@file{http://cygwin.com/cygwin-ug-net/using-utils.html#mount}.
@subsection How do I install snapshots? @subsection How do I install snapshots?
First, are you sure you want to do this? Snapshots are risky. They First, are you sure you want to do this? Snapshots are risky. They