~ubuntu-branches/ubuntu/natty/freecell-solver/natty

« back to all changes in this revision

Viewing changes to INSTALL

  • Committer: Bazaar Package Importer
  • Author(s): RISKO Gergely
  • Date: 2005-03-30 20:12:47 UTC
  • mfrom: (1.1.1 upstream) (2.1.1 warty)
  • Revision ID: james.westby@ubuntu.com-20050330201247-8qdt6jhg7kxr3gjy
Tags: 2.8.10-1
* New upstream release
* fixed override disparity

Show diffs side-by-side

added added

removed removed

Lines of Context:
8
8
build and install "fc-solve" which is the Freecell Solver executable for you.
9
9
 
10
10
It will also build and install the board generation program, more 
11
 
information about which can be found in the "board_gen" sub-direcotry of
 
11
information about which can be found in the "board_gen" sub-directory of
12
12
this distribution.
13
13
 
14
14
Changing the Maximal number of Freecells or Stacks or Cards per Stack
27
27
Notice that it's very important to set the maximal number of initial cards
28
28
per stack, or else it's possible that a stack will eventually overflow.
29
29
 
30
 
If you wish to be able to effectively solve games of "Die Schlange" and
31
 
"Der Katzenschwanz", you should also enable the indirect stack states
32
 
feature. See the "Indirect Stack States" section below for more information
33
 
on how to do that.
34
 
 
35
 
Indirect Stack States
 
30
"Compact" States
36
31
---------------------
37
32
 
38
 
The indirect stack states caches the stacks, and only stores pointers to 
39
 
them inside the boards. Thus there is one copy of a particular stack present
40
 
in memory, which enables FCS to conserve more memory. If you are low on
41
 
memory you will probably want to enable this feature, but otherwise it will
42
 
result in a slower performance.
43
 
 
44
 
Indirect stack states are especially useful for solving boards of 
45
 
"Der Katzenschwanz" and "Die Schlange" where the stacks can be very long.
46
 
 
47
 
To enable this feature run "./configure" with the command line argument 
48
 
"--enable-states-type=indirect".
 
33
In Compact States, the contents of the card stacks are stored inside the 
 
34
states, rather than in a central collection (where the states contain only
 
35
pointers). Despite its name, it actually consume more memory than Indirect
 
36
Stack States which is the default.
 
37
 
 
38
Compact states used to be faster than Indirect Stack States, but now it
 
39
seems indirect stack states is at least slightly faster even for games
 
40
whose stacks are not very long. If you still would wish to enable it,
 
41
run ./configure with the "--enable-states-type=compact" flag.
49
42
 
50
43
Installing under Win32
51
44
----------------------
52
45
 
53
46
Freecell Solver is distributed with a makefile suitable for use with 
54
 
Microsoft Visual C++. Therefore, you can just type "nmake /f Makefile.win32"
55
 
to compile Freecell Solver.
 
47
Microsoft Visual C++. To build it using it follow the following steps:
 
48
 
 
49
1. Copy "config.h.win32" to "config.h" and "prefix.h.win32" to "prefix.h";
 
50
In the directory Presets/ copy presetrc.win32 to presetrc.
 
51
 
 
52
2. Optionally, edit it to set its preferences
 
53
 
 
54
3. Type "nmake /f Makefile.win32".
56
55
 
57
56
If you have an IDE of some sort you can take the following steps to compile
58
57
Freecell Solver:
59
58
 
60
59
1. Open a project for Freecell Solver.
61
60
 
62
 
2. Add all the C files except "lib.c", "test_lib.c" and "test_multi.c"
63
 
to the project.
 
61
2. Add all the C files except "test_multi_parallel.c" to the project.
64
62
 
65
 
3. Define the macro FCS_STATE_STORAGE as
66
 
FCS_STATE_STORAGE_INTERNAL_HASH, either in config.h or in the
67
 
parameters for the C compiler.
 
63
3. Copy the file config.h.win32 to config.h and prefix.h.win32 to prefix.h.
68
64
 
69
65
4. Build.
70
66
 
71
67
If you are using gcc or some other command-line compiler, you should 
72
68
write the makefile based on the files "Makefile" or "Makefile.lite", 
73
69
and then compile according to it.
 
70