ytehpe Posté(e) le 27 février 2010 Posté(e) le 27 février 2010 Bonjour, Je viens de passer quelques heures à essayer d'installer uMurmur sur mon Synology. Il existe bien un .spk sur ce même forum pour l'installation de uMurmur 0.1.3(1) mais celui-ci refuse catégoriquement de se lancer sur mon Synology. Il m'a donc fallu l'installer à la main. N'ayant pas trouvé de procédure pour y parvenir, j'ai fait ce petit tutoriel qui j'espère sera utile à quelqu'un. Pourquoi uMurmur ? -Teamspeak n'est pas installable sur les Synology car la source n'est pas publiée. -Mumble et son serveur Murmur requièrent Qt. On oublie également. -uMurmur est la version allégée de Murmur et donc utilisable sur un Synology! Note: -Tout ceci a été testé sur des Synology DSx10 (processeur ARM mv6281) mais est valable pour tous les autres Synology en y apportant de petites modifications. -Pour connaitre le type de processeur qui équipe votre Synology regardez par-ici. -A chaque début de test, le Synology venait d'être restauré et les disques partitionnés. Donc vous ne devriez pas avoir de problème de dépendances manquantes ou je ne sais quoi d'autre en suivant toutes les étapes. 0. Pré-requis: -Activer le service telnet (sur mon DSM: Management > Services réseau > Terminal > Cocher "Activer le service Telnet") -Se connecter au NAS au travers de telnet. # telnet ip.de.votre.nas Diskstation login: root Password: mot de pass admin 1. Installer ipkg: # cd / # wget http://ipkg.nslu2-linux.org/feeds/optware/cs08q1armel/cross/stable/syno-mvkw-bootstrap_1.2-7_arm.xsh # sh syno-mvkw-bootstrap_1.2-7_arm.xsh # rm syno-mvkw-bootstrap_1.2-7_arm.xsh # ipkg update 2. Installer les packages nécessaires à la compilation # ipkg install gcc # ipkg install make automake autoconf libtool binutils # ipkg install crosstool-native optware-devel A la fin de la dernière installation on obtient une erreur: An error ocurred, return value: 1. Collected errors: Cannot find package crosstool-native. Check the spelling or perhaps run 'ipkg update' Il semblerait que c'est normal et qu'il ne faut pas s'en soucier.(2) Alors passons à la suite! Facultatif mais pratique: installons mLocate (qui permet de trouver l'emplacement d'un ficher ou d'un dossier) # ipkg install mlocate 3. Installation de libconfig J'ai utilisé la dernière version disponible soit la 1.4.3 # wget http://www.hyperrealm.com/libconfig/libconfig-1.4.3.tar.gz # tar zxpf libconfig-1.4.3.tar.gz # rm libconfig-1.4.3.tar.gz # cd /libconfig-1.4.3.tar.gz # ./configure # make ARCH=arm A cette étape, j'ai eu plusieurs résultats différents lors des essais: la compilation s'est toujours bien déroulée mais les fichiers résultants ne sont pas toujours partis au bon endroit. Vérifions que les fichiers libconfig.so.* sont bien dans le dossier /lib # updatedb # locate libconfig.so si vous obtenez: /lib/libconfig.so /lib/libconfig.so.8 etc... tout va bien! Passez à l'étape 4. si c'est plutot du genre /usr/local/lib/libconfig.so /usr/loca/lib/libconfig.so.8 etc... il va falloir les copier au bon endroit: # cp /usr/local/lib/libconfig* /lib/ 4. Installation de openssl-dev # ipkg install openssl-dev 5. Installation de uMurmur J'ai utilisé la dernière version disponible soit la 0.2.1 # cd / # wget http://umurmur.googlecode.com/files/umurmur-0.2.1.tar.gz # tar zxpf umurmur-0.2.1.tar.gz # rm umurmur-0.2.1.tar.gz # cd umurmur-0.2.1/src Il y a quelques petites modifications à apporter au Makefile ici:(3) -ajouter au début du fichier: CC:=gcc -Dé-commenter les lignes suivantes et les compléter: # OpenSSL - usually installed at a standard place # EXTRA_CFLAGS:= # EXTRA_LDFLAGS:=-lcrypto -lssl comme ceci: # OpenSSL - usually installed at a standard place EXTRA_CFLAGS:=/opt/include EXTRA_LDFLAGS:=-lcrypto -lssl Modifions à présent le deuxième Makefile caché plus loin dans le repertoire google/protobuf-c/ -ajouter au début du fichier: CC:=gcc Revenons maintenant au dossier de uMurmur: # cd /umurmur-0.2.1/src et compilons: # make ARCH=arm Si la compilation se passe sans erreur, nous pouvons déjà copier umurmurd dans un dossier référencé dans le PATH: # mv umurmurd /opt/bin/ 6. Configuration de uMurmur(4) Dans le dossier parent de la source de uMurmur se trouve un exemple de fichier de configuration: # cd /umurmur-0.2.1 Editez le fichier umurmur.conf à votre convenance (si ce n'est pas assez simple et/ou explicite, passez voir la référence (4)). Et enregistrez-le dans le dossier /etc Note: si vous avez laissé le repertoire pour la clé et le certificat par défaut, n'oubliez pas de le créer: # mkdir /etc/umurmur 7. Lancer uMurmur # umurmurd 7.1. Lancer uMurmur automatiquement au démarrage # cd /usr/local/etc/rc.d Il faut créer ici un fichier umurmur.sh contenant le code suivant: #!/bin/sh case $1 in start) echo "Démarrage de uMurmur ..." umurmurd exit 0 ;; stop) echo "Arrêt de uMurmur ..." killall umurmurd exit 0 ;; statut) ps | grep -v grep | grep umurmurd > /dev/null if [ $? -ne 0 ]; then echo "Statut: uMurmur n'est pas démarré" exit 1 fi echo "Statut: uMurmur est démarré" exit 0 ;; esac Puis rendre ce fichier executable: # chmod 755 umurmur.sh Voilà! uMurmur se lancera automatiquement au démarrage du NAS! 8. Note de fin et références N'étant pas une machine, il est possible que le tutoriel contienne des erreurs de frappe, si c'est le cas, merci de me le signaler. N'étant pas un grand connaisseur de linux, il est possible que le tutoriel comporte des étapes superflues ou pouvant irriter un puriste, si c'est le cas, merci de me le signaler. Merci de votre lecture! (1)Fichier .spk pour l'installation de uMurmur-0.1.3 (Pour Syno DS207+) (2)Guide pour la compilation sur les Synology (Anglais) (3)Discussion sur nas-forum.com concernant Mumble (4)Wiki officiel de uMurmur 0 Citer
ytehpe Posté(e) le 27 février 2010 Auteur Posté(e) le 27 février 2010 [quote name='MS_Totor' date='27 f 0 Citer
SamSoul Posté(e) le 27 février 2010 Posté(e) le 27 février 2010 Bonjour, Merci pour ce tuto ! C'est bien pratique d'avoir la derni 0 Citer
ytehpe Posté(e) le 27 février 2010 Auteur Posté(e) le 27 février 2010 Je ne suis pas sur à 100% mais il me semble que le plus important est l'installation de ipkg, qui dépend du type de processeur (ARM mv6281, ARM mv5281, PPC mpc8533, etc..) et pas seulement de l'architecture (ARM, PPC, x86, etc). Car c'est lui qui va s'occuper d'installer le gcc avec les fichiers correspondant au processeur. Une fois le bon ipkg installé la seule difference sera pour le "make" qui lui dépend uniquement de l'architecture: Pour l'ARM: make ARCH=arm Pour le PPC: make ARCH=ppc Un avis plus expérimenté reste le bienvenu 0 Citer
MS_Totor Posté(e) le 28 février 2010 Posté(e) le 28 février 2010 @ytehpe j'ai du lire en diagonale sans doute, j'ai viré mon propos, toutes mes excuses, longue vie à ce tuto 0 Citer
SamSoul Posté(e) le 28 février 2010 Posté(e) le 28 février 2010 (modifié) Bonjour, J'ai essayé sur DS-207+ et j'obtiens une erreur lors de la compilation : DiskStation> make ARCH=arm make -C google/protobuf-c/ make[1]: Entering directory `/umurmur-0.2.1/src/google/protobuf-c' gcc -I. -Wall -g -c -o protobuf-c.o protobuf-c.c gcc -I. -Wall -g -c -o protobuf-c-data-buffer.o protobuf-c-data-buffer.c ar rcs libprotobuf_c.a protobuf-c.o protobuf-c-data-buffer.o make[1]: Leaving directory `/umurmur-0.2.1/src/google/protobuf-c' gcc -I. -Wall /opt/include -c -o client.o client.c gcc: /opt/include: linker input file unused because linking not done cc1: /opt/include: No such file or directory make: *** [client.o] Error 1 Je ne trouve pas de solution et je ne peux pas continuer. Si quelqu'un a une idée, merci d'avance. Cordialement. Edit 1 : J'ai peut-être trouvé, j'ai /opt/include et /volume1/opt/include donc je vais essayer de modifier le makefile et voir si j'ai toujours une erreur ou pas... Edit 2 : Quelque soit l'emplacement que j'indique dans le makefile l'erreur est la même. Modifié le 28 février 2010 par SamSoul 0 Citer
Diaoul Posté(e) le 1 mars 2010 Posté(e) le 1 mars 2010 Très bon tuto, je n'avais pas eu le temps de me lancer dans un tuto complet alors j'ai fait un package pour mon usage. Et a partager aussi Je craignais les aléas de la compilation sur différentes archi D'ailleurs, si quelqu'un veut faire un package pour son usage avec les commandes "start" et "stop" directement dans le DSM, il suffit de décompresser mon .spk qui n'est en fait qu'un .tar.gz puis de remplacer le libconfig et urmurmurd par les fichiers fraichement compilés grâce a ce tuto. Vous recompressez le tout, renommez en .spk et hop, c'est prêt Peut être que tu pourrais mettre ça en annexe de ton excellent tuto afin de rendre la chose plus user-friendly (si besoin de modifier mon .spk n'hésitez pas, je pensais faire une petite interface pour choisir ou non le lancement au démarrage ainsi que l'édition du fichier de configuration, mais pas le temps ^^) 0 Citer
SamSoul Posté(e) le 1 mars 2010 Posté(e) le 1 mars 2010 Et si tu met rien ? ^^ Je vais essayer 0 Citer
Diaoul Posté(e) le 2 mars 2010 Posté(e) le 2 mars 2010 J'ai fait un autre package qui n'apporte pas grand chose de plus pour l'instant et que je n'ai donc pas publié. Fonctionnalité supplémentaire : - Si Config File Editor est installé, les fichiers de configurations seront ajoutés a la liste des fichiers éditables. La configuration se fait donc entièrement par le DSM à condition d'avoir ce fameux package (très bien fait au passage). Je comptais rajouter un lien dans le "Bureau" du DSM afin que lorsque l'on clique dessus, Mumble s'ouvre directement sur le bon serveur. En vain, Synology n'autorise pas d'autres protocoles que http:// et https:// alors qu'il me faudrait mumble://. J'ai envoyé un mail au support, car ça pourrait pas mal servir (je pense notamment à irc:// et tant d'autres). On verra la suite 0 Citer
SamSoul Posté(e) le 5 mars 2010 Posté(e) le 5 mars 2010 J'ai fait un autre package qui n'apporte pas grand chose de plus pour l'instant et que je n'ai donc pas publié. Fonctionnalité supplémentaire : - Si Config File Editor est installé, les fichiers de configurations seront ajoutés a la liste des fichiers éditables. La configuration se fait donc entièrement par le DSM à condition d'avoir ce fameux package (très bien fait au passage). Je comptais rajouter un lien dans le "Bureau" du DSM afin que lorsque l'on clique dessus, Mumble s'ouvre directement sur le bon serveur. En vain, Synology n'autorise pas d'autres protocoles que http:// et https:// alors qu'il me faudrait mumble://. J'ai envoyé un mail au support, car ça pourrait pas mal servir (je pense notamment à irc:// et tant d'autres). On verra la suite Merci, en tout cas le dernier package tourne nickel chrome sur 207+. Je ne connaissais pas le site de Merty, il y a quelques .spk intéressants J'espère que le support va pouvoir t'aider. Cordialement. 0 Citer
ikeke Posté(e) le 5 mars 2010 Posté(e) le 5 mars 2010 Je comptais rajouter un lien dans le "Bureau" du DSM afin que lorsque l'on clique dessus, Mumble s'ouvre directement sur le bon serveur. En vain, Synology n'autorise pas d'autres protocoles que http:// et https:// alors qu'il me faudrait mumble://. Tu ne peux pas faire pointer le clic sur l'icone vers une page web en php qui contiendrait le code suivant ? <?php header('Location: mumble://adressedelapagedemumble'); ?> C'est une redirection en PHP, cela devrait passer je pense. 0 Citer
kanjusei Posté(e) le 14 mars 2010 Posté(e) le 14 mars 2010 Les processeur non arm marvell n'ont pas acc 0 Citer
kanjusei Posté(e) le 18 mars 2010 Posté(e) le 18 mars 2010 Moi j'ai ce message d'erreur quand je lance le make de umurmur: make ARCH=arm gcc -I. -Wall -c -o conf.o conf.c conf.c:38:23: error: libconfig.h: No such file or directory conf.c:45: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'configuration' conf.c: In function 'Conf_init': conf.c:59: warning: implicit declaration of function 'config_init' conf.c:59: error: 'configuration' undeclared (first use in this function) conf.c:59: error: (Each undeclared identifier is reported only once conf.c:59: error: for each function it appears in.) conf.c:64: warning: implicit declaration of function 'config_read_file' conf.c:64: error: 'CONFIG_TRUE' undeclared (first use in this function) conf.c:66: warning: implicit declaration of function 'config_error_text' conf.c:66: warning: implicit declaration of function 'config_error_line' conf.c:66: warning: format '%s' expects type 'char *', but argument 4 has type 'int' conf.c: In function 'Conf_deinit': conf.c:74: warning: implicit declaration of function 'config_destroy' conf.c:74: error: 'configuration' undeclared (first use in this function) conf.c: In function 'getStrConf': conf.c:79: error: 'config_setting_t' undeclared (first use in this function) conf.c:79: error: 'setting' undeclared (first use in this function) conf.c:84: warning: implicit declaration of function 'config_lookup' conf.c:84: error: 'configuration' undeclared (first use in this function) conf.c:88: warning: implicit declaration of function 'config_setting_get_string' conf.c:88: warning: assignment makes pointer from integer without a cast conf.c:99: warning: assignment makes pointer from integer without a cast conf.c:110: warning: assignment makes pointer from integer without a cast conf.c:121: warning: assignment makes pointer from integer without a cast conf.c:132: warning: assignment makes pointer from integer without a cast conf.c:143: warning: assignment makes pointer from integer without a cast conf.c: In function 'getIntConf': conf.c:158: error: 'config_setting_t' undeclared (first use in this function) conf.c:158: error: 'setting' undeclared (first use in this function) conf.c:162: error: 'configuration' undeclared (first use in this function) conf.c:166: warning: implicit declaration of function 'config_setting_get_int' conf.c: In function 'Conf_getNextChannel': conf.c:192: error: 'config_setting_t' undeclared (first use in this function) conf.c:192: error: 'setting' undeclared (first use in this function) conf.c:196: error: 'configuration' undeclared (first use in this function) conf.c:199: warning: assignment makes pointer from integer without a cast conf.c:205: warning: assignment makes pointer from integer without a cast conf.c:212: warning: assignment makes pointer from integer without a cast conf.c:219: warning: implicit declaration of function 'config_setting_get_bool' conf.c: In function 'Conf_getNextChannelLink': conf.c:226: error: 'config_setting_t' undeclared (first use in this function) conf.c:226: error: 'setting' undeclared (first use in this function) conf.c:230: error: 'configuration' undeclared (first use in this function) conf.c:233: warning: assignment makes pointer from integer without a cast conf.c:239: warning: assignment makes pointer from integer without a cast make: *** [conf.o] Error 1 DiskStation> conf.c:38:23: error: libconfig.h: No such file or directory -ash: conf.c:38:23:: not found DiskStation> make ARCH=arm gcc -I. -Wall -c -o conf.o conf.c conf.c:38:23: error: libconfig.h: No such file or directory conf.c:45: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'configuration' conf.c: In function 'Conf_init': conf.c:59: warning: implicit declaration of function 'config_init' conf.c:59: error: 'configuration' undeclared (first use in this function) conf.c:59: error: (Each undeclared identifier is reported only once conf.c:59: error: for each function it appears in.) conf.c:64: warning: implicit declaration of function 'config_read_file' conf.c:64: error: 'CONFIG_TRUE' undeclared (first use in this function) conf.c:66: warning: implicit declaration of function 'config_error_text' conf.c:66: warning: implicit declaration of function 'config_error_line' conf.c:66: warning: format '%s' expects type 'char *', but argument 4 has type 'int' conf.c: In function 'Conf_deinit': conf.c:74: warning: implicit declaration of function 'config_destroy' conf.c:74: error: 'configuration' undeclared (first use in this function) conf.c: In function 'getStrConf': conf.c:79: error: 'config_setting_t' undeclared (first use in this function) conf.c:79: error: 'setting' undeclared (first use in this function) conf.c:84: warning: implicit declaration of function 'config_lookup' conf.c:84: error: 'configuration' undeclared (first use in this function) conf.c:88: warning: implicit declaration of function 'config_setting_get_string' conf.c:88: warning: assignment makes pointer from integer without a cast conf.c:99: warning: assignment makes pointer from integer without a cast conf.c:110: warning: assignment makes pointer from integer without a cast conf.c:121: warning: assignment makes pointer from integer without a cast conf.c:132: warning: assignment makes pointer from integer without a cast conf.c:143: warning: assignment makes pointer from integer without a cast conf.c: In function 'getIntConf': conf.c:158: error: 'config_setting_t' undeclared (first use in this function) conf.c:158: error: 'setting' undeclared (first use in this function) conf.c:162: error: 'configuration' undeclared (first use in this function) conf.c:166: warning: implicit declaration of function 'config_setting_get_int' conf.c: In function 'Conf_getNextChannel': conf.c:192: error: 'config_setting_t' undeclared (first use in this function) conf.c:192: error: 'setting' undeclared (first use in this function) conf.c:196: error: 'configuration' undeclared (first use in this function) conf.c:199: warning: assignment makes pointer from integer without a cast conf.c:205: warning: assignment makes pointer from integer without a cast conf.c:212: warning: assignment makes pointer from integer without a cast conf.c:219: warning: implicit declaration of function 'config_setting_get_bool' conf.c: In function 'Conf_getNextChannelLink': conf.c:226: error: 'config_setting_t' undeclared (first use in this function) conf.c:226: error: 'setting' undeclared (first use in this function) conf.c:230: error: 'configuration' undeclared (first use in this function) conf.c:233: warning: assignment makes pointer from integer without a cast conf.c:239: warning: assignment makes pointer from integer without a cast make: *** [conf.o] Error 1 0 Citer
SamSoul Posté(e) le 22 mars 2010 Posté(e) le 22 mars 2010 Bonjour, J'ai essayé de compiler libconfig et umurmur pour les proc x86 (et éventuellement adapter le .spk de Diaoul) mais la compilation de libconfig me retourne une erreur : make[3]: *** [libconfig++.la] Error 1 make[3]: Leaving directory `/libconfig-1.4.3/lib' make[2]: *** [all] Error 2 make[2]: Leaving directory `/libconfig-1.4.3/lib' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/libconfig-1.4.3' make: *** [all] Error 2 J'ai pourtant appliqué le tuto à la lettre en utilisant make ARCH=x86 au lieu de make ARCH=ppc (j'ai même essayé make tout court). Si vous avez des idées, merci d'avance. Sam. 0 Citer
Messages recommandés
Rejoindre la conversation
Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.