Skip to content

Commit c24f36a

Browse files
IshaanDesaiMakisH
andauthored
Remove yaml-cpp as a dependency of the CalculiX adapter (#547)
Co-authored-by: Gerasimos Chourdakis <[email protected]>
1 parent 130a1b9 commit c24f36a

File tree

4 files changed

+22
-6
lines changed

4 files changed

+22
-6
lines changed

content/docs/adapters/calculix/adapter-calculix-get-adapter.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ We started offering Debian packages for the CalculiX adapter since v2.19.0. Plea
4242

4343
2. Edit the `Makefile` to set the paths to dependencies.
4444
- If you have the CalculiX source in `~/CalculiX/` and the dependencies in your global paths, you don't need to change anything.
45-
- Otherwise, set `CCX` and, if built from source, the include and lib flags for SPOOLES, ARPACK, and yaml-cpp.
45+
- Otherwise, set `CCX` and, if built from source, the include and lib flags for the dependencies.
4646
- Read below if you are [using GCC 10 or later](#compiling-with-gcc-10-or-newer).
4747
3. Clean any previous builds with `make clean`.
4848
4. Build with `make` (e.g. `make -j 4` for parallel).
@@ -56,6 +56,10 @@ Since version 2.17 of CalculiX, it is possible to link the PaStiX solver for inc
5656
5757
The adapter is built using GNU Make. The `Makefile` contains a few variables on top, which need to be adapted to your system:
5858
59+
{% version %}
60+
The variables `YAML_INCLUDE` and `YAML_LIBS` are only relevant up to the adapter v2.20.1.
61+
{% endversion %}
62+
5963
1. `CCX`: Location of the original CalculiX solver (CCX) source code ("src" directory)
6064
- Example: `$(HOME)/CalculiX/ccx_{{site.calculix_version}}/src`
6165
2. `SPOOLES_INCLUDE`: Include flags for SPOOLES

content/docs/adapters/calculix/adapter-calculix-get-calculix.md

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,18 +18,22 @@ You don't need to build the "vanilla" CalculiX before building the adapter. But
1818

1919
CalculiX itself depends on [SPOOLES2.2](http://www.netlib.org/linalg/spooles/spooles.2.2.html) and [ARPACK](https://en.wikipedia.org/wiki/ARPACK).
2020

21-
Additionally, our adapter also depends on [yaml-cpp](https://github.com/jbeder/yaml-cpp).
21+
{% version %}
22+
Up to version v2.20.1, the adapter also requires [yaml-cpp](https://github.com/jbeder/yaml-cpp) to be installed.
23+
In later versions, a header-only variant of this library is included with the adapter source code.
24+
You can get this on Ubuntu by installing the `libyaml-cpp-dev` package with APT, or on Arch/Manjaro by installing the `yaml-cpp` package with pacman.
25+
{% endversion %}
2226

2327
These can be found in many distributions as binary packages. For example, in Ubuntu, do:
2428

2529
```bash
26-
sudo apt install libarpack2-dev libspooles-dev libyaml-cpp-dev
30+
sudo apt install libarpack2-dev libspooles-dev
2731
```
2832

29-
For example, in Arch or Manjaro, install `arpack` and `yaml-cpp`, and compile `spooles` using an AUR helper (e.g. `yay`):
33+
For example, in Arch or Manjaro, install `arpack`, and compile `spooles` using an AUR helper (e.g. `yay`):
3034

3135
```bash
32-
sudo pacman -S arpack yaml-cpp
36+
sudo pacman -S arpack
3337
yay spooles
3438
```
3539

@@ -116,6 +120,10 @@ Now we are ready to build the library with `make lib`
116120
117121
### Building yaml-cpp from source
118122
123+
{% version %}
124+
Only required up to the adapter v2.20.1.
125+
{% endversion %}
126+
119127
<details markdown="1"><summary>If you cannot get a binary for yaml-cpp, try these instructions.</summary>
120128
121129
Get the latest version of yaml-cpp and build it as a shared library. For example:

content/docs/adapters/calculix/adapter-calculix-pastix-build.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,10 @@ This page was built following CalculiX' documentation with adaptations for preCI
2020
Make sure you have a working installation of preCICE. Also run these installation commands, (after a call to `sudo apt update` and `sudo apt upgrade`) :
2121
`sudo apt install build-essential cmake git gfortran flex bison zlib1g-dev nvidia-cuda-toolkit-gcc libspooles-dev libyaml-cpp-dev`
2222

23+
{% version %}
24+
Up to the adapter v2.20.1, the dependency package `libyaml-cpp-dev` was also required.
25+
{% endversion %}
26+
2327
{% note %}
2428
You can get these elsewhere or build them from source. In particular, it is probably wise to have a more up to date CUDA installation than the one provided on the Ubuntu repository. Again, feedback is appreciated!
2529
{% endnote %}

content/docs/adapters/calculix/adapter-calculix-supermuc.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ In installing ARPACK, the HOME directory needs to be specified in the "ARmake.in
2222

2323
Any problems with the installation of SPOOLES and ARPACK can be searched in the installation [instructions](http://www.dhondt.de/INST_CCX_2_8_MAC_02_10_2015.pdf).
2424

25-
To install yaml-cpp, run in the source directory:
25+
To install yaml-cpp (up to adapter v2.20.1), run in the source directory:
2626

2727
```bash
2828
mkdir build

0 commit comments

Comments
 (0)