docs/src/install.md

Tue, 07 Jan 2025 18:37:07 +0100

author
Mike Becker <universe@uap-core.de>
date
Tue, 07 Jan 2025 18:37:07 +0100
changeset 1113
dce04550fbef
parent 807
c8d692131b1e
permissions
-rw-r--r--

remove CX_LINKED_LIST_SWAP_SBO_SIZE - fixes #551

264
24f5484bae97 web doc has now proper titles
Mike Becker <universe@uap-core.de>
parents: 259
diff changeset
1 ---
24f5484bae97 web doc has now proper titles
Mike Becker <universe@uap-core.de>
parents: 259
diff changeset
2 title: Build Instructions
24f5484bae97 web doc has now proper titles
Mike Becker <universe@uap-core.de>
parents: 259
diff changeset
3 ---
259
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
4
760
52e49533e7b4 update build instructions
Mike Becker <universe@uap-core.de>
parents: 737
diff changeset
5 The build processes uses configure and make.
259
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
6 First, download the source code from [Source Forge][1].
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
7
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
8 wget https://sourceforge.net/projects/ucx/files/ucx-latest.tar.gz
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
9 tar -xzf ucx-latest.tar.gz
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
10 cd ucx-latest
760
52e49533e7b4 update build instructions
Mike Becker <universe@uap-core.de>
parents: 737
diff changeset
11
52e49533e7b4 update build instructions
Mike Becker <universe@uap-core.de>
parents: 737
diff changeset
12 Then execute ./configure with the options you like. You can get a list of
52e49533e7b4 update build instructions
Mike Becker <universe@uap-core.de>
parents: 737
diff changeset
13 all available options with ./configure --help. The recommended configuration
52e49533e7b4 update build instructions
Mike Becker <universe@uap-core.de>
parents: 737
diff changeset
14 for production builds is ./configure --release.
390
d345541018fa starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents: 264
diff changeset
15
760
52e49533e7b4 update build instructions
Mike Becker <universe@uap-core.de>
parents: 737
diff changeset
16 ./configure --release
52e49533e7b4 update build instructions
Mike Becker <universe@uap-core.de>
parents: 737
diff changeset
17 make
52e49533e7b4 update build instructions
Mike Becker <universe@uap-core.de>
parents: 737
diff changeset
18 make check # only available when built with tests
52e49533e7b4 update build instructions
Mike Becker <universe@uap-core.de>
parents: 737
diff changeset
19 sudo make install
390
d345541018fa starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents: 264
diff changeset
20
737
b3b113eac3b8 add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents: 721
diff changeset
21 When compiling UCX 3, you can tweak the buffer sizes for small-buffer-optimization.
b3b113eac3b8 add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents: 721
diff changeset
22 You can do this, be pre-defining one or more of the following macros:
b3b113eac3b8 add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents: 721
diff changeset
23
b3b113eac3b8 add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents: 721
diff changeset
24 --------------------------------- --------------------------------------------------------------------- ----------
b3b113eac3b8 add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents: 721
diff changeset
25 Macro Description Default
b3b113eac3b8 add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents: 721
diff changeset
26 --------------------------------- --------------------------------------------------------------------- ----------
b3b113eac3b8 add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents: 721
diff changeset
27 CX_ARRAY_SWAP_SBO_SIZE The maximum item size in an array list that uses SBO. 128
b3b113eac3b8 add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents: 721
diff changeset
28
807
c8d692131b1e remove flags to disable SBO in tests - fix #343 fix #358
Mike Becker <universe@uap-core.de>
parents: 806
diff changeset
29 CX_LINKED_LIST_SORT_SBO_SIZE The maximum list size that uses SBO during sort. 1024
737
b3b113eac3b8 add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents: 721
diff changeset
30
b3b113eac3b8 add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents: 721
diff changeset
31 CX_PRINTF_SBO_SIZE The maximum string length printf.h uses stack memory for. 512
b3b113eac3b8 add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents: 721
diff changeset
32
806
e06249e09f99 add constant for reading out strstr sbo size - relates to #343
Mike Becker <universe@uap-core.de>
parents: 760
diff changeset
33 CX_STRSTR_SBO_SIZE The maximum length of the "needle" in cx_strstr that can use SBO. 512
737
b3b113eac3b8 add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents: 721
diff changeset
34 --------------------------------- --------------------------------------------------------------------- ----------
b3b113eac3b8 add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents: 721
diff changeset
35
b3b113eac3b8 add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents: 721
diff changeset
36 You can also tweak some other buffer sizes with the same technique:
b3b113eac3b8 add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents: 721
diff changeset
37
b3b113eac3b8 add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents: 721
diff changeset
38 --------------------------------- --------------------------------------------------- ----------
b3b113eac3b8 add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents: 721
diff changeset
39 Macro Description Default
b3b113eac3b8 add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents: 721
diff changeset
40 --------------------------------- --------------------------------------------------- ----------
b3b113eac3b8 add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents: 721
diff changeset
41 CX_STRREPLACE_INDEX_BUFFER_SIZE The number of matches one index buffer can store. 64
b3b113eac3b8 add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents: 721
diff changeset
42
b3b113eac3b8 add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents: 721
diff changeset
43 CX_STREAM_COPY_BUF_SIZE The buffer size on the stack for a stream copy. 1024
b3b113eac3b8 add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents: 721
diff changeset
44
b3b113eac3b8 add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents: 721
diff changeset
45 CX_STREAM_BCOPY_BUF_SIZE The buffer size on the heap for a stream copy. 8192
b3b113eac3b8 add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents: 721
diff changeset
46 --------------------------------- --------------------------------------------------- ----------
b3b113eac3b8 add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents: 721
diff changeset
47
390
d345541018fa starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents: 264
diff changeset
48 ---
d345541018fa starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents: 264
diff changeset
49
d345541018fa starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents: 264
diff changeset
50 ### UCX 2.1
d345541018fa starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents: 264
diff changeset
51
d345541018fa starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents: 264
diff changeset
52 The build procedure for UCX 2.1 uses a configure script.
d345541018fa starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents: 264
diff changeset
53 For Microsoft Windows, you will need an appropriate port of the linux
d345541018fa starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents: 264
diff changeset
54 tools (like MinGW or Cygwin).
d345541018fa starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents: 264
diff changeset
55 First, download the source code from [Source Forge][1].
d345541018fa starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents: 264
diff changeset
56
d345541018fa starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents: 264
diff changeset
57 wget https://sourceforge.net/projects/ucx/files/ucx-2.1.0.tar.gz
d345541018fa starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents: 264
diff changeset
58 tar -xzf ucx-2.1.0.tar.gz
d345541018fa starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents: 264
diff changeset
59 cd ucx-2.1.0
259
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
60
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
61 Then issue the `configure` and `make` commands.
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
62
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
63 ./configure && make
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
64
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
65 To verify your installment you can issue `make check`. If everything is fine,
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
66 you can install UCX with
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
67
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
68 make install
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
69
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
70 Note, that you might need administrative privileges for a system wide
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
71 installation.
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
72
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
73 [1]: https://sourceforge.net/projects/ucx/files/
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 256
diff changeset
74

mercurial