2017-11-27 4 views
0

Problem: Ich muss Cepstral (TTS-Engine) in Freeswitch unter Debian 8 installieren. Freeswitch ist bereits betriebsbereit, aber ich musste es aus der Quelle erstellen, um es zu erstellen das Modul mod_cepstral.Fehler: Feld 'ctx' hat unvollständigen Typ EVP_CIPHER_CTX

Wenn ich laufen make Dies ist der Fehler, den ich bekommen:

In file included from ./crypto/include/prng.h:17:0, 
       from ./crypto/include/crypto_kernel.h:50, 
       from ./include/srtp.h:53, 
       from srtp/srtp.c:46: 
./crypto/include/aes_icm_ossl.h:66:20: error: field ‘ctx’ has incomplete type 
    EVP_CIPHER_CTX ctx; 
        ^~~ 
In file included from srtp/srtp.c:50:0: 
./crypto/include/aes_gcm_ossl.h:58:18: error: field ‘ctx’ has incomplete type 
    EVP_CIPHER_CTX ctx; 
        ^~~ 
Makefile:646: recipe for target 'srtp.lo' failed 
make[1]: *** [srtp.lo] Error 1 
make[1]: Leaving directory '/usr/src/freeswitch/libs/srtp' 
Makefile:3931: recipe for target 'libs/srtp/libsrtp.la' failed 
make: *** [libs/srtp/libsrtp.la] Error 2 

Ich habe im Internet nach Lösungen wurde zum Scheuern, aber ich bin kein Entwickler und dies ist Art und Weise über den Kopf. Jede Hilfe wäre willkommen.

Antwort

0

Nachdem wir mit dem Support von Cepstral gesprochen hatten, stellten wir fest, dass Jessie (Debian 8) noch nicht vollständig kompatibel ist. Ich habe den Server mit Debian 7 neu aufgebaut und es funktioniert jetzt gut.

0

Es scheint, dass eine Abhängigkeit von OpenSSL besteht, aber die Version von OpenSSL, die Sie verwenden, ist inkompatibel. Sie verwenden OpenSSL 1.1.0, aber Sie müssen OpenSSL 1.0.2

+0

Gerade installiert 1.1.0 und getestet, aber immer noch den gleichen Fehler – Joe

+0

Wie ich in meiner Antwort sagte, müssen Sie 1.0.2 * nicht * 1.1.0 verwenden. Die obigen Fehler resultieren aus einer Nichtübereinstimmung zwischen einer Anwendung, die 1.0.2 erwartet, aber 1.1.0-Kopfzeilen verwendet. –

+0

yeah Ich dachte ich hätte 1.0.2 installiert (der obige Kommentar war ein Tippfehler) und scheiterte immer noch, aber nach dem Überprüfen stellte ich fest, dass die Installation nicht ganz in Anspruch nahm. Jetzt neu installieren, um es erneut zu testen. – Joe

-1
wget https://github.com/cisco/libsrtp/archive/v2.1.0.tar.gz 
tar xfv v2.1.0.tar.gz 
cd libsrtp-2.1.0 
./configure --prefix=/usr --enable-openssl 
make shared_library && sudo make install 

Erhalten Sie die neueste Version von libsrtp verwenden.

+0

Bitte erklären Sie, warum der obige Code diese Situation beheben sollte. –

Verwandte Themen