Forums des Landes Eternelles
https://landes-eternelles.com/phpBB/

TUTO: Soucis de compilation "référence indéfinie"
https://landes-eternelles.com/phpBB/viewtopic.php?f=104&t=29931
Page 1 sur 1

Auteur:  Nehiak [ 08 Sep 2016, 18:12 ]
Sujet du message:  TUTO: Soucis de compilation "référence indéfinie"

Bonjour bonjour...comme dit depuis longtemps, et parce que j’ai plusieurs éventuels nouveaux joueurs qui m’ont contactés par mp, j’ai pris le temps de faire un tuto en image pour résoudre les problèmes d’installation sous linux de type « /home/XXX/Bureau/client_sources/weather.c:356: référence indéfinie vers « make_drop »" pendant la compilation.

(et comme je suis pas informaticien, et que je sais pas comment on appelle précisément ce genre d’erreur… j’ai pas plus précis :-) … je précise que par la suite les termes que je risque d’utiliser vont faire bondir les plus calés que moi, mais je vais faire en sorte que ca soit le plus clair possible et que tout le monde puisse comprendre ...c’est l’important non ;-) )

Je profite d'ailleurs pour dire qu'il y aura peut être des erreurs si dessous, donc si quelqu'un veut corriger, qu'il n'hésite pas ...je partage juste ce qui a fonctionné pour moi!

Donc, une fois mon archive client_sources extraite, les dépendances installées et tout le patacaisse voici venu le temps, des rires et des champs et de la compilation...donc :

make -f Makefile.linux

ce qui chez moi donne les erreurs suivantes :

Image

Je peux voir ici que les 2 fichiers qui posent problème sont :

minimap.c & weather.c

Image

Je vais donc dans le fichier client_sources, je copie et colle les 2 fichiers en question en dehors du répertoire, et je supprime le fichier client_sources.

Image

J’ouvre ensuite les fichiers minimap.c et weather.c avec un éditeur de texte (j’utilise gedit pour ma part, qui à l’avantage de mettre en couleur les commandes dans le texte)

Je regarde les occurrences qui ont bloqué pendant la compilation

Image

Je recherche dans mes fichiers minimap.c et weather.c les occurrences en question

(donc chez moi is_within_radius, rotate_at_player, rotate_click_coords, pour le fichier minimap.c, et next_random_number, make_drop pour le fichier weather.c)

et j’ajoute « static » à l’occurrence en question

donf ctrl+F «  is_within_radius » (ou toute autre outil de recherche)

Image

Image

Ces occurrences se retrouvent plus loins dans le fichier précédées de « if » ou « else if » ...là je n’y touche pas.

Image
puis la même chose pour « rotate_at_player »

Image
Image

encore une fois je ne touche pas aux suivantes

Image

etc etc. on répète l’opération pour toutes les occurrences.

J’enregistre mes fichiers.

J’ai donc 2 fichiers minimap.c et weather.c réécris. Je redécompresse mon archive client-sources, et je remplace les 2 fichiers qui posaient problème.

Image

Je relance ma compilation, donc make -f Makefile.linux … et ce coup ci, ca devrait marcher:)

Auteur:  tosh [ 08 Sep 2016, 18:50 ]
Sujet du message:  Re: TUTO: Soucis de compilation "référence indéfinie"

Si tu prends les sources du SVN, le problème est normalement déjà corrigé.

Auteur:  Nehiak [ 08 Sep 2016, 19:28 ]
Sujet du message:  Re: TUTO: Soucis de compilation "référence indéfinie"

C'est bon à savoir...faudrait le préciser sur la page du jeu, parce qu'en une semaine j'ai eu 2 mp de personnes ayant le même soucis que j'avais eu

Auteur:  Saul [ 08 Sep 2016, 20:36 ]
Sujet du message:  Re: TUTO: Soucis de compilation "référence indéfinie"

Bonjour,

Merci beaucoup Nehiak.
Nous sommes nombreux je pense à faire cette manipulation et c'est très bien de la mettre en forme pour les nouveaux.

C'est très bien expliqué et ça a toujours bien fonctionné chez moi après ces manipulations. :D

Je précise juste les liens de téléchargement :

Ici :
Image

ou ici :
Image

Par contre tosh tu m'as perdu. C'est quoi le SVN ???

Si quelqu'un a aussi une astuce pour installer l'éditeur de carte sur Linux, je suis preneur car je n'ai pas encore réussi :(

Auteur:  tosh [ 08 Sep 2016, 20:58 ]
Sujet du message:  Re: TUTO: Soucis de compilation "référence indéfinie"

Il s'agit d'un gestionnaire de version que l'on utilise pour le code source du jeu. En gros, c'est là qu'il y a la dernière version du code du client.

Pour récupérer le code depuis le SVN, c'est expliqué ici : http://landes-eternelles.com/wiki/parti ... subversion

Page 1 sur 1 Le fuseau horaire est UTC+1 heure [Heure d’été]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/