1---------------------------------------------- 2ECLiPSe - Constraint Logic Programming System 3---------------------------------------------- 4 5----------------------------------------------------------------------------- 6ECLiPSe on Windows (see README_UNIX for UNIX/Linux, README_MACOSX for MacOSX) 7----------------------------------------------------------------------------- 8 9*** These instructions are for installing a binary distribution! 10*** If you want to compile from source, see the file INSTALL, 11*** and document/internal/SetupGuide.pdf for more detailed help. 12 13ECLiPSe for Windows should be run on Windows XP/Vista/7 or newer; 14earlier versions may have restricted functionality. 15 16For 32-bit Windows use the "i386_nt" distribution of ECLiPSe. 17For 64-bit Windows use the "x86_64_nt" distribution of ECLiPSe. 18 19 20-------------------------------------- 21Using the Windows Installer 22-------------------------------------- 23 24For the most common Windows install configurations, use the ECLiPSe 25Windows Installer. To do so, download and execute the single file 26 27 ECLiPSe<Version>_<Build>.exe 28 29Run this installer program as a user with "administrator" rights. 30 31The installer contains the ECLiPSe kernel, basic libraries, 32and the following optional packages: 33 34- Documentation (html, txt, pdf) 35- An interface to COIN-OR's open source solvers CLP and CBC 36- An interface to a version of Dash Optimization's XPRESS-MP solver 37- 3rd party libraries 38- A bundled standalone distribution of GraphViz 39 (to support the visualisation tools) 40- A bundled (but not standalone) distribution of Tcl/Tk 41 (to support the TkECLiPSE GUI) 42 43For installation, double click on ECLiPSe<Version>_<Build>.exe and 44the install wizard will guide you through the installation. 45 46Then try to launch tkeclipse via the Start menu, or look at the 47documentation, e.g. the tutorial. 48 49 50--------------------------------------------------- 51Alternative: Manual Installation from .tgz Packages 52--------------------------------------------------- 53 54You may want to use this method if you want to install ECLiPSe in a 55non-standard location. 56 57You need to get the following files for the "i386_nt" or the "x86_64_nt" 58architecture. These are tar-files compressed with gzip. Note that 59these .tgz Packages for Windows may not be available for download via 60SourceForge, but they are available from the www.eclipseclp.org site. 61 62Base: 63 README_WIN.TXT The file you are reading now 64 eclipse_basic.tgz Kernel and basic libraries 65 eclipse_doc.tgz Documentation (html,txt,man,pdf) 66 67Optional: 68 eclipse_misc.tgz Free/3rd party libraries 69 if_osiclpcbc.tgz Interface to COIN-OR's open source solvers 70 CLP and CBC 71 72Support: 73 tcltk.tgz A matching Tcl/Tk release (8.5) 74 (you may have that already). 75 Needed for the tkeclipse development GUI. 76 editors_eclipse_support.tgz Support for various editors for editing 77 ECLiPSe code. 78 79These other files are only needed under special circumstances: 80 eclipse_rt.tgz Runtime only (subset of eclipse_basic.tgz) 81 if_xpressXY.tgz Interface to XPRESS-MP version XY 82 83You can make installations (with reduced functionality) from subsets of 84these files. The minimum you always need is either eclipse_basic (for a 85development system) or eclipse_rt (for embedded applications only). 86 87 88 89Manual Installation steps 90 911. Make a folder for ECLiPSe on your machine and move the 92 distribution files there. 93 94 In the following we will refer to this folder as <eclipsedir>. 95 Note that you can have different versions of ECLiPSe installed 96 at the same time (in different folders). 97 98 The ECLiPSe installation folder can also be shared between 99 machines even with different hardware/operating system 100 architectures, e.g. i386_nt and sparc_sunos5. To do so, just 101 unpack the distributions for the different architectures in the 102 same installation directory. All architecture-dependent files 103 will go in separate subdirectories. 104 105 1062. Unpack the distribution files in this folder 107 108 You can use a tool like WinZip, GNU tar/gzip etc. 109 Beware of your download or unpacking tool trying to do clever 110 modifications of the file contents! E.g. with WinZip be sure to 111 disable Options->Configurations->Smart Tarfile CR/LF Conversion. 112 113 After unpacking, you should have the ECLiPSe directory structure 114 inside the <eclipsedir> folder. 115 116 If you are on Windows-9X (not NT/XP), you need to make sure you have 117 the 3 system DLLs WS2HELP.DLL, WS2_32.DLL (Winsock2) and MSVCRT.DLL. 118 119 1203. Make a registry entry for ECLiPSe. You can do this by running 121 <eclipsedir>/ecl_inst.js 122 123 Alternatively, you can do this manually, by 124 125 126 - run regedit (Start->Run...->regedit) 127 128 - create the registry key 129 HKEY_LOCAL_MACHINE\SOFTWARE\IC-Parc\ECLiPSe\<version> 130 where <version> is e.g. 5.10 131 132 - create a "String Value" under this key, with name ECLIPSEDIR and 133 value <eclipsedir>, i.e. the folder where you have unpacked the 134 distribution, e.g. "C:\Program Files\ECLiPSe 5.10" 135 136 You should now be able to run the command line version of eclipse, i.e. 137 138 <eclipsedir>/lib/i386_nt/eclipse.exe 139 140 1414. If you have a regular installation of Tcl/Tk, you can now also execute 142 the tkeclipse development environment by simply double-clicking on 143 144 <eclipsedir>/lib_tcl/tkeclipse.tcl 145 146 If, however, you have only unpacked the Tcl/Tk that is bundled with 147 ECLiPSe, then this will not work, since no bindings for the .tcl 148 extension have been defined. You can still execute tkeclipse.tcl 149 (or the tcl examples) by either 150 151 - dragging them onto the wish-executable, which is 152 <eclipsedir>\tcltk\i386_nt\bin\wish<version>.exe 153 154 - by running the wish-executable with the .tcl script as its 155 command line argument, e.g. 156 <eclipsedir>\tcltk\i386_nt\bin\wish<version>.exe tkeclipse.tcl 157 158 - create a shortcut that invokes the wish-executable with the .tcl 159 script as its argument 160 161 where wish<version>.exe is the actual name of the wish application, e.g. 162 wish85.exe. See the debugdemo.ecl example for how to do this from ECLiPSe 163 164 1655. Some ECLiPSe components, e.g. the Visualisation Tools, need Java. 166 In order for them to find the Java installation, you need to create 167 a further registry entry. Under the the registry key 168 HKEY_LOCAL_MACHINE\SOFTWARE\IC-Parc\ECLiPSe\<version> 169 create a "String Value" with name JRE_HOME and set it to the folder 170 where the Java runtime environemnt is located, e.g. 171 C:\Program Files\Java\jre1.5.0 172 173 174 175---------------------------------------------- 176General Topics 177---------------------------------------------- 178 179Directory structure 180------------------- 181 182Directories in the binary distribution: 183 184 lib supported libraries, object files, executables 185 lib_public third party Prolog libraries 186 lib_tcl tcl files for the graphical interface 187 include include files for C/C++ interface 188 doc online documentation, pdf files and example code 189 tcltk the bundled Tcl/Tk distribution 190 191 192The important files are in <eclipsedir>\lib\i386_nt: 193 194 eclipse.exe ECLiPSe standalone executable (needs eclipse.dll) 195 eclipse.dll ECLiPSe linkable library 196 eclipse.lib ECLiPSe linkable library stubs 197 eclipse.def Export specification of the dll 198 eclipse.reg Registry file for use with regedit 199 200To compile an application using the eclipse.dll you will need the 201include files in <eclipsedir>\include\i386_nt. 202 203The files related to the GUI version are in <eclipsedir>\lib_tcl: 204 205 tkeclipse.tcl ECLiPSe development GUI (executable) 206 eclipse.tcl eclipse package for Tcl/Tk-embedding 207 eclipse_tools.tcl eclipse_tools package with support tools 208 example*.tcl examples for using eclipse from Tcl/Tk 209 210Code for embedding into Visual Basic is in <eclipsedir>\doc\examples. 211 212 213 214Differences between UNIX and Windows versions of ECLiPSe 215-------------------------------------------------------- 216 217Pathnames: Eclipse internally always works with platform independent 218path names using forward slashes, e.g. 219 220Windows pathname: C:\Software\Eclipse 221ECLiPSe form: //C/Software/Eclipse 222 223 224Documentation 225------------- 226 227The installation subdirectory <eclipsedir>/doc contains html and pdf 228versions of the user documentation. To read the html documentation, 229set your browser to e.g. 230 231 file:<eclipsedir>/doc/index.html 232 233 234The printable documentation is contained in the files: 235 236 tutorial.pdf Tutorial 237 238 userman.pdf Basic user manual 239 240 libman.pdf Library user manual (constraints libraries) 241 242 embedding.pdf Interfacing and embedding manual 243 244The Reference Manual (the detailed descriptions of the built-in 245predicates and all the libraries) is available exclusively in html 246format and via the help/1 predicate from within ECLiPSe. 247 248 249Installation hints for the 'eplex' library 250---------------------------------------------- 251 252The ECLiPSe 'eplex' library is an interface to an external LP/MIP solver, 253which can be either a free COIN-OR solver (www.coin-or.org), or a 254commercial Xpress-MP or CPLEX solver. 255 256For the COIN-OR solvers, you do not need a licence to use them. For 257Xpress-MP or CPLEX, you need to own a separate Xpress-MP or CPLEX licence 258to use the 'eplex' library with the corresponding solver. In this case, you 259need to download a version of 'eplex' that matches the version of the 260Xpress-MP licence that you have (although it may be possible to 261run an older version with a newer licence). For example, for Xpress-MP X.Y, 262you need the package if_xpressXY.tgz. You can install a mix of different 263versions by just unpacking multiple packages. 264 265Note that we no longer distribute the CPLEX solver for eplex in binary 266form, as the CPLEX library is statically linked. You need to compile 267ECLiPSe from source if you want to use CPLEX with the `eplex' library. 268 269To tell ECLiPSe which licence you have on which machine, add the 270necessary lines to the text file <eclipsedir>/lib/eplex_lic_info.ecl, 271according to the instructions provided there. With this setup, you 272can load the eplex library from ECLiPSe by just invoking lib(eplex), 273and you will get the correct version for each machine. 274 275Academic licences for CPLEX are available from ILOG at 276 http://www.ilog.com/partners/academic/license.cfm 277Academic licences for XPRESS-MP are available from Dash Optimization at 278 http://www.dashoptimization.com/home/users/app.html 279 280 281Installation hints for the 'dbi' library 282----------------------------------------- 283 284The ECLiPSe 'dbi' library is an interface to an external 285database. Currently the MySQL database is supported. Because of licensing 286issues, we do not include the MySQL dynamic load library (libmysql.dll) in 287our binary distributions. You will need to obtain this library from 288MySQL AB: 289 290 http://dev.mysql.com/downloads 291 292When 'dbi' is loaded (for example by lib(dbi)), it will need to find and 293load this MySQL dynamic library. If it is in one of the standard system 294library paths, then the library can be loaded without further 295action. Otherwise, you can copy libmysql.dll file to where your ECLiPSe 296dynamic libraries are, i.e. <eclipsedir>/lib/i386_nt. 297 298You need to be able to connect to a running MySQL server in order to use 299the library. This can be on your local machine, or on a remote machine 300reachable from your network. 301 302 303Graphics 304-------- 305 306The Embedding Interface and the TkEclipse Development Environment 307require Tcl/Tk version 8.3 or later. 308This might already be installed on your machine, otherwise install 309it by executing tcl831.exe. 310 311Several visualisation features require Java. The recommended version 312is at least 1.4, but versions from 1.2 upwards should still work. 313 314 315Emacs ECLiPSe mode 316------------------ 317 318If you use the GNU emacs editor, an ECLiPSe mode is now provided for it. 319It is not part of the ECLiPSe distribution, and you need to download it 320separately. **Version 20 (or later) of GNU emacs is required.** 321This mode is based on the prolog mode by Umeda, and provides extensive 322syntax colouring for ECLiPSe-specific features. See http://www.gnu.org/ 323if you need more information on GNU and its software. 324 325In order to use this mode, add the following line to your .emacs file: 326 327(autoload 'eclipse-mode "<eclipsedir>/lib_public/eclipse.el" "ECLIPSE editing mode" t) 328 329where <eclipsedir> is the path to your ECLiPSe installation directory. 330 331You may also need to add these lines so that the .pl and .ecl extensions 332are recognised to be ECLiPSe programs: 333 334(setq auto-mode-alist (cons '("\\.pl" . eclipse-mode) auto-mode-alist)) 335(setq auto-mode-alist (cons '("\\.ecl" . eclipse-mode) auto-mode-alist)) 336 337The eclipse.el file needs to be placed somewhere where your emacs can find 338it. 339 340See the start of the eclipse.el file for some instructions on using this mode. 341 342 343Contact Addresses 344----------------- 345 346News about ECLiPSe are available from the following sources 347 348 http://www.eclipseclp.org 349 350 http://www.sourceforge.net/projects/eclipse-clp 351 352 comp.constraints (via news server or e.g. groups.google.com) 353 354Via http://www.eclipseclp.org/mailinglist.html you can subscribe to 355one of the ECLiPSe mailing lists 356 357 eclipse-clp-announce@lists.sf.net (release announcements) 358 eclipse-clp-users@lists.sf.net (user discussion) 359 360Problem and bug reports can be submitted via the web site 361 362 http://www.eclipseclp.org/bugs.html 363 364Please take the time to report problems. Your feedback helps us to 365make ECLiPSe more reliable! 366 367