You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: INSTALL.md
+68-19
Original file line number
Diff line number
Diff line change
@@ -6,28 +6,77 @@ Standalone Windows and macOS disk images (dmg) are found in [GitHub releases](ht
6
6
7
7
JaBS uses a standard CMake build system. See instructions on [running CMake](https://cmake.org/runningcmake/) or follow instructions below.
8
8
9
-
Run script `get_qcustomplot.sh` or download [QCustomPlot](https://www.qcustomplot.com/index.php/download) source code manually. The cpp and h files must be placed in qjabs directory.
9
+
JaBS depends on [GSL](https://www.gnu.org/software/gsl/), [JIBAL](https://github.com/JYU-IBA/jibal), [libxml2](https://gitlab.gnome.org/GNOME/libxml2/-/wikis/home), and the GUI (QJaBS)
10
+
depends additionally on [Qt 6](https://www.qt.io/) and [QCustomPlot](https://www.qcustomplot.com/).
10
11
11
-
## Microsoft Windows 10:
12
+
Preferred compiler on Windows is MSVC 2019 (for Qt compatibility), Clang on macOS and GCC on Linux.
13
+
14
+
Creating binary distributions may be challenging, see [GitHub workflows](.github/workflows). The Windows binary distribution is created with this workflow.
2. Install *libxml2* using vcpkg (follow the JIBAL instructions mutatis mutandis)
15
-
3. See and run [deploy_win.bat](release_scripts/deploy_win.bat) file to prepare a standalone installation. There are hard coded locations in the file, so be sure to change those if necessary.
16
+
There are scripts that manage downloading QCustomPlot and JIBAL datafiles (for Windows and macOS).
3. Compile JIBAL and install it to /usr/local (recommended, but you may also install it to some other prefix)
27
+
```shell
28
+
cmake -B jibal/build_jibal -S jibal
29
+
cmake --build jibal/build_jibal
30
+
sudo cmake --install build_jibal
31
+
```
32
+
33
+
4. Compile and install JaBS (CLI version)
34
+
```shell
35
+
cmake -B jabs/build_jabs -S jabs
36
+
cmake --build jabs/build_jabs
37
+
sudo cmake --install jabs/build_jabs
38
+
```
39
+
5. Install dependencies for the Qt version:
40
+
```shell
41
+
sudo apt install qt6-base-dev
42
+
```
43
+
6. Run script `get_external_files.sh` or download [QCustomPlot](https://www.qcustomplot.com/index.php/download) source code manually. The cpp and h files must be placed in qjabs directory.
5. Compiling Qt GUI, install Qt 6 and try similar build steps in [qjabs](qjabs/) directory
68
+
1. Install Build tools for [Visual Studio 2019.](https://visualstudio.microsoft.com/downloads/)
69
+
2. Install Qt 6.7.2 (or maybe something later). This might be easier to do with [unofficial tools](https://github.com/miurahr/aqtinstall/).
70
+
3. Install *gsl*, *getopt*, *libxml2* using vcpkg. Make sure your triplet is x64-windows-release.
71
+
4. Follow steps for Linux above, but
72
+
- Run the first cmake (configure) with: `cmake -DCMAKE_TOOLCHAIN_FILE=C:/vcpkg/scripts/buildsystems/vcpkg.cmake -DVCPKG_TARGET_TRIPLET=x64-windows-release -DVCPKG_MANIFEST_MODE=OFF -DCMAKE_BUILD_TYPE=Release -B build_dir -S source_dir`
73
+
- Install JIBAL (and everything else) to some prefix (here: *install*) with `cmake --install build_jibal --prefix install`
74
+
- Give subsequent JaBS and QJaBS CMake configure steps `-DCMAKE_PREFIX_PATH=install` so that JaBS can find the installed JIBAL library from the directory given by the prefix
75
+
5. Run [Qt Windows Deployment tool](https://doc.qt.io/qt-6/windows-deployment.html) (windeployqt) on qjabs.exe:
76
+
```shell
77
+
windeployqt build_qjabs\Release\qjabs.exe
78
+
```
79
+
6. See and run [deploy_win.bat](release_scripts/deploy_win.bat) file to prepare a standalone installation. This is mostly intended to be run by GitHub, so some hard-coded directories may be different than in the instructions above.
31
80
32
81
## MacOS:
33
82
1. Install [Homebrew](https://brew.sh/)
@@ -36,8 +85,8 @@ Run script `get_qcustomplot.sh` or download [QCustomPlot](https://www.qcustomplo
36
85
$ brew tap JYU-IBA/iba
37
86
$ brew install jabs-cli
38
87
39
-
4. If you want to develop JaBS and not just use it, follow Linux instructions above, install *libxml2*, *readline* and *qt6* using Homebrew. Installing *libomp* from homebrew is also recommended to enable OpenMP parallel processing. You may need to set the *OpenMP_ROOT* environment variable to get CMake to find it on Apple silicon, like this:
88
+
3. If you want to develop JaBS and not just use it, follow Linux instructions above, install *libxml2*, *readline* and *qt6* using Homebrew. Installing *libomp* from homebrew is also recommended to enable OpenMP parallel processing. You may need to set the *OpenMP_ROOT* environment variable to get CMake to find it on Apple silicon, like this:
40
89
41
90
$ export OpenMP_ROOT="/opt/homebrew/opt/libomp/"
42
91
43
-
5. Disk image (dmg) can be created using [deploy_mac.sh](release_scripts/deploy_mac.sh) script, assuming JIBAL data can be found from home directory.
92
+
4. Disk image (dmg) for QJaBS app can be created using [deploy_mac.sh](release_scripts/deploy_mac.sh) script. Note that some assumptions are made, so read it be fore using it. Running cmake --install is recommended for JIBAL and JaBS, but not for QJaBS.
0 commit comments