Subject: building libcygwin.a and cygwin.dll
From: [email-masked] (banders)

26 Nov 1997 13:59:06 -0800
Message-ID: <[email-masked]>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
To: [email-masked]

Does anyone have from scratch instructions on how to build
libcygwin.a and cygwin.dll from the coolview sources and the original
cdk sources. I tried and gave up. Any takers?

As a starter, here's what I tried before I got discouraged. Liberally
stolen from faq's, release notes and the list + personal mail.

--------     ---------       ---------       --------      ----------

How to rebuild libcygwin.a and cygwin.dll

Start with the
		ftp://ftp.cygnus.com/pub/gnu-win32/latest/
directory

and get cdk.exe or all the files in the `cdk-split' subdirectory. 
Also get the cdk-src.tgz

Combine the split files at the command prompt by doing a: 
copy /b xaa + xab + xac + ... + xag + xah cdk.exe
del xa*.*
Run `cdk.exe' and follow the instructions to install the tools. The
default install location is `<systemdrive>:\gnuwin32\b18'. Future
examples will assume this location with <systemdrive> being the C drive.
 
 create a b18.bat file with the following contents
@echo off
Rem Set your install directory here ( usually c: or d: )
set CYG_INST=C:
PATH=%CYG_INST%\gnuwin32\b18\H-i386-cygwin32\bin;%CYG_INST%\gnuwin32\b18\tcl\bin;%CYG_INST%\gnuwin32\bin;%PATH%:.
set CC=gcc
SET GCC_EXEC_PREFIX=%CYG_INST%\gnuwin32\b18\H-i386-cygwin32\lib\gcc-lib
SET
LIBRARY_PATH=/gnuwin32/b18/H-i386-cygwin32/lib:/gnuwin32/b18/H-i386-cygwin32/i386-cygwin32/lib:.
SET
C_INCLUDE_PATH=/gnuwin32/b18/H-i386-cygwin32/i386-cygwin32/include:/gnuwin32/b18/include
SET CPLUS_INCLUDE_PATH=%C_INCLUDE_PATH%/g++
SET TCL_LIBRARY=%CYG_INST%/gnuwin32/b18/tcl/lib/tcl7.6
SET GDBTK_LIBRARY=%CYG_INST%/gnuwin32/b18/share/gdbtcl
SET TERM=linux
SET HOME=/gnuwin32
SET CYGWIN_TTY=1
cd %CYG_INST%\gnuwin32
set SHELL=/bin/bash
bash
REM end of b18.bat file

Create a shortcut with these properties
Cmd_line:	c:\command.com /e:1500
Working:    c:\gnuwin32               (or wherever you want)
Batch file: c:\gnuwin32\bin\b18.bat   (the one created above)
Close on exit should be clicked
 under Misc, no fast pasting

The paths will have to be adjusted for different install dir's.

run bash by double clicking the shortcut you created
umount /
mount -b c: /
mount -b c:\\gnuwin32\\b18\\h-i386-cygwin32\\bin /bin
mkdir /tmp
mkdir /src
This should put you in ok shape.
 You need to get the signals.h file from the cdk-src_tar.gz file by
typing

tar xzf cdk-src_tar.gz /src/cdk/newlib/libc/include/sys/signal.h

save it away by typing

mv /src/cdk/newlib/libc/include/sys/signal.h .

delete the /src/cdk/newlib and winsup directory trees

get sergey's coolview sources, tar xzf it and put winsup and newlib
where they belong.

Remove #ifdef OLDWAY around import table termination stuff at the end of
winsup/dcrt0.cc and libccrt0.cc

cd /src/cdk
run /src/cdk/configure --host=i386-pc-cygwin32 --target=i386-cygwin32
--prefix=/usr --exec-prefix=/usr/H-i386-cygwin32 -v

Run make.

I had problems with tcl and tk .dll files (ignore for now)
I had a problem with files in /src/cdk/winsup/glob
I fixed by cd /src/cdk/winsup

typed /src/cdk/configure --host=i386-pc-cygwin32 --target=i386-cygwin32
--prefix=/usr --exec-prefix=/usr/H-i386-cygwin32 -v

note a report of autoconfiscation of the directory (what's that all
about?)

then type make

cd glob;make;
cd /src/cdk/newlib and run configure as above then make

repeat as needed till you get a cygwin.dll

Replace the old cygwin.dll, libcygwin.a and ps.exe with the new one just
compiled.

To build a bash just grab bash-2.01.1 sources from prep.ai.mit.edu,
untar it and run configure and make.

-- 
Bartlee A. Anderson     System Test (Interfaces-Tools-Automation-ISDN)
Rockwell International                    Electronic Commerce Division
300 Bauman Ct.                                [email-masked]
MS 933-605      Opinions my own, not Rockwell's   VOICE (630) 227-8975
Wood Dale, IL 60191                               FAX   (630) 227-9771
-
For help on using this list (especially unsubscribing), send a message to
"[email-masked]" with one line of text: "help".