pccb00 Posté(e) le 27 novembre 2016 Partager Posté(e) le 27 novembre 2016 Bonjour, Je souhaiterai ajouter un driver directement dur mon Syno sans passer par la cross-compilation sur un Linux externe. Je pense que cela est possible (déjà vu pour une imprimante sur un forum US) J'ai un adaptateur Wifi/Usb Netgear A6210, je veux ajouter les drivers, j'ai téléchargé les sources du driver Linux de mon Netgear mais cela ne fonctionne pas...je pense que mon DSm est prêt a compiler directement ( IPKG installé, compilateur aussi, make...) . Je me connecte en SSH sur mon Nas, vais dans le répertoire ou j'ai copié les drivers Linux de mon Netgear A6210 mais lorsque je lance la commande make je reçois l'erreur suivante : admin@DiskStation:/volume1/SauvegardePc/NetgearA6210$ sudo make Password: export DBGFLAGS *** Building driver with debug messages *** cp -f os/linux/Makefile.6 /volume1/SauvegardePc/NetgearA6210/os/linux/Makefile make -C /usr/lib/modules/3.10.77/build DBGFLAGS=-DDBG SUBDIRS=/volume1/SauvegardePc/NetgearA6210/os/linux modules make: *** /usr/lib/modules/3.10.77/build: No such file or directory. Stop. make: *** [debug] Error 2 Je ne sais plus quoi faire .... quelqu'un peut il m'aider ? Merci 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Fenrir Posté(e) le 27 novembre 2016 Partager Posté(e) le 27 novembre 2016 il y a 28 minutes, pccb00 a dit : sans passer par la cross-compilation Pas besoin de cross compilation, ton nas est un x86. Tu ferais mieux de le faire depuis un linux à part à mon avis, ça éviterait d'installer plein de dépendances sur le syno et ça ira nettement plus vite. Une petite VM est c'est réglé. Autre possibilité, comme tu as un modèle +, tu peux passer par docker => installe un conteneur avec tout le nécessaire pour compiler il y a 27 minutes, pccb00 a dit : sudo make pourquoi faire un sudo ici il y a 25 minutes, pccb00 a dit : make: *** /usr/lib/modules/3.10.77/build: No such file or directory. Stop. tu n'as pas les dépendances demandées par ton makefile ------- 2 liens qui peuvent te servir : https://github.com/jurobystricky/Netgear-A6210 https://developer.synology.com/developer-guide/create_package/compile_kernel_module.html 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
pccb00 Posté(e) le 27 novembre 2016 Auteur Partager Posté(e) le 27 novembre 2016 Bonjour Fenrir, Merci pour ta réponse rapide. Je vais essayé de suivre tes conseils mais je ne suis pas spécialiste Linux !! C'est sur le premier lien que j'ai déja téléchargé les drivers Linux en début de semaine. Si j'ai bien compris je peux utiliser docker mais ou ? sur mon Syno ou sur une VM Linux ? Autre question , puis je utiliser Cygwin ? Merci encore 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Fenrir Posté(e) le 27 novembre 2016 Partager Posté(e) le 27 novembre 2016 il y a 27 minutes, pccb00 a dit : Si j'ai bien compris je peux utiliser docker mais ou ? sur mon Syno ou sur une VM Linux ? docker sur le syno si vraiment tu ne veux pas installer une VM sur ton pc il y a 28 minutes, pccb00 a dit : Autre question , puis je utiliser Cygwin ? pas pour compiler des modules du noyau 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
pccb00 Posté(e) le 27 novembre 2016 Auteur Partager Posté(e) le 27 novembre 2016 Bonsoir, Désolé, mais je suis perdu... existe-t-il un Tuto simple qui pourrait me décrire les étapes a suivre ? Merci pour l'aide .. 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Fenrir Posté(e) le 27 novembre 2016 Partager Posté(e) le 27 novembre 2016 Tu parles de compiler un module du noyau directement sur le nas et tu es perdu avec ce que je viens d'indiquer ? installe VirtualBox sur ton pc créé une machine virtuelle Linux et installe la distribution de ton choix installe les outils de compilation nécessaires installe les toolchain Synology En passant, vu que tu n'as pas l'air à l'aise, le chargement d'un pilote instable ou mal compilé peut empêcher le nas de démarrer ... 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
pccb00 Posté(e) le 29 novembre 2016 Auteur Partager Posté(e) le 29 novembre 2016 Bonsoir, J' avance doucement... j'ai installé VirtualBox puis Ubuntu 16.04. Ensuite j'ai téléchargé les sources Netgear A6210 ici: https://github.com/jurobystricky/Netgear-A6210 Puis j'ai juste exécuté Make et Sudo Make Install, le driver a été généré et installé puis mon adaptateur Netgear visible sur ma VM Ubuntu...gagné !! Pourquoi n'est ce pas possible directement sur le DS716+II ? peut être faut il modifie le le fichier makefile des sources Netgear ? Merci encore pour votre patience !!! 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Fenrir Posté(e) le 29 novembre 2016 Partager Posté(e) le 29 novembre 2016 (modifié) il y a 20 minutes, pccb00 a dit : Puis j'ai juste exécuté Make et Sudo Make Install, le driver a été généré et installé puis mon adaptateur Netgear visible sur ma VM Ubuntu...gagné !! Donc tu l'as compilé pour ton Ubuntu 16.04 (version de noyau+libs) et son modèle de CPU. Pour le cpu ce n'est pas trop gênant normalement, par contre le noyau doit être identique (ou très similaire). De même, les dépendances doivent être aux mêmes endroits. Pour que ça marche sur ton nas, tu dois donc le compiler avec les bonnes options ..., c'est à ça que servent les toolkit. il y a 20 minutes, pccb00 a dit : Pourquoi n'est ce pas possible directement sur le DS716+II ? Ce n'est pas que ce n'est pas possible, c'est juste fortement déconseillé car sale, lent et risqué. Pour compiler un module (ou un noyau), il faut les sources du module, mais aussi du noyau (à minima les entêtes) puis les outils de compilation et de debug, rien de tout ça c'est présent sur un nas et rien de tout ça ne devrait être installé sur une machine de "prod". J'ai trouvé cet exemple, un peu vieux mais bien détaillé, ça devrait t'aider : https://hallard.me/how-to-install-kernel-modules-on-synology-ds1010/ Edit : un autre avantage de le faire sur un machine indépendante, si synology met à jour son noyau (ce qui est fréquent), tu n'auras qu'à mettre à jour ton toolkit et les toolchains dans ta vm, alors que tu si le fais sur le nas, il faudra tout reprendre depuis le début. Modifié le 29 novembre 2016 par Fenrir 1 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
pccb00 Posté(e) le 30 novembre 2016 Auteur Partager Posté(e) le 30 novembre 2016 Merci...je comprends mieux...je vais essayé.. Merci 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
pccb00 Posté(e) le 3 décembre 2016 Auteur Partager Posté(e) le 3 décembre 2016 Bonsoir, Je viens de suivre cette procédure (équivalente a d'autres post trouvé sur le web) https://hallard.me/how-to-install-kernel-modules-on-synology-ds1010/ Par contre je bloque sur une étape... Lorsque je lance la commande make menuconfig Le menu s'ouvre bien, mais je ne vois pas le driver correspondant a mon NetGear...je pense que dans ce menu on trouve seulement les drivers ou modules qui sont déjà connu ou exploité par Synology. J'ai cherche das le menus et les sous menus mais rien ne correspond... Je ne sais pas s'il est possible d'ajouter mon driver ... Merci Doc1.pdf 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Fenrir Posté(e) le 3 décembre 2016 Partager Posté(e) le 3 décembre 2016 il y a 4 minutes, pccb00 a dit : Je ne sais pas s'il est possible d'ajouter mon driver ... Dans le lien que je t'ai filé, le gars avait besoin de modifier la glibc (c'est pour ça qu'il a recompilé le noyau), tu ne devrais pas avoir besoin de le faire. Il faut simplement reproduire ce que tu as fait sur ton ubuntu, à savoir le compiler sous forme de module mais dans un "environnement" conforme à ton syno. 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
pccb00 Posté(e) le 10 décembre 2016 Auteur Partager Posté(e) le 10 décembre 2016 Bonjour, Je crois que je vais jeter l'éponge !!! car mes modestes connaissances Linux ne me permettent pas d'aller plus loin ... J'ai bien réussi a installer les Toolkit pour mon environnement, cette structure est bien présente sur ma vm Ubuntu: Mais après je ne sais plus quoi faire, je suppose que je dois exécuter make qui va uliser le makefile disponible ici? : https://github.com/jurobystricky/Netgear-A6210 merci toolkit/ ├── pkgscripts/ └── build_env/ ├── ds.${platform}-${version}/ 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Fenrir Posté(e) le 10 décembre 2016 Partager Posté(e) le 10 décembre 2016 Ça fait quelques années que je n'ai plus jouer à ça, donc je suis un peu (bcp) rouillé, peut-être que @gaetan.cambier pourras mieux te guider. 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
gaetan.cambier Posté(e) le 10 décembre 2016 Partager Posté(e) le 10 décembre 2016 Suis sur le coup pour une solution fonctionelle Edit : laisser son pc portable faire de la cross-compil sur batterie qd on est pas là, ca se termine toujours mal ... baterie vide 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
pccb00 Posté(e) le 10 décembre 2016 Auteur Partager Posté(e) le 10 décembre 2016 Merci 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
gaetan.cambier Posté(e) le 11 décembre 2016 Partager Posté(e) le 11 décembre 2016 (modifié) La théorie de la compilation selon le développeur : $ git clone https://github.com/jurobystricky/Netgear-A6210 $ cd Netgear-A6210 $ make $ sudo make install je vais lui faire bouffer son make et make install Ca va encore se terminer avec des patch Modifié le 11 décembre 2016 par gaetan.cambier 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
gaetan.cambier Posté(e) le 11 décembre 2016 Partager Posté(e) le 11 décembre 2016 Je te remercie @Fenrir de m'avoir refiler la cross compil ... Bon, j'ai un soucis ... ca compil bien et puis .. le malheur arrive /home/gaetan/spksrc/cross/netgear-a6210/work-braswell-5.2/Netgear-A6210-m-7/os/linux/../../os/linux/cfg80211/cfg80211.c: In function ‘CFG80211_OpsMgmtTx’: /home/gaetan/spksrc/cross/netgear-a6210/work-braswell-5.2/Netgear-A6210-m-7/os/linux/../../os/linux/cfg80211/cfg80211.c:1822:2: warning: passing argument 3 of ‘RTMP_COM_IoctlHandle’ discards ‘const’ qualifier from pointer target type [enabled by default] In file included from /home/gaetan/spksrc/cross/netgear-a6210/work-braswell-5.2/Netgear-A6210-m-7/include/rt_config.h:49:0, from /home/gaetan/spksrc/cross/netgear-a6210/work-braswell-5.2/Netgear-A6210-m-7/os/linux/../../os/linux/cfg80211/cfg80211.c:50: /home/gaetan/spksrc/cross/netgear-a6210/work-braswell-5.2/Netgear-A6210-m-7/include/rtmp.h:6247:5: note: expected ‘void *’ but argument is of type ‘const u8 *’ /home/gaetan/spksrc/cross/netgear-a6210/work-braswell-5.2/Netgear-A6210-m-7/os/linux/../../os/linux/cfg80211/cfg80211.c: At top level: /home/gaetan/spksrc/cross/netgear-a6210/work-braswell-5.2/Netgear-A6210-m-7/os/linux/../../os/linux/cfg80211/cfg80211.c:2417:2: warning: initialization from incompatible pointer type [enabled by default] /home/gaetan/spksrc/cross/netgear-a6210/work-braswell-5.2/Netgear-A6210-m-7/os/linux/../../os/linux/cfg80211/cfg80211.c:2417:2: warning: (near initialization for ‘CFG80211_Ops.get_station’) [enabled by default] CC [M] /home/gaetan/spksrc/cross/netgear-a6210/work-braswell-5.2/Netgear-A6210-m-7/os/linux/../../os/linux/cfg80211/cfg80211_util.o /home/gaetan/spksrc/cross/netgear-a6210/work-braswell-5.2/Netgear-A6210-m-7/os/linux/../../os/linux/cfg80211/cfg80211_util.c: In function ‘CFG80211OS_RxMgmt’: /home/gaetan/spksrc/cross/netgear-a6210/work-braswell-5.2/Netgear-A6210-m-7/os/linux/../../os/linux/cfg80211/cfg80211_util.c:944:2: error: too many arguments to function ‘cfg80211_rx_mgmt’ In file included from include/net/mac80211.h:21:0, from /home/gaetan/spksrc/cross/netgear-a6210/work-braswell-5.2/Netgear-A6210-m-7/include/os/rt_linux.h:58, from /home/gaetan/spksrc/cross/netgear-a6210/work-braswell-5.2/Netgear-A6210-m-7/include/rtmp_os.h:30, from /home/gaetan/spksrc/cross/netgear-a6210/work-braswell-5.2/Netgear-A6210-m-7/include/rtmp_comm.h:64, from /home/gaetan/spksrc/cross/netgear-a6210/work-braswell-5.2/Netgear-A6210-m-7/os/linux/../../os/linux/cfg80211/cfg80211_util.c:27: include/net/cfg80211.h:3849:6: note: declared here scripts/Makefile.build:308: recipe for target '/home/gaetan/spksrc/cross/netgear-a6210/work-braswell-5.2/Netgear-A6210-m-7/os/linux/../../os/linux/cfg80211/cfg80211_util.o' failed make[4]: *** [/home/gaetan/spksrc/cross/netgear-a6210/work-braswell-5.2/Netgear-A6210-m-7/os/linux/../../os/linux/cfg80211/cfg80211_util.o] Error 1 Makefile:1225: recipe for target '_module_/home/gaetan/spksrc/cross/netgear-a6210/work-braswell-5.2/Netgear-A6210-m-7/os/linux' failed make[3]: *** [_module_/home/gaetan/spksrc/cross/netgear-a6210/work-braswell-5.2/Netgear-A6210-m-7/os/linux] Error 2 make[3]: Leaving directory '/home/gaetan/spksrc/kernel/syno-braswell-5.2/work/source/linux' Makefile:59: recipe for target 'debug' failed 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
pccb00 Posté(e) le 11 décembre 2016 Auteur Partager Posté(e) le 11 décembre 2016 Bonsoir, pensez vous trouver une solution sans dépenser trop d'énergie?...Je suis désolé de vous donner du travail, si cela est trop compliqué ou prend trop de temps vous pouvez laisser tomber. Si cela ne marche pas je vais commander une clé wifi compatible d'origine Merci encore.. 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Fenrir Posté(e) le 11 décembre 2016 Partager Posté(e) le 11 décembre 2016 il y a 54 minutes, gaetan.cambier a dit : Je te remercie @Fenrir de m'avoir refiler la cross compil ... ba je ne t’avais pas demandé de le faire mais juste de jeter un œil. Sinon je viens de tomber la dessus, mais pas testé : https://hub.docker.com/r/synocommunity/spksrc/~/dockerfile/ il y a 3 minutes, pccb00 a dit : Si cela ne marche pas je vais commander une clé wifi compatible d'origine Ça serait effectivement plus simple, mais c'est le challenge qui est intéressant ici. 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
gaetan.cambier Posté(e) le 11 décembre 2016 Partager Posté(e) le 11 décembre 2016 Vous inquiéter pas, c compiler Bon, reste plus que l'install ... mais ca avance ... 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
pccb00 Posté(e) le 11 décembre 2016 Auteur Partager Posté(e) le 11 décembre 2016 Bon avec mes petites connaissances j'étais pas prêt de réussir ... 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
gaetan.cambier Posté(e) le 11 décembre 2016 Partager Posté(e) le 11 décembre 2016 il y a 31 minutes, Fenrir a dit : Sinon je viens de tomber la dessus, mais pas testé : https://hub.docker.com/r/synocommunity/spksrc/~/dockerfile/ oui, c'est le dockerfile officiel de synocommunity ... mais bon cross-compiler en docker sur le nas ... ca va compiler à la vitesse d'une tortue, mais j'utilise toujours le spksrc mais en machine virtuelle sur 1 core i7, c + rapide 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
gaetan.cambier Posté(e) le 11 décembre 2016 Partager Posté(e) le 11 décembre 2016 il y a 46 minutes, gaetan.cambier a dit : Bon, reste plus que l'install ... mais ca avance ... C'est réglé, tout semble OK donc, reste plus qu'a tester insmod et puis ... on verra 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
pccb00 Posté(e) le 12 décembre 2016 Auteur Partager Posté(e) le 12 décembre 2016 bonjour Ca va mieux j'ai posé mon portable sur sa base (donc connecté via le lien port ethernet filaire) , j'ai relancé et laissé faire cette nuit...je pense que c'est bon . J'ai pas vu le résultat dans ma session SSH car mon PC et ma VM ont redemarré cette nuit !!! certainement les MAJ windows .. Bon mais dans tous les cas j'ai bien un fichier de 1Mo mt7662u_sta.ko que j'ai trouvé dans /cross/netgear-a-6210/work-braswell-R.2/install/usr/local. J'espere qu'il fonctionnera avec mon DSM: admin@DiskStation:/$ uname -a Linux DiskStation 3.10.77 #8451 SMP Fri Dec 9 10:50:36 CST 2016 x86_64 GNU/Linux synology_braswell_716+II. Pour l'installer sur le NAS faut il utiliser ipkg ? ou puis je le copier directement au bon emplacement ? pas le temps de le faire ce matin, faut aller travailler Je reprends mon périple ce soir...merci et bonne journée . 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
pccb00 Posté(e) le 16 décembre 2016 Auteur Partager Posté(e) le 16 décembre 2016 Bonsoir, Je viens de récupérer support pour braswell 6.0.2 sur github, puis lancé la compilation qui semble s'etre bien passée. J'ai bien le fichier mt7662u_sta.ko , par contre même problème sur mon nas... "insmod: error inserting 'mt7662u_sta.ko': -1 Invalid module format" Bon ce n'est pas bien grave, je vais trouver une cle USB Wifi compatible, mais bon au moins j'aurai eu un cours pratique de Linux Merci encore pour votre suppor Je crois que les sources 6.0 et plus ne sont pas disponibles ... https://forum.synology.com/enu/viewtopic.php?f=223&t=120535 https://trac.ffmpeg.org/ticket/5814#ticket Donc a part compiler directement sur le NAS...je pense que cela va etre difficile !! 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
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.