Trouble or problems with C-Kermit?LOOK HERE and (for Linux)
C-Kermit is a combined network and serial
communication software package offering a consistent, transport-independent,
cross-platform approach to connection establishment, terminal sessions, file
transfer, file management, character-set translation, numeric and alphanumeric
paging, and automation of file transfer and management, dialogs, and
communication tasks through its built-in scripting language. C-Kermit
C-Kermit 9.0 is available for practically every known variation and version of
UNIX, past and present (such as Linux,
Mac OS X,
FreeBSD, NetBSD, OpenBSD,
HP-UX, etc), on every 32- or 64-bit architecture, and for DEC /
Compaq / HP VMS / OpenVMS on VAX, Alpha, and IA64 / IPF. Earlier
releases of C-Kermit remain available for other platforms and operating
In Unix, C-Kermit can be thought of as a user-friendly and powerful
alternative to cu, tip, minicom, uucp, ftp, ftpd, telnet, ktelnet, rlogin,
ssh, find, grep, iconv, recode, expect, wget, sendpage, bc, and to some extent
even Lisp, your shell, and/or Perl; a single package for both network and
serial communications, offering automation, helpfulness, and language features
not found in most of the other packages, and with most of the same features
available on all its non-Unix platforms (such as VMS), as well as in
Kermit 95 on Windows
As of version 9.0, C-Kermit has an Open Source license, the Revised 3-Clause BSD License.
Everybody can use it as they wish for any purpose, including redistribution
and resale. It may be included with any operating system where it works or
can be made to work, including both free and commercial versions of Unix and
Hewlett-Packard (formerly DEC) VMS (OpenVMS).
C-Kermit 8.0 and 7.0 have a more restrictive license,
CLICK HERE to
The user manual for C-Kermit 9.0 is (still) the book Using
C-Kermit, Second Edition [ INFO ], which is current with C-Kermit
6.0. Features new in subsequent C-Kermit releases are documented in the
supplements (see links just below).
If you don't have the manual, please
order it. It
explains step-by-step, with examples and sometimes pictures,
how to use C-Kermit: how to make connections, how to troubleshoot
connection and file-transfer problems, how to handle character-set
translation, how to write script programs, and lots more; especially useful
since live Kermit software support is no longer available from Columbia
University after 30 June 2011. Beginning in 2011, the manual is also
available as a Kindle E-Book.
As of February 2016Using C-Kermit
can also be downloaded for free as
a PDF file; CLICK HERE for details.
The current C-Kermit release is 9.0.302 of 20 August 2011. Much work
has been done on C-Kermit since then; the results
(see change log). The current
test version needs to be turned into a formal release primarily in order for
C-Kermit to work with new releases of OpenSSL. Volunteers with expertise
in OpenSSL are needed to help finish and consolidate this work. If
you'd like to lend a hand, please
You have many choices for downloading:
Source Code in tar, zip, or other archive
formats or as separate files: CLICK HERE.
Install packages and prebuilt binaries do NOT include C-Kermit's security
features, due to USA export law. To obtain a version of C-Kermit that
includes Kerberos, SSL, TLS, or SRP, you must download the source code and build it yourself. Address complaints to
the US Department of Commerce.
Install packages are contributed by Linux and *BSD distributors, OS
vendors, user groups, or users (we don't make them ourselves). The
following install packages are presently available for C-Kermit 8.0 and 9.0.
Packages for C-Kermit 9.0 for Solaris 8-10 for SPARC
and x86 at sunfreeware.com (find
C-Kermit in the menu on the right).
Packages for C-Kermit 9.0 for FreeBSD are in
the FreeBSD Ports
site, communications section, replacing C-Kermit 8.0.211. Visit the page
and search for "kermit". (G-Kermit is also there.)
“New to Fedora 16 is ckermit, an updated implementation of the
venerable Kermit file transfer program. The Kermit protocol is available on
almost all architectures...” [Fedora
16 Release Notes] [RPM Search].
Debian Linux (all versions)
Packages for many architectures (offsite): C-Kermit 9.0.302 is
HERE to search for all C-Kermit packages at Debian.
CLICK HERE for
a general discussion of C-Kermit package making. Note also that the Unix
version of C-Kermit includes its own installation procedure, built
into the makefile. See Section 5 of the Unix
C-Kermit installation guide.
You can download C-Kermit 9.0 source and text
files directly from the Kermit Project in any of several archive formats
by clicking on the following FTP links. The complete archives contain
source code, build procedure, license, initialization files, CA certificates,
manual page or help topic, initialization files, and plain-text information
files extracted from the Web pages listed in the Documentation
section: a complete distribution. The text archives contain
everything but the source code; these can used when you download a prebuilt binary.
The size of each archive file in megabytes is shown in each cell.
NOTE: "Unix" refers to the entire Unix operating system family:
Linux, Mac OS X, Android, AIX, Solaris,
Source code and text files for Microware OS-9/68k, ZIP archive
(text files in DOS format). (C-Kermit 7.0).
If you want to monitor developments in C-Kermit since the most recent
you can find the current working source code HERE.
Source code and text files are also available separately in the kermit/ckermit/
directory. These include files for platforms other than Unix and VMS, such
as Stratus VOS, Data General AOS/VS, OS-9, the Amiga, etc. All files in
this directory are text files; transfer them in text mode. See the ckaaaa.txt
file for details.
NOTE: The Unix and VMS source files are
at 9.0 level. The VOS, Amiga, OS-9, and AOS/VS versions remain at 7.0
level. Others (Macintosh, Atari ST) have not been updated in a long while
due to lack or programmers and/or platforms;
volunteers welcome. And of course anybody interested in porting
C-Kermit to new platforms is more than welcome to contact us about it; we'll be
happy to get you started.
If you downloaded a compressed tar file, uncompress it. Examples:
$ gunzip cku302.tar.gz
$ uncompress cku302.tar.Z
If you downloaded a tar archive, "un-tar" it. Example:
$ tar xvf cku302.tar
If you downloaded a Zip archive, unzip it. Example:
$ unzip -a cku302.zip
Now you can delete the tar archive (or zip archive) if you wish:
$ rm cku302.tar(or rm cku302.zip)
Read the comments at
the top of the makefile to find out which target
is appropriate for your computer and operating system, and then give the
appropriate "make" command. Examples:
$ make linux(Linux, almost any version)
$ make macosx(Mac OS X 10.3.x or later)
$ make freebsd(FreeBSD, any version)
$ make openbsd(OpenBSD, any version)
$ make netbsd(NetBSD, any version)
$ make aix(IBM AIX)
$ make aixg(IBM AIX with gcc)
$ make solaris10(Sun Solaris 10 with cc)
$ make solaris10g(Sun Solaris 10 with gcc)
$ make irix63(SGI IRIX 6.3)
Quick install: move the resulting 'wermit' binary to
/usr/local/bin/kermit and give it the same owner, group, and
permissions as minicom or cu. Move the ckuker.nr to the
man page directory and rename it as appropriate, e.g. to kermit.1.
For more detailed instructions, read the C-Kermit installation
instructions, especially if you had trouble with any of these steps, or if
you will be using C-Kermit to dial out. The most
convenient way to install is to the use makefile's install target
("make install"); read about it HERE. See the configuration options
guide for information about compile-time options for customizing the
You can also download individual binaries
from the Columbia University archive (that was frozen on July 1, 2011) but
to avoid library or other version mismatches, it is better to build from
source code if you can.
If you want to install a prebuilt VMS binary, then fetch the most
appropriate VMS binary from the C-Kermit binaries
table. Pick a VAX binary for a VAX or an Alpha binary for an Alpha. The
VMS version number for the binary must be less than or equal to your VMS
version. If you want to make TCP/IP connections, pick the binary for the
appropriate TCP/IP product (TGV Multinet, DEC UCX, Process Software TCPware,
etc), again with a version number less than or equal to yours; if none can be
found, then try a UCX version (since most non-DEC TCP products include
built-in UCX emulation). If you downloaded a prebuilt binary, also download
the VMS C-Kermit text-file archive. Then read the installation
instructions for VMS.
If you want to build from source code, fetch the VMS complete archive
above if you have VMS-based unpacking tools,
otherwise get the source files and text individually as described just below.
NOTE: Unzip the Zip file with "unzip-a".
Make a fresh directory and SET DEFAULT to it. Example:
The C-Kermit binaries archive is at Columbia University. It was frozen on
July 1, 2011. Due to space and bandwidth limitations, it could not be moved
to the new kermitproject.org site. Before visiting
the table, you should read this section.
IMPORTANT: To access the binaries, use THIS LINK. All links to the C-Kermit
binaries on the Columbia University Kermit website are broken due to a
change in the Columbia Web server that was not reflected in the Columbia
University Kermit website, which is itself frozen.
When you download a prebuilt-Kermit binary, you should also download the
C-Kermit text files, unpack them if necessary, and
install them as desired. NOTE: In Unix, you can still use
even if if you did not use the makefile to build your Kermit binary (the
makefile as well as all the text files you need are in the text archive).
In the binaries table,
filenames start with "ck" for C-Kermit, then one letter or digit to indicate
the platform ("u" for Unix, "d" for Data General AOS/VS, "v" for VMS,
"i" for Amiga, "9" OS-9, "p" for Plan 9, etc). After that comes a
three-digit edit number:
188: Version 5A(188), November 1992 through September 1993. 189: Version 5A(189), September 1993 through October 1994. 190: Version 5A(190), October 1994 through September 1996. 192: Version 6.0.192, September 1996 through December 1999. 193: Version 6.1.193, November 1996 through June 1998. 194: Version 6.1.194, June 1998 through December 1998. 195: Version 7.0.195, January 1999 through August 1999. 196: Version 7.0.196, September 1999 through final release 1 Jan 2000. 197: Version 7.0.197, January-February 2000. 200: Version 8.0.200, December 2001. 201: Version 8.0.201, February 2002. 206: Version 8.0.206, October 2002. 208: Version 8.0.208, 14 March 2003. 209: Version 8.0.209, 17 March 2003. 211: Version 8.0.211, 10 April 2004. 300: Version 9.0.300, 30 June 2011. 301: Version 9.0.301, 11 July 2011. 302: Version 9.0.302, 20 August 2011.
Then a possible test-version designator:
"a" for Alpha or "b" for Beta, followed by the 2-digit test number. Examples:
cku209.xxx C-Kermit 8.0.209 final release
cku200b04.xxx C-Kermit 8.0.200 Beta.04
cku197.xxx C-Kermit 7.0.197 final release
Test versions are included here only for platforms that do not have a final
build available (usually because the machine disappeared or had an OS upgrade
before the final C-Kermit release).
Note that edits 193, 194, 195, 198, 199, 202-05, and 212-299 were never
formally released (191 was only for OS/2).
The rest of the name is platform-dependent; in Unix it's the name of
the makefile target, optionally followed by specific hardware platform and/or
OS version, when it makes a difference. In VMS it's the platform ("axp"
(i.e. Alpha) or "vax"), then the VMS version number (e.g. "vms73"), and then
TCP/IP product and version number (or "nonet" if TCP/IP support is not built
in). And so on. VMS TCP/IP product codes are as follows:
ucx DEC / Compaq / HP TCP/IP tgv TGV MultiNet pst Process Software TCPware twg The Wollongong Group WIN/TCP or PathWay cmu Carnegie-Mellon University CMU/IP
REMEMBER: It's often better to build your own binary
than to run a prebuilt one, due to the ever-increasing likelihood of OS
and/or library version mismatch.
After downloading, rename to "kermit" or "kermit.exe" (etc),
as appropriate for your operating system and, if necessary,
give execute permission, e.g. (in Unix):
Also remember that before C-Kermit can be used to dial out from Unix, it will
probably also be necessary to give the Kermit executable a certain owner and
group, and to set it suid and/or sgid bits, to allow it access to the dialout
device and/or lockfile directory (the same as any other dialout software,
such as cu or minicom). Read
and 11 of the
Unix C-Kermit installation guide.
"curses" refers to the fullscreen file-transfer display, used when
transferring files over dialout or network connections. It's nice but it
adds size and sometimes causes problems so if a "curses" version gives you
trouble, try a no-curses (NC) version. On platforms that have a choice between
"traditional curses" and "new curses" (ncurses), you might also have a choice
of binaries -- if one doesn't work, try the other.
Likewise, some binaries come in TCP/IP and non-TCP/IP versions. If your
computer doesn't have TCP/IP installed, choose the non-TCP/IP version (if
available). A TCP/IP-enabled binary almost certainly will not run on
platforms that don't have TCP/IP installed.
And some binaries come in optimized and non-optimized versions; this
refers to compile-time optimization. Choose the optimized version, but if it
gives you trouble, try the corresponding non-optimized one, if available (some
optimizers have bugs). When optimization is marked in the table, O means
normal optimization, O- means no optimization, O+ means extra optimization.
Some binaries are available in gcc and non-gcc versions; that is, versions
built using two different compilers. If one gives you trouble, try the other
if available. Some compilers have bugs; some compilers support features that
other ones don't.
Some HP-UX binaries (notably, the HP-UX 7.00 ones) are built for long
filename (255 chars) file systems, others for short-filename (14 chars)
systems; these are marked with SF and LF. Choose one that is appropriate
for your file system.
Some Linux binaries are linked with libc, some with glibc. Pick the one
that is appropriate for your Linux system. Better yet, just build from source
("make linux" should work on any Linux system).