dockpack.base_boost
base_boost to rola ansible, która instaluje biblioteki dla narzędzi kompilatora GNU C++.
Wymagania
System podobny do RHEL, Ubuntu lub Windows.
Zmienne roli
Funkcja korporacyjna: przełącza pożądany stan
compilers_present: present
Kolekcje oprogramowania oferują najnowsze wersje języków programowania. Ustaw na true, aby używać zestawu gcc-toolkit na Centos8.
collections_enabled: true
zatwierdzona/wersja testowa zestawu narzędzi deweloperskich kolekcji oprogramowania
cplusplus_devtoolset: devtoolset-7
Większość bibliotek Boost to biblioteki tylko nagłówkowe: składają się całkowicie z plików nagłówkowych, które zawierają szablony i funkcje inline, i nie wymagają osobno kompilowanych plików binarnych lub specjalnego traktowania podczas linkowania. Jednak ta rola rzeczywiście kompiluje biblioteki, ale możesz zmienić to zachowanie, jeśli chcesz:
compile_boost: true
Jedynymi bibliotekami Boost, które muszą być budowane osobno i nie wymagają dodatkowej dokumentacji do skompilowania, są ustawione jako domyślne (zmień je w group_vars lub swoim playbook):
compile_boost_with:
--with-chrono
--with-context
--with-filesystem
--with-graph_parallel
--with-iostreams
--with-locale
--with-program_options
--with-regex
--with-serialization
--with-signals
--with-system
--with-thread
--with-timer
--with-wave
# boost_cflags wartości dla Windows
/DFOO - zdefiniuj FOO w preprocesorze
/EHsc - łap wyjątki C++, zakładaj, że funkcje extern "C" nigdy nie rzucają wyjątków C++
/GR - włącz RTTI
/MD - twórz wielowątkową DLL
/MDd - twórz debugowaną wielowątkową DLL
/O1 - optymalizuj pod kątem rozmiaru
/O2 - optymalizuj pod kątem prędkości
/Ob0 - brak automatycznego wstawiania
/Ob1 - tylko wstawiaj funkcje oznaczone jako inline oraz funkcje członkowskie C++ zdefiniowane w deklaracji klasy
/Ob2 - pozwól kompilatorowi na swobodne wstawianie
/Od - brak optymalizacji
/RTC1 - sprawdzanie w czasie działania: zgłoś, gdy zmienna jest używana bez inicjacji oraz sprawdzenie błędów w czasie działania stosu. Zobacz ich stronę, aby uzyskać więcej szczegółów.
/W3 - użyj poziomu ostrzeżeń 3 (z 4), „jakość produkcji”
/Zi - generuj „kompletną informację debugowania”, jak -g dla clang/gcc
Zależności
https://www.softwarecollections.org/en/docs/
Przykład użycia
Odwołaj się do kompletnych serwerów budowlanych https://github.com/bbaassssiiee/buildserver
Licencja
MIT
Informacje o autorze
Bas Meijer @bbaassssiiee
ansible-galaxy install dockpack.base_boost