Thu 03 Jan 2008 02:05:32 PM UTC, original submission:
The following is a revision and expansion of Mike Thomas' directions on building GCL for MS-Windows from the CVS. (Directions for getting TortoiseCVS and using it to checkout a version are also included.)
The resulting builds are not equivalent to those binaries posted on the download FTP site. In particular, they are not `real' Windows installation packages, and rather produce completed directory structures that the user will have to place oneself--no desktop icon and no `uninstall' option is created with these builds. The user must move the build directory to the desired direction and create one's own desktop icon (minimal directions for doing so are included below and in the attached).
Mike Thomas' binaries on the download FTP site also include an embedded `MinGW' directory. The builds produced with these directions does not. The user who builds GCL with the following directions will install usable versions of MinGW and MSYS on one's own computer and thus won't `need' this in the GCL directory.
_don winiecki
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
===============================================
BUILDING NATIVE WIN32 GNU COMMON LISP FROM CVS
===============================================
The preferred build host system for the Mingw32 compiler is MSYS.
I use gcc version 3.3.1 and binutils 2.14.90, but earlier versions of gcc back to 2.95 are OK provided that you remove the
"-fno-zero-initialized-in-bss" flag in "h/mingw.defs" before running "configure".
Note that gcc 3.3.3 and gcc 3.4.0 do NOT work; likewise binutils 2.13.90 and 2.15.90.
The working binutils version can be found at:
http://gd.tuwien.ac.at/gnu/mingw/binutils-2.14.90-20030612-1.tar.gz
===============================================
INSTALL AND CONFIGURE TORTOISE CVS
===============================================
Download Tortoise CVS from: http://www.tortoisecvs.org/
After downloading, install Tortoise CVS and included programs,
accepting default installation directories.
===============================================
DOWNLOAD CVS FOR GCL
===============================================
Choose a directory to which you will download (check out) of the GCL CVS (I created c:\_cvs).
Enter the directory created and right click. The context menu will show `CVS checkout' as a context menu itemu.
Choose the 'CVS checkout' context menu item. You should be presented with a dialogue box titled 'TortoiseCVS-Checkout Module'.
Under the 'Module' tab, enter the following:
For Protocol, enter
:pserver
For `server', enter
cvs.savannah.gnu.org
For `Repository folder', enter
/sources/gcl
For `User name', enter
anonymous
On the right side of the dialog box, for `Module', enter
gcl
Under the 'Revision' tab:
Select the 'Choose branch or tag' radio button
Select the 'Update list...' button
Open the 'Branch or tag name:' drop down list and select the version you want to build
Under the 'Options' tab:
Check the `Use UNIX line ending' box
Choose the 'Enter your own folder name' radio button
In the 'Custom folder name:' field, enter the name of the folder you desire to be created (for example, 'gcl-2.6.7' to match the version to be built)
Now, click again on `Module' tab. Click on OK. You should see that tortoise CVS is checking out GCL from CVS repo.
More information on CVS access is available here
http://savannah.gnu.org/cvs/?group=gcl
===============================================
INSTALLING BUILD TOOLS (MinGW, MSYS)
===============================================
BUILD TOOLS
Subject to the above warnings, it is usually a good idea to keep up to date with Mingw32 and MSYS. Updates for various parts of these packages are available on the web site.
Go to http://www.mingw.org/download.shtml and download
http://prdownloads.sf.net/mingw/MinGW-3.1.0-1.exe?download
http://prdownloads.sf.net/mingw/MSYS-1.0.9.exe?download
http://prdownloads.sf.net/mingw/msysDTK-1.0.1.exe?download
http://prdownloads.sf.net/mingw/gcc-core-3.3.1-20030804-1.tar.gz?download
Install these files in the same order as above. Accept the default locations. GCC-CORE-3.3.1-2003804-1.tar.gz' should be extracted into c:/mingw and overwrites the older version of gcc.
When you are done, you should be able to start MSYS and a get the '$' prompt (customized for your machine name and your username, if active)
To check the installation, type 'gcc -v' at the prompt. If all was installed properly you should see:
gcc version 3.3.1 (mingw special 20030804-1)
===============================================
BUILDING GCL USING MSYS AS THE HOST
===============================================
At the MSYS '$' prompt, change to your GCL source directory eg:
cd /c/_cvs/gcl-2.6.7
You are now ready to configure GCL:
If you want to build the CLTL1 variant, type:
./configure --prefix="c:/gcl" > configure.log 2>&1
If you want to build the ANSI variant, type:
./configure --prefix="c:/gcl" --enable-ansi > configure.log 2>&1
Change the prefix directory as required for your desired final installation path. I find it helpful to redirect output from "configure" and "make" into log files for debugging and checking.
Check the log. If no errors,
Type:
make >& make.log
The "saved_gcl.exe" (or "saved_ansi_gcl.exe") should turn up eventually in the unixport directory (inside the \lib\gcl-x.x.x directory of the final installation directory).
You can try it out directly inside the MSYS shell by typing the following at the MSYS command prompt.
./unixport/saved_gcl.exe (for CLTL1 version)
or
./unixport/saved_ansi_gcl.exe (for ANSI version)
To install, type the following at the MSYS command prompt:
make install >& install.log
- The batch file "gclm.bat" can be used to make a Windows desktop
shortcut. (NOTE: I have not been able to make this batch file work [djw])
- BFD fasloading, Stratified Garbage Collection (SGC) readline and GCL-TK don't work under Windows. The configuration options above provide a "traditional" GCL executable which will build the current CVS version of Maxima. The BFD option will depend on someone with knowledge of BFD and PE-COFF linking fixing some problems with the BFD library - I am slowly absorbing the info needed, but we really need input from an expert. My inclination is to stick with custom relocation as BFD is less efficient (Mike Thomas).
===============================================
INSTALLING GCL INFORMATION ACCESSIBLE FROM GCL INTERPRETER
===============================================
Download "gcl.info.tgz" from ftp://ftp.gnu.org/pub/gnu/gcl/
Make the following directory path and unpack the downloaded file into
C:\usr\local\gnu\info
===============================================
RUNNING GCL
===============================================
You can move the final installation folder (for example, "GCL-2.6.7-ANSI") anywhere on your hard drive (typically, c:\program files).
Create a shortcut to the executable (either "saved_gcl.exe" or
"saved_ansi_gcl.exe") and assign to it the icon located in the \bin directory.
You can then move the shortcut to anywhere (the 'Start' menu or your 'Quick Launch' menu). Double click the icon to launch GCL.
===============================================
CONFIGURE GCL TO RUN IN INFERIOR MODE UNDER EMACS
===============================================
Follow directions provided by Gordon Novak Jr. at:
http://www.cs.utexas.edu/users/novak/gclwin.html
===============================================
Mike Thomas
15 June 2004
(Updates and modifications by Don Winiecki, 1:06 PM 1/1/2008, using information provided by Mike Thomas, Camm Maguire, Gaby Dos Reis, Gordon Novak Jr. (http://www.cs.utexas.edu/users/novak/gclwin.html) and Bill Page
(http://lists.gnu.org/archive/html/axiom-developer/2003-10/msg00227.html))
|