wget et mv en C/C++


Antartika

Messages recommandés

Posté(e)

Salut!

Alors voila j'ai codé un petit plugin CS:S pour récup une banliste sur le net et l'executer :P

Je me suis dit fastoche un petit coup de system("wget URL;mv ...") pour mettre le fichier là où ça va bien, et effectivement ça va bien... sur mon ordi.

Par contre sur mon serv verygames:

sh: wget: command not found

sh: mv: command not found

Alors voila est ce que vous auriez une idée pour résoudre se problème?

Inclure une librairie qui me faire ça? Dans ce cas laquelle?

Merci de vos réponses :)

Posté(e)

Pour aller récuperer le fichier tu pourrais utiliser la librairie curl qui peut aller chercher des infos sur le net assez facilement.

Par contre, pour mettre le fichier au bon endroit, c'est plus chaud. C'est vraiment bizarre qu'un mv ne marche pas !

Peut-être (mais je ne connais pas tres bien curl), tu peux spécifier l'endroit où tu télécharges le fichier.

Posté(e)

Désolé pour la réponse un peu tardive...

Alors comme j'avais pas le net j'ai un peu réfléchi (ça fait pas de mal des fois :P ) et je me suis dit bon ben il a pas wget et mv sur le serv, tant pis je le mets moi même...

J'ai récup donc les 2 fichiers sur mon disque et les ai mis sur le serv:

cstrike/addons/wget: error while loading shared libraries: libssl.so.0.9.8: cannot open shared object file: No such file or directory

cstrike/addons/mv: error while loading shared libraries: libselinux.so.1: cannot open shared object file: No such file or directory

Donc je pense qu'il va falloir coder soit même...

Si le mv je saurais le faire moi même assez facilement, la récupération du fichier me fait un peu peur...

Je vais regarder du coté de curl mais ça m'avait pas l'air si simple...

Sinon chand, non pas d'accès root. Ca empêche pas de détourner le truc :D

Enfin si vous avez une idée n'hésitez pas ;)

Merci

Posté(e)

Ben je me demandais justement si y'avait besoin d'un logiciel particulier sur le serveur.

En fait là j'ai utilisé la libcurl donc je ne fais plus aucun appel système...

Je sais pas trop si y'a besoin d'une librairie sur le serveur...

Posté(e)

Grande nouvelle j'ai enfin réussi :P

La technique? Intégrer la librairie libcurl au moment de la compilation.

En gros: g++ -o plugin /usr/lib/libcurl.a

Sauf que là c'est un peu trop simple, parceque libcurl dépend elle aussi d'autres librairies :P Faut donc les inclure aussi soit:

/usr/lib/libcurl.a /usr/lib/libgssapi_krb5.a /usr/lib/libkrb5.a /usr/lib/libk5crypto.a /usr/lib/libkrb5support.a /usr/lib/libcom_err.a /usr/lib/libresolv.a /usr/lib/libidn.a /usr/lib/libssl.a /usr/lib/libcrypto.a /usr/lib/libz.a

Si jamais ca peut servir à quelqu'un ^^

Posté(e)

un ldd sur libcurl te l'aurait dit tout de suite ;)

ldd /usr/lib/libcurl.so

linux-gate.so.1 => (0xffffe000)

libidn.so.11 => /usr/lib/libidn.so.11 (0xb7f10000)

libssl.so.0.9.7 => /usr/lib/libssl.so.0.9.7 (0xb7ee0000)

libcrypto.so.0.9.7 => /usr/lib/libcrypto.so.0.9.7 (0xb7df0000)

libdl.so.2 => /lib/libdl.so.2 (0xb7dec000)

libz.so.1 => /lib/libz.so.1 (0xb7dda000)

libc.so.6 => /lib/libc.so.6 (0xb7ccb000)

/lib/ld-linux.so.2 (0x80000000)

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.