programmazione:meson:appunti_meson
Differenze
Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.
| Entrambe le parti precedenti la revisioneRevisione precedenteProssima revisione | Revisione precedente | ||
| programmazione:meson:appunti_meson [07/09/2026 17:04] – Fabio Di Matteo | programmazione:meson:appunti_meson [10/09/2026 15:32] (versione attuale) – Fabio Di Matteo | ||
|---|---|---|---|
| Linea 29: | Linea 29: | ||
| </ | </ | ||
| - | ===== Compilare librerie statiche insieme | + | ===== Compilare librerie statiche insieme al nostro |
| Compilo libpobu dentro il mi progetto. | Compilo libpobu dentro il mi progetto. | ||
| Linea 55: | Linea 55: | ||
| </ | </ | ||
| + | |||
| + | ===== Creare un eseguibile statico in c++ ===== | ||
| + | Qui si andrà a creare un eseguibile statico in c++ che include fmt (compilata staticamente) e il framework Crowcpp (che è header only). | ||
| + | |||
| + | <code python> | ||
| + | project(' | ||
| + | |||
| + | asio = dependency(' | ||
| + | incdir = include_directories(' | ||
| + | sources=[' | ||
| + | fmt = declare_dependency( | ||
| + | link_args: [' | ||
| + | ) | ||
| + | executable(' | ||
| + | |||
| + | </ | ||
| + | |||
| + | **link_args: | ||
| + | |||
| + | ===== Creare eseguibile statico in C++ delegando a Meson le dipendenze ===== | ||
| + | |||
| + | Come prima cosa creiamo la cartella **subprojects** dentro la root del nostro progetto. Poi impartiamo i seguenti comandi per far installare a meson le dipendenze: | ||
| + | |||
| + | < | ||
| + | meson wrap install asio | ||
| + | meson wrap install fmt | ||
| + | </ | ||
| + | |||
| + | voglio che meson mi compili le seguenti librerie scaricate dal repository Wrap. \\ | ||
| + | |||
| + | **meson.build** | ||
| + | |||
| + | <code python> | ||
| + | project(' | ||
| + | |||
| + | asio = dependency(' | ||
| + | fmt = dependency(' | ||
| + | incdir = include_directories(' | ||
| + | sources=[' | ||
| + | |||
| + | executable(' | ||
| + | |||
| + | |||
| + | </ | ||
| + | |||
| + | nota che includo manualemte anche i sorgenti di crow (ignorali). \\ \\ | ||
| + | |||
| + | A questo punto forziamo Meson a scaricare le librerie e usarle ignorando quelle di sistema. | ||
| + | |||
| + | < | ||
| + | poi : | ||
| + | < | ||
| + | cd build | ||
| + | ninja | ||
| + | </ | ||
| + | |||
| + | |||
| + | |||
programmazione/meson/appunti_meson.1788793480.txt.gz · Ultima modifica: 07/09/2026 17:04 da Fabio Di Matteo
