Forum de la communauté SFML

Aide => Général => Discussion démarrée par: Kaygu le Mai 22, 2016, 02:27:08 am

Titre: Problème configuration CMAKE
Posté par: Kaygu le Mai 22, 2016, 02:27:08 am
Bonsoir,
J'essaye actuellement de créer un fichier cmake (j'étais sous visual studio avant) pour pouvoir compiler mon projet sous Windows et sous Debian fraichement installé.
Bon malheureusement, il n'y a jamais rien qui marche du premier coup... J'ai une erreur toute bête mais Google me propose toujours des problèmes un peu différent...
Voici mon message d'erreur:
Citer
CMake Error at CMakeLists.txt:21 (target_link_libraries):
  Cannot specify link libraries for target "TwitchIRC" which is not built by
  this project.
Et comme j'veux etre sure d'envoyer le bon fichier, je vous envoie tout mon github : https://github.com/kaygu/Twitch-IRC/blob/master/CMakeLists.txt (https://github.com/kaygu/Twitch-IRC/blob/master/CMakeLists.txt)

Voila, en espérant que vous puissiez faire quelque chose pour moi  :-X
Et merci pour cette bibliothèque formidable aussi !
Titre: Re : Problème configuration CMAKE
Posté par: victorlevasseur le Mai 22, 2016, 04:56:50 am
Salut,

C'est pas des accolades à la place des parenthèses autour de EXECUTABLE_NAME à la ligne 11 ?
Titre: Re : Problème configuration CMAKE
Posté par: Kaygu le Mai 22, 2016, 03:10:56 pm
Merci beaucoup! C'était bien ça mon problème :)
Bon par contre maintenant j'ai des problèmes a la compilation... Je soupçonne que c'est un problème d'include non détectés ou de namespace mais je sais pas exactement.
(click to show/hide)
Et voici mon github mis a jour: https://github.com/kaygu/Twitch-IRC (https://github.com/kaygu/Twitch-IRC)

Comme d'hab, j'ai google avant pour être certain qu'il n'y avait pas une solution similaire
Titre: Re : Problème configuration CMAKE
Posté par: Kaygu le Mai 22, 2016, 06:32:00 pm
Petit double post pour dire que j'ai résolu mon problème évidement! Une histoire de string const enfin bref.

J'ai juste une dernière question a propose de CMAKE. Comment éviter de devoir mettre chaque fichier source a compiler après mon exécutable? (ligne 11)
J'ai essayé "add_executable(${EXECUTABLE_NAME} ${SOURCES})" mais sa a pas fonctionné ...
Titre: Re : Problème configuration CMAKE
Posté par: Laurent le Mai 22, 2016, 06:43:31 pm
https://cmake.org/cmake/help/v3.3/command/file.html

Citer
file(GLOB <variable>
     [LIST_DIRECTORIES true|false] [RELATIVE <path>]
     [<globbing-expressions>...])

file(GLOB_RECURSE <variable> [FOLLOW_SYMLINKS]
     [LIST_DIRECTORIES true|false] [RELATIVE <path>]
     [<globbing-expressions>...])

Generate a list of files that match the <globbing-expressions> and store it into the <variable>. Globbing expressions are similar to regular expressions, but much simpler. If RELATIVE flag is specified, the results will be returned as relative paths to the given path.

By default GLOB lists directories - directories are omited in result if LIST_DIRECTORIES is set to false.

Note We do not recommend using GLOB to collect a list of source files from your source tree. If no CMakeLists.txt file changes when a source is added or removed then the generated build system cannot know when to ask CMake to regenerate.

Examples of globbing expressions include:

*.cxx      - match all files with extension cxx
*.vt?      - match all files with extension vta,...,vtz
f[3-5].txt - match files f3.txt, f4.txt, f5.txt

Note bien le paragraphe en gras.
Titre: Re : Problème configuration CMAKE
Posté par: Kaygu le Mai 22, 2016, 07:07:53 pm
En fait a l'origine, je récupérais toutes mes sources dans un file() mais alors j'ai une erreur : add_executable called with incorrect number of arguments

Mon add_executable() ressemble a ça alors "add_executable(${EXECUTABLE_NAME} ${SRC})" ou SRC est le nom de variable de file()

EDIT: Une histoire d'ordre dans mes commandes! Merci de m'avoir aidé