CMAKE_TOOLCHAIN_FILE n'a pas été utilisé par le projet
Cmake donne cet avertissement lors de la construction d'un script tiers:
CMake Warning:
Manually-specified variables were not used by the project:
CMAKE_TOOLCHAIN_FILE
Est-il commun des conseils de quoi ai-je besoin de vérifier ou de comment résoudre ce problème?
- Pourriez-vous fournir plus d'informations? Ce script, OS, version de cmake et quelles options de ligne de commande que vous avez utilisé pour la production?
- Ne pas s'en soucier. Voir le maillist pour plus de détails.
- Bon point
Vous devez vous connecter pour publier un commentaire.
C'est la norme avertissement vous donne lorsque vous êtes en lui donnant une option de ligne de commande il ne l'utilise pas. Qui est de donner
-DFOO=bar
à cmake lorsque l'CMakeLists.txt ne pas utiliser la variable FOO.Maintenant, c'est un peu un cas particulier ici: CMAKE_TOOLCHAIN_FILE est utilisé par CMake la première fois que vous configurez votre build, mais que vous ne pouvez pas changer de chaîne d'outils pour déjà configuré construire, il est ignoré toutes les autres fois, donc l'avertissement.
Comme @Answeror dit, vous pouvez ignorer l'avertissement, mais si ça vous dérange, vous pouvez la masquer en donnant
--no-warn-unused-cli
à cmake.rm -rf CMakeCache.txt CMakeFiles/
.Dans le cas où vous obtenez ce message avec CLion après vous définissez la
-DCMAKE_TOOLCHAIN_FILE=xxx
option, vous aurez envie de supprimer tous les CMake les répertoires de construction.Ne
puis supprimez tous les répertoires de construction. Alors ne
Une fois que vous faites cela, vous aurez toujours de l'avertissement, mais au moins, ce sera observée la première fois cmake est exécuté.
Les raisons de ce inutilisés variable ont été déjà expliqué dans @Guillaume de réponse. Un simple et utile pour contourner l'avertissement sur le solde non utilisé de la variable est de l'utiliser dans un message d'état.
Même qui s'est passé ici, comme @js souligné, cela signifie généralement que vous avez à construire des reliques de cmake à partir d'un passé config.
Faire un
rm -rf CMakeCache.txt CMakeFiles/
et le message sera passé la première fois que vous faites lecmake -DCMAKE_TOOLCHAIN_FILE=foo.cmake .
. La deuxième fois, ils y seront de nouveau et comme @Guilaume répondu que c'est ok.P. S.:
J'ai d'abord fait un
git clean --force
mais comme ces fichiers sont généralement dans.gitignore
, qui ne pas réinitialiser le construire.git clean -x --force
qui supprime également les fichiers ignorés