Existe-t-il un moyen de configurer CLion pour utiliser un fichier makefile local pour compiler le code, plutôt que CMake? Je n'arrive pas à trouver le moyen de le faire à partir des options de construction.
Même si, actuellement, seul CMake est pris en charge, vous pouvez demander à CMake d'appeler make
avec votre compte personnalisé Makefile
. Editez votre CMakeLists.txt
en ajoutant l'une de ces deux commandes:
Lorsque vous indiquez à CLion
d’exécuter votre programme, il essaie de trouver un exécutable portant le même nom de cible dans le répertoire indiqué par PROJECT_BINARY_DIR
. Donc, tant que votre make
génère le fichier attendu par CLion
, il n'y aura aucun problème.
Voici un exemple de travail:
CLion
de transmettre ses $ (PROJECT_BINARY_DIR) à make
Voici l'exemple CMakeLists.txt
:
cmake_minimum_required(VERSION 2.8.4)
project(mytest)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
add_custom_target(mytest COMMAND make -C ${mytest_SOURCE_DIR}
CLION_EXE_DIR=${PROJECT_BINARY_DIR})
CLion's
Voici l'exemple Makefile
:
all:
echo Compiling $(CLION_EXE_DIR)/$@ ...
g++ mytest.cpp -o $(CLION_EXE_DIR)/mytest
C’est tout, vous voudrez peut-être aussi changer le répertoire de travail de votre programme pour qu’il s’exécute tel quel lorsque vous exécutez make à partir de votre répertoire. Pour cette édition: Run -> Edit Configurations ... -> mytest -> Working directory
Bien qu'il s'agisse de l'un des plus votés demandes de fonctionnalités , il en existe un plugin disponible, par Victor Kropp , qui ajoute un support aux makefiles:
plugin de support Makefile pour IntelliJ IDEA
Vous pouvez installer directement à partir du référentiel officiel:
Paramètres> Plug-ins> rechercher makefile
> Rechercher dans les référentiels> Installer> Redémarrer
Il y a au moins trois manières différentes de courir:
Il ouvre un volet nommé , puis cible avec la sortie.
La version la plus récente supporte littéralement mieux tous les Makefiles générés, à travers le compiledb
Trois étapes:
installer compiledb
pip install compiledb
exécuter une marque sèche
compiledb -n make
(faire l'autogen, configurer si nécessaire)
un fichier compile_commands.json sera généré pour ouvrir le projet et vous verrez que CLion chargera les informations à partir du fichier json. Si votre CLion essaie toujours de trouver CMakeLists.txt et que vous ne pouvez pas lire compile_commands.json, essayez de supprimer tout le dossier, de télécharger à nouveau les fichiers source et de refaire l'étape 1,2,3.
Poste d'origine: Travailler avec des Makefiles dans CLion en utilisant Compilation DB
Pour éviter totalement d'utiliser CMAKE, vous pouvez simplement:
Construisez votre projet comme d'habitude avec Make via le terminal.
Changez vos configurations CLion, allez à (dans la barre du haut):Run -> Edit Configurations -> yourProjectFolder
Remplacez Executable
par celui généré avec Make
Changez le Working directory
dans le dossier contenant votre exécutable (si nécessaire)
Supprimez la tâche Build
dans la zone Before launch:Activate tool window
Et vous êtes tous ensemble! Vous pouvez maintenant utiliser le bouton de débogage après votre construction manuelle.
Je ne connais pas très bien CMake et je ne peux pas utiliser directement la solution de Mondkin.
Voici ce que j'ai trouvé dans mon CMakeLists.txt en utilisant la dernière version de CLion (1.2.4) et de MinGW sous Windows (je suppose que vous devrez simplement remplacer tout: g ++ mytest.cpp -o bin/mytest par make if vous n'utilisez pas la même configuration):
cmake_minimum_required(VERSION 3.3)
project(mytest)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
add_custom_target(mytest ALL COMMAND mingw32-make WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
Et le Makefile personnalisé est comme ceci (il se trouve à la racine de mon projet et génère l'exécutable dans un répertoire bin):
all:
g++ mytest.cpp -o bin/mytest
Je suis capable de construire l'exécutable et les erreurs dans la fenêtre du journal sont cliquables.
Les astuces dans le IDE sont assez limitées, ce qui est une grosse limitation par rapport aux projets purement CMake ...
Actuellement, seul CMake est pris en charge par CLion. D'autres systèmes de construction seront ajoutés à l'avenir, mais pour le moment, vous ne pouvez utiliser que CMake.
Un outil d'importation a été mis en place pour vous aider à utiliser CMake.
Modifier:
Source: http://blog.jetbrains.com/clion/2014/09/clion-answers-frequently-asked-questions/