2016-05-09 2 views
0

J'utilise SOCAT 1.7.2.4 de Yocto avec PowerPC comme cible (Big Endian) sur une machine Linux. Pas en mesure de commencer à SOCAT que je reçois l'affirmation ci-dessousImpossible de configurer TERMIOS dans SOCAT, xioinitialize: Assertion

xioinitialize.c:45: xioinitialize: Assertion `3 << opt_crdly.arg3 == 00030000' failed. 

Je commentais le assert dans xioinitialize.c et je reçois l'affirmation ci-dessous

xioinitialize.c:45: xioinitialize: Assertion `3 << opt_tabdly.arg3 == 00006000' failed. 

Quand je sautera cette assertion, je saluais par le prochain

xioinitialize.c:45: xioinitialize: Assertion `3 << opt_csize.arg3 == 00001400' failed. 

Si je passe tout cela, je peux bien exécuter SOCAT. Comment puis-je me débarrasser de ces affirmations? Je lance SOCAT sur la cible x86/Ubuntu et je ne vois pas ces assertions. Si je désactive termios sur la cible PowerPC, je peux exécuter SOCAT (mais j'ai besoin de support termios). Quand je recherche en ligne, je vois ce poste https://dev.openwrt.org/ticket/5210 qui mentionne ce problème a été corrigé il y a 5 ans.

Répondre

0

Eh bien le lien que vous mentionner conduit à cet autre link, qui stipule:

Cela ne se produit que dans un environnement multiplate-compilation, sinon le script configure les devine. Etes-vous sûr de bien avoir compilé SOCAT correctement?

Je voudrais installer une machine Debian à la place, et utiliser le SOCAT package directement.

Si vous voulez tester rapidement le binaire, vous pouvez également faire:

$ cd /tmp 
$ wget http://ftp.us.debian.org/debian/pool/main/s/socat/socat_1.7.2.4-2_powerpc.deb 
$ ar x socat_1.7.2.4-2_powerpc.deb 
$ tar xf data.tar.xz 
$ ./usr/bin/socat 

Vous devez vous assurer que vous avez les dépendances appropriées, par exemple. libssl1.0.0 (> = 1,0,0) et libwrap0 (> = 7,6). Pour vérifier tout simplement vérifier la sortie de:

$ ldd ./usr/bin/socat 
+0

Je compile correctement SOCAT, le problème est avec les variables CRDLY, TBDLY et CSIZE. La valeur par défaut dans la recette est 9, 11, 14 respectivement, ce qui ne fonctionnera pas pour moi. J'ai réussi à faire fonctionner SOCAT en modifiant ces valeurs mais je ne suis pas sûr de leur signification. – Neo

+0

Dans ce cas, comment expliquez-vous que 'socat' fonctionne sur Debian/PowerPC? – malat

+0

Vous avez peut-être utilisé socat pour la cible PowerPC, mais exécutez-vous le binaire socat sur une cible PowerPC? Comme mentionné dans le post précédent, peut-être configurer n'initialise pas l'environnement correctement. CRDLY, TBDLY et CSIZE ont été spécifiés dans la recette en tant qu'arguments au lieu de configurer la définition de ces variables pour la cible PowerPC. – Neo