Kompilierung¶
Alle Module kompilieren¶
Einzelnes Modul kompilieren¶
Jedes Modul enthält ein eigenes makefile. Die kompilierbaren Module:
| Modul | Verzeichnis | Ausgabe |
|---|---|---|
| worldqual | src/worldqual/ |
worldqual (Hauptprogramm) |
| wq_load | src/wq_load/ |
wq_load |
| wq_stat | src/wq_stat/ |
wq_stat |
| wq_stat_scen | src/wq_stat_scen/ |
wq_stat_scen |
| water_temperature | src/water_temperature/ |
water_temperature |
| find_river_cells | src/find_river_cells/ |
find_river_cells |
| MapRiverQuality | src/MapRiverQuality/ |
mapRiverQuality |
| copy_run | src/copy_run/ |
copy_run |
| copy_scen | src/copy_scen/ |
copy_scen |
| fill_worldqual_load | src/fill_worldqual_load/ |
fill_worldqual_load |
| rtf_input_corr_factor | src/rtf_input_corr_factor/ |
rtf_input_corr_factor |
| --- |
Gemeinsame Bibliotheken¶
Einige Module nutzen gemeinsame Quellcode-Dateien:
src/general_function/– Allgemeine Hilfsfunktionen (Länder-Klasse, Zeitstrings)src/options/– Basis-Optionsklasse zum Einlesen vonOPTIONS.DATsrc/newton/– Newton-Verfahren und Länderinformationen
Diese werden von den jeweiligen Makefiles automatisch eingebunden.
Fehlerbehebung¶
MySQL-Header nicht gefunden¶
# macOS (Homebrew)
ls /opt/homebrew/include/mysql++/mysql++.h
# Linux
ls /usr/include/mysql++/mysql++.h
Falls die Header fehlen, MySQL++ installieren (siehe Voraussetzungen).
Linker-Fehler (undefined reference)¶
Sicherstellen, dass MySQL++-Bibliothek korrekt verlinkt ist. Die Include- und Library-Pfade in den Makefiles müssen ggf. an das System angepasst werden.
Nächster Schritt: Modellausführung — Simulationen durchführen.