Cygwin Installation

The Cygwin toolkit provides Unix tools on the Windows platform. You need only install the Cygwin toolkit if you are rebuilding from source and intend to develop your own actors using Java.

Note that compile your own actors, you will also need the javac compiler. The javac compiler is part of the JDK, which is available at: http://java.sun.com/j2se/1.4.2/. The javac compiler is not present in the Java Runtime Environment (JRE)

The Cygwin home page is at http://sources.redhat.com/cygwin/

Complete installation instructions can be found at http://sources.redhat.com/cygwin/faq.

Installing Cygwin from the self-extracting executable

Compiling the Ptolemy II Matlab interface and Java Native Interface (JNI) actor requires that the a C compiler be installed. The Matlab interface requires that Matlab be installed on the local machine.

Note that The Matlab Interface does not work gcc3.3. Under Windows, the Matlab interface has problems at runtime with gcc-3.3.
Under Windows, we recommend using gcc-3.2 or Microsoft Visual C++.
The Cygwin Windows installer below includes gcc-3.3 If you want to install gcc-3.2, see the Ptolemy II 4.0 Cygwin Instructions.
The gcc compiler is fairly large, so we provide three separate self-extracting downloads of the cygwin tools for Windows.

  1. cygwin050505basic.exe (13.8 Mb) - The tools necessary to compile and configure Ptolemy II except for the Matlab interface.
  2. cygwin050505devel.exe (34.3 Mb) - The tools necessary to compile and configure Ptolemy II including the Matlab interface and the JNI Actor. This download includes everything in cygwin050505basic.exe above.

The sources for the above downloadables can be found in cygwin050505develsrc.exe (115.2 Mb)

Cygwin Installation instructions

  1. Most Ptolemy II users will
    Download and execute cygwin050505basic.exe (13.8 Mb)
    If you are running under Windows and have Matlab installed on your local machine, then
    Download and execute cygwin0505devel.exe (34.3 Mb).
    The files will be extracted to an seemingly arbitrary directory. You may find it easier to change the directory to something short, like c:\temp\cygwin.
  2. setup.exe should start up automatically for you.
  3. Click on Next
  4. Install from Local Directory should already be selected for your. Click on Next.
  5. Keep the default of C:\cygwin for the Select Root Install Directory.
    Keep the default All Users,
    Change the Default Text File Type to DOS
    (If you select Unix instead of DOS, then you will likely have Cygwin CR/NL problems with CVS)
    and then click on Next.
  6. Keep the default for Local Package Directory and click on Next.
  7. The Select packages to install window will come up with the default settings, we need to change from default to install click on the word default that is to the right of All. The subpages should then change from default to Install. In the screen shot below, we have just clicked on default: Cygwin Setup
  8. Select Next, which will install all the packages.
  9. Select Create Desktop Icon and Add to Start Menu according to your preferences.
  10. Remove the temporary directory where you extracted the files.
  11. c:/cygwin/etc/passwd is created during the Cygwin installation. If your Windows account is a domain account and not a local account, then you may need to add an entry to c:/cygwin/etc/passwd by hand.
    To do this, start up the Cygwin bash shell with Start ->?Cygwin
    Then use the mkpasswd command to append a line with your login information, for example, I used:
     mkpasswd -d -u cxh --path-to-home=/cygdrive/c/users >> /etc/passwd
    
    mkpasswd -h will print out help for the mkpasswd command
  12. Follow the instructions in the Set the value of the PTII environment variable section

Installing Cygwin from the Web

We provide prebuilt downloads of the subset of Cygwin tools needed to recompile Ptolemy II. The Cygwin tools are constantly being updated, for the latest versions, see the Cygwin website.

Instructions for installing Cygwin from the Cygwin website can be found on the for Ptolemy II Installation Page

Enabling Copy in Cygwin Bash under XP

You may need to enable copy and paste in the bash shell window.

If copy and paste are working properly, then you should be able to highlight text by left clicking and dragging the mouse over the text and then hitting the Enter key to copy the highlighted text.

The Cygwin faq at http://www.cygwin.com/faq/faq.html#SEC55 says:

How can I copy and paste into Cygwin console windows?

Under Windows NT, open the properties dialog of the console window. The options contain a toggle button, named "Quick edit mode". It must be ON. Save the properties.

Under Windows 9x, open the properties dialog of the console window. Select the Misc tab. Uncheck Fast Pasting. Check QuickEdit.

You can also bind the insert key to paste from the clipboard by adding the following line to your .inputrc file:

    "\e[2~": paste-from-clipboard 
More precisely:
  1. Start up bash by doing Start -> Programs -> Cygwin -> Cygwin Bash Shell.
  2. Right click on the icon in the upper left of the title bar and select properties
  3. Under Options, select 'QuickEdit Mode', hit ok
  4. Select 'Modify shortcut that started this window', hit ok

Cygwin download contents

The download of basic cygwin tools from April, 2003 includes:

_update-info-dir-00232-1.tar.bz2
ash-20040127-1.tar.bz2		required by cvs
base-files-3.2-1.tar.bz2
base-passwd-2.2-1.tar.bz2
bash-2.05b-17.tar.bz2
binutils-20041229-1.tar.bz2
bzip2-1.0.2-6.tar.bz2
coreutils-5.3.0-5.tar.bz2
crypt-1.1-1.tar.bz2		required by cvs
cvs-1.11.17-1.tar.bz2
cygrunsrv-1.01-1.tar.bz2
cygutils-1.2.7-1.tar.bz2
cygwin-1.5.16-1.tar.bz2
cygwin-doc-1.4-2.tar.bz2
diffutils-2.8.7-1.tar.bz2
editrights-1.01-1.tar.bz2
expat-1.95.8-1.tar.bz2
findutils-20041227-1.tar.bz2
gawk-3.1.4-3.tar.bz2
gdbm-1.8.3-7.tar.bz2
grep-2.5.1a-2.tar.bz2
gzip-1.3.5-1.tar.bz2
less-381-1.tar.bz2
libbz2_1-1.0.2-6.tar.bz2	required by tar
libcharset1-1.9.2-1.tar.bz2
libdb4.2-4.2.52-1.tar.bz2
libgdbm-1.8.0-5.tar.bz2
libgdbm-devel-1.8.3-7.tar.bz2	required by cvs 
libgdbm3-1.8.3-3.tar.bz2
libgdbm4-1.8.3-7.tar.bz2
libiconv-1.9.2-1.tar.bz2	
libiconv2-1.9.2-1.tar.bz2	required by sed
libintl-0.10.38-3.tar.bz2
libintl1-0.10.40-1.tar.bz2
libintl2-0.12.1-3.tar.bz2
libintl3-0.14.1-1.tar.bz2
libncurses5-5.2-1.tar.bz2
libncurses6-5.2-8.tar.bz2
libncurses7-5.3-4.tar.bz2
libncurses8-5.4-1.tar.bz2
libpcre-4.1-1.tar.bz2		Required by less (pcre = Perl Compatible regex)
libpcre0-4.5-1.tar.bz2
libpopt0-1.6.4-4.tar.bz2
libreadline4-4.1-2.tar.bz2
libreadline5-4.3-5.tar.bz2
libreadline6-5.0-1.tar.bz2
login-1.9-7.tar.bz2		optional
make-3.80-1.tar.bz2
minires-1.00-1.tar.bz2		Required by openssh
ncurses-5.4-1.tar.bz2
openssh-4.0p1-1.tar.bz2		Used by cvs
openssl-0.9.7g-1.tar.bz2	Required by openssh
readline-5.0-1.tar.bz2
sed-4.1.4-1.tar.bz2
tar-1.13.25-5.tar.bz2
termcap-20050421-1.tar.bz2
terminfo-5.4_20041009-1.tar.bz2
which-1.7-1.tar.bz2
zlib-1.2.2-1.tar.bz2

The download of devel cygwin tools from May 5, 2005, includes all the tools from the basic cygwin download listed above and

autoconf-2.59-1.tar.bz2
autoconf-devel-2.59-1.tar.bz2
autoconf-stable-2.13-5.tar.bz2
binutils-20041229-1.tar.bz2
gcc-core-3.3.3-3.tar.bz2	  Matlab interface uses a C++ file
gcc-g++-3.3.3-3.tar.bz2
gcc-mingw-core-20040810-1.tar.bz2
gcc-mingw-g++-20040810-1.tar.bz2
m4-1.4.3-1.tar.bz2
mingw-runtime-3.7-1.tar.bz2
mktemp-1.5-3.tar.bz2
perl-5.8.6-4.tar.bz2		sadly, autoconf requires perl
w32api-3.2-1.tar.bz2