TUTO: Soucis de compilation "référence indéfinie"

Si vous n'arrivez pas à accéder au jeu, si vous avez des problèmes d'utilisation du jeu, c'est ici qu'il faut poster !
Avatar de l’utilisateur
Nehiak
Messages : 516
Inscription : 17 déc. 2014, 05:02

TUTO: Soucis de compilation "référence indéfinie"

Message par Nehiak »

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:)
Gardien de la Tradition, Forgeron

Avatar de l’utilisateur
tosh
Messages : 2379
Inscription : 01 sept. 2007, 01:09
Localisation : Quelque part sur la planete Terre.

Re: TUTO: Soucis de compilation "référence indéfinie"

Message par tosh »

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

Membre de l'équipe.
Développeur Client & Serveur.

Avatar de l’utilisateur
Nehiak
Messages : 516
Inscription : 17 déc. 2014, 05:02

Re: TUTO: Soucis de compilation "référence indéfinie"

Message par Nehiak »

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
Gardien de la Tradition, Forgeron

Saul
Messages : 102
Inscription : 14 mars 2016, 10:52
Localisation : Aix en provence

Re: TUTO: Soucis de compilation "référence indéfinie"

Message par Saul »

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 :(

Avatar de l’utilisateur
tosh
Messages : 2379
Inscription : 01 sept. 2007, 01:09
Localisation : Quelque part sur la planete Terre.

Re: TUTO: Soucis de compilation "référence indéfinie"

Message par tosh »

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
Guerrier dans l'âme.

Membre de l'équipe.
Développeur Client & Serveur.

Répondre