Les deux révisions précédentesRévision précédente | |
prog:sccache [2020/04/26 17:23] – Migration <note> => <WRAP> root | prog:sccache [2025/10/09 16:56] (Version actuelle) – Réécriture complète avec intégration avec CMake root |
---|
Génère un cache après une première compilation. | Cache de compilation C/C++/Rust compatible avec CMake et gcc/clang/MSVC. |
| |
<WRAP center round important 60%> | Avec le temps, ''sccache'' a l'air d'être plus utilisé que [[prog:ccache]]. |
Je n'ai pas réussi à le faire fonctionner | |
</WRAP> | |
| |
La première compilation est donc plus lente. Les suivantes sont plus rapides. | [[https://github.com/mozilla/sccache|Site web]] |
| |
[[https://github.com/mozilla/sccache|Site Web]] {{ :prog:sccache:sccache-0.2.12-x86_64-pc-windows-msvc.tar.gz |Archive v0.2.12}} | S'utilise assez facilement avec CMake avec le helper {{ :prog:cmake:compilercaching.cmake |}} et l'option ''-DSCCACHE:BOOL=ON''. [[https://gitlab.kitware.com/cmake/cmake/-/issues/22529|Enable sccache for debug builds of CMake in gitlab CI]] {{ :prog:sccache:enable_sccache_for_debug_builds_of_cmake_in_gitlab_ci_22529_issue_cmake_cmake_10_9_2025_12_55_43_pm_.html |Archive du 10/08/2021 le 09/10/2025}} |
| |
====Installation==== | Il est important de désactiver ''/Zi'' au profit de ''/Z7''. |
| |
* Installer [[https://scoop.sh/|Scoop]], | Dossier par défaut sous Windows ''~/AppData/Local/Mozilla/sccache''. |
* ''scoop install sccache'' | |
* Dans le dossier d'installation de ''sccache'', copier ''sccache.exe'' en ''cl.exe''. | |
| |
====Utilisation==== | Pour faire la configuration de ''sccache'', soit on passe par un fichier, soit par les variables d'environnement associées (''SCCACHE_DIR'' / ''SCCACHE_CACHE_SIZE'' par exemple). [[https://docs.rs/crate/sccache/latest/source/docs/Configuration.md|manual 0.10.0]] {{ :prog:sccache:sccache_0.10.0_-_docs.rs_10_9_2025_4_54_45_pm_.html |Archive v0.10.0 le 09/10/2025}} |
| |
Détecter où se trouve le compilateur ''cl.exe'' utilisé. Pour cela, lancer une compilation d'un projet et regarder via le gestionnaire des tâches où est le fichier ''cl.exe''. | |
| |
Attention, comme le programme ''sccache'' 64 bit va devoir exécuter ''cl.exe'', il faut impérativement avoir ''Hostx64\x64''. | |
| |
Ensuite, supprimer le dossier ''Hostx64\x64''. | |
| |
Ajouter dans le ''$PATH'' le dossier où se trouve le dossier ''sccache.exe'' avec sa version ''cl.exe''. | |
| |
Puis ajouter au ''$PATH'' le chemin vers le fichier ''cl.exe'' de Microsoft. | |