HD Видеоконференции на OpenMCU



Добавлено зеркало для сайта и форума. http://videoswitch.ru/
Если будут проблемы с доступом - все изменения так же будут отображены в github репозитории.

Автор Тема: Установка на debian 8 jessie (сборка, git)  (Прочитано 5574 раз)

realvava

  • Новичок
  • *
  • Сообщений: 3
  • Карма: 2
Хочу поделиться успешным опытом установки на Debian 8 Jessie. Для установки был выбран дистрибутив 8.7 amd64 netinstall.
Все действия выполнялись исключительно из под пользователя root.

Первое, что нужно сделать - это дописать репозитарии в /etc/apt/sources.list и добавить ключ для них. Пояснения, думаю, не требует.

deb http://www.deb-multimedia.org jessie main non-free
deb-src http://www.deb-multimedia.org jessie main non-free

apt-get update
apt-get install deb-multimedia-keyring
apt-get update

Далее установим все требуемые пакеты разом

apt-get install build-essential flex bison autoconf automake pkg-config git libmp3lame-dev libvorbis-dev libtheora-dev libspeex-dev yasm pkg-config libfaac-dev libopenjpeg-dev libx264-dev libfreetype6-dev libsofia-sip-ua-dev libvpx-dev libx264-dev libav-tools libavcodec-dev libavutil-dev libsamplerate0-dev libopus-dev libssl-dev srtp-utils libtool libjpeg62-turbo-dev ffmpeg
Переходим к самой сборке (немного копипасты с исправлениями)

Загрузка:
git clone git://github.com/muggot/openmcu.git ./openmcu-ru
cd ./openmcu-ru

Переключаемся на необходимую ветку:
git branch -r
git checkout origin/master

Сборка:
./autogen.sh
./configure
make
make install

Скрин после сборки.

После этого нужно запустить всё это в качестве демона.
/opt/openmcu-ru/bin/openmcu-ru -d
ну или консольного режима
/opt/openmcu-ru/bin/openmcu-ru -x
Далее через веб

 http://srv_ip:1420

Полномасштабного тестирования не производилось, но ошибок в логах вроде как нет.

P.S.: извиняюсь за наглость: первый пост и сразу гайд, но я посмотрел, тут задавали вопросы на эту тему, вот решил помочь.
« Последнее редактирование: 18 Апреля 2017, 10:23:53 от realvava »

SolarW

  • Новичок
  • *
  • Сообщений: 12
  • Карма: 0
Re: Установка на debian 8 jessie (сборка, git)
« Ответ #1 : 12 Апреля 2017, 12:54:06 »
Большое спасибо за подробный мануал.
Переключаемся на необходимую ветку:
git branch -r
git checkout 4.0
Вопрос - а почему именно 4.0 ветка а не 4.1?

realvava

  • Новичок
  • *
  • Сообщений: 3
  • Карма: 2
Re: Установка на debian 8 jessie (сборка, git)
« Ответ #2 : 14 Апреля 2017, 10:28:04 »
ну 4.1 там нет, а другие ветки там без ./autogen.sh , указанного в мануале.

Поставил 4.1 из ветки мастер, спасибо за наводящий вопрос.
Поправил старт-топ.

Убрал инфу про ручную сборку ffmpeg из старт-топа, чтобы не смущать народ. Кину здесь.

Я собирал ffmpeg вручную (до того, как нашёл нужные репозитарии), но это совершенно не обязательно. Кому понадобится, вот...

mkdir ffmpeg-distr

cd ffmpeg-distr

wget http://ffmpeg.org/releases/ffmpeg-2.7.2.tar.bz2

cd ..

mkdir src

cd src

tar xvjf ../ffmpeg-distr/ffmpeg-2.7.2.tar.bz2

cd ffmpeg-2.7.2

./configure --enable-gpl --enable-postproc --enable-swscale --enable-avfilter --enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-libx264 --enable-libspeex --enable-shared --enable-pthreads --enable-libopenjpeg --enable-libfaac --enable-nonfree

make

make install
« Последнее редактирование: 18 Апреля 2017, 10:24:58 от realvava »

belko

  • Новичок
  • *
  • Сообщений: 21
  • Карма: 0
Re: Установка на debian 8 jessie (сборка, git)
« Ответ #3 : 25 Ноября 2017, 21:31:04 »
На 9 версии не компилится изза openssl 1.1
============== OpenMCU-ru Build Configuration =================
                         OS Type  :  linux-gnu
                    Machine Type  :  x86_64
          Installing into prefix  :  /opt
          Installing directory    :  /opt/openmcu-ru

                       Subtitles  :  enabled
JPEG Frame Encoder (for browser)  :  disabled
      Use libyuv to resize video  :  enabled
        External Audio Resampler  :  enabled - ffmpeg

                VP8 Video Plugin  :  enabled
              H.264 Video Plugin  :  enabled
       H.263/H.263P Video Plugin  :  enabled
              H.261 Video Plugin  :  enabled
              MPEG4 Video Plugin  :  enabled
               OPUS Audio Plugin  :  enabled
               SILK Audio Plugin  :  enabled
              G.722 Audio Plugin  :  enabled
            G.722.1 Audio Plugin  :  enabled
            G.722.2 Audio Plugin  :  enabled
              SPEEX Audio Plugin  :  enabled
            G.723.1 Audio Plugin  :  enabled
               iLBC Audio Plugin  :  enabled
              G.726 Audio Plugin  :  enabled
              G.729 Audio Plugin  :  enabled

 If all settings are OK, type make and make install
========================================================

# make
(make      -C /home/alex/openmcu-ru/libs/ptlib) || exit $?
make[1]: вход в каталог «/home/alex/openmcu-ru/libs/ptlib»
make P_SHAREDLIB=1 opt
make[2]: вход в каталог «/home/alex/openmcu-ru/libs/ptlib»
set -e; if test -e src/ptlib/unix ; then make -C src/ptlib/unix opt; fi;
make[3]: вход в каталог «/home/alex/openmcu-ru/libs/ptlib/src/ptlib/unix»
[CC] /home/alex/openmcu-ru/libs/ptlib/lib/obj_linux_x86_64_r/pssl.o
In file included from /home/alex/openmcu-ru/libs/ptlib/include/ptlib.h:250:0,
                 from ../../ptclib/pssl.cxx:220:
/home/alex/openmcu-ru/libs/ptlib/include/ptlib/psharedptr.h:70:21: warning: ‘template<class> class std::auto_pt ’ is deprecated [-Wdeprecated-declarations]
     PSharedPtr(std::auto_ptr<element_type> & v)
                     ^~~~~~~~
In file included from /usr/include/c++/6/bits/locale_conv.h:41:0,
                 from /usr/include/c++/6/locale:43,
                 from /usr/include/c++/6/iomanip:43,
                 from /home/alex/openmcu-ru/libs/ptlib/include/ptlib/object.h:493,
                 from /home/alex/openmcu-ru/libs/ptlib/include/ptlib/contain.h:257,
                 from /home/alex/openmcu-ru/libs/ptlib/include/ptlib.h:161,
                 from ../../ptclib/pssl.cxx:220:
/usr/include/c++/6/bits/unique_ptr.h:49:28: note: declared here
   template<typename> class auto_ptr;
                            ^~~~~~~~
../../ptclib/pssl.cxx:268:55: error: ‘BIO_s_file_internal’ was not declared in this scope
     PSSL_BIO(BIO_METHOD *method = BIO_s_file_internal())
                                                       ^
In file included from /usr/include/openssl/x509.h:23:0,
                 from /usr/include/openssl/ssl.h:50,
                 from ../../ptclib/pssl.cxx:231:
../../ptclib/pssl.cxx: In member function ‘BOOL PSSLPrivateKey::Create(unsigned int, void (*)(int, int, void*), void*)’:
../../ptclib/pssl.cxx:391:32: warning: ‘RSA* RSA_generate_key(int, long unsigned int, void (*)(int, int, void*), void*)’ is deprecated [-Wdeprecated-declarations]
   if (EVP_PKEY_assign_RSA(key, RSA_generate_key(modulus, 0x10001, callback, cb_arg)))
                                ^
In file included from /usr/include/openssl/rsa.h:13:0,
                 from /usr/include/openssl/x509.h:31,
                 from /usr/include/openssl/ssl.h:50,
                 from ../../ptclib/pssl.cxx:231:
/usr/include/openssl/rsa.h:193:1: note: declared here
 DEPRECATEDIN_0_9_8(RSA *RSA_generate_key(int bits, unsigned long e, void
 ^
In file included from /usr/include/openssl/x509.h:23:0,
                 from /usr/include/openssl/ssl.h:50,
                 from ../../ptclib/pssl.cxx:231:
../../ptclib/pssl.cxx:391:83: warning: ‘RSA* RSA_generate_key(int, long unsigned int, void (*)(int, int, void*), void*)’ is deprecated [-Wdeprecated-declarations]
   if (EVP_PKEY_assign_RSA(key, RSA_generate_key(modulus, 0x10001, callback, cb_arg)))
                                                                                   ^
In file included from /usr/include/openssl/rsa.h:13:0,
                 from /usr/include/openssl/x509.h:31,
                 from /usr/include/openssl/ssl.h:50,
                 from ../../ptclib/pssl.cxx:231:
/usr/include/openssl/rsa.h:193:1: note: declared here
 DEPRECATEDIN_0_9_8(RSA *RSA_generate_key(int bits, unsigned long e, void
 ^
../../ptclib/pssl.cxx: In member function ‘BOOL PSSLPrivateKey::Load(const PFilePath&, PSSLFileTypes)’:
../../ptclib/pssl.cxx:426:12: error: call to ‘PSSL_BIO::PSSL_BIO(BIO_METHOD*)’ uses the default argument for parameter 1, which is not yet defined
   PSSL_BIO in;
            ^~
../../ptclib/pssl.cxx: In member function ‘BOOL PSSLPrivateKey::Save(const PFilePath&, BOOL, PSSLFileTypes)’:
../../ptclib/pssl.cxx:465:12: error: call to ‘PSSL_BIO::PSSL_BIO(BIO_METHOD*)’ uses the default argument for parameter 1, which is not yet defined
   PSSL_BIO out;
            ^~~
../../ptclib/pssl.cxx: In member function ‘BOOL PSSLCertificate::Load(const PFilePath&, PSSLFileTypes)’:
../../ptclib/pssl.cxx:672:12: error: call to ‘PSSL_BIO::PSSL_BIO(BIO_METHOD*)’ uses the default argument for parameter 1, which is not yet defined
   PSSL_BIO in;
            ^~
../../ptclib/pssl.cxx: In member function ‘BOOL PSSLCertificate::Save(const PFilePath&, BOOL, PSSLFileTypes)’:
../../ptclib/pssl.cxx:711:12: error: call to ‘PSSL_BIO::PSSL_BIO(BIO_METHOD*)’ uses the default argument for parameter 1, which is not yet defined
   PSSL_BIO out;
            ^~~
../../ptclib/pssl.cxx: In constructor ‘PSSLDiffieHellman::PSSLDiffieHellman(const BYTE*, PINDEX, const BYTE*, PINDEX)’:
../../ptclib/pssl.cxx:766:5: error: invalid use of incomplete type ‘struct dh_st’
   dh->p = BN_bin2bn(pData, pSize, NULL);
     ^~
In file included from ../../ptclib/pssl.cxx:222:0:
/home/alex/openmcu-ru/libs/ptlib/include/ptclib/pssl.h:103:8: note: forward declaration of ‘struct dh_st’
 struct dh_st;
        ^~~~~
../../ptclib/pssl.cxx:767:5: error: invalid use of incomplete type ‘struct dh_st’
   dh->g = BN_bin2bn(gData, gSize, NULL);
     ^~
In file included from ../../ptclib/pssl.cxx:222:0:
/home/alex/openmcu-ru/libs/ptlib/include/ptclib/pssl.h:103:8: note: forward declaration of ‘struct dh_st’
 struct dh_st;
        ^~~~~
../../ptclib/pssl.cxx:768:9: error: invalid use of incomplete type ‘struct dh_st’
   if (dh->p != NULL && dh->g != NULL)
         ^~
In file included from ../../ptclib/pssl.cxx:222:0:
/home/alex/openmcu-ru/libs/ptlib/include/ptclib/pssl.h:103:8: note: forward declaration of ‘struct dh_st’
 struct dh_st;
        ^~~~~
../../ptclib/pssl.cxx:768:26: error: invalid use of incomplete type ‘struct dh_st’
   if (dh->p != NULL && dh->g != NULL)
                          ^~
In file included from ../../ptclib/pssl.cxx:222:0:
/home/alex/openmcu-ru/libs/ptlib/include/ptclib/pssl.h:103:8: note: forward declaration of ‘struct dh_st’
 struct dh_st;
        ^~~~~
../../ptclib/pssl.cxx: In member function ‘BOOL PSSLDiffieHellman::Load(const PFilePath&, PSSLFileTypes)’:
../../ptclib/pssl.cxx:819:12: error: call to ‘PSSL_BIO::PSSL_BIO(BIO_METHOD*)’ uses the default argument for parameter 1, which is not yet defined
   PSSL_BIO in;
            ^~
../../ptclib/pssl.cxx: In function ‘int Psock_new(BIO*)’:
../../ptclib/pssl.cxx:1234:6: error: invalid use of incomplete type ‘BIO {aka struct bio_st}’
   bio->init     = 0;
      ^~
In file included from /usr/include/openssl/crypto.h:31:0,
                 from /usr/include/openssl/comp.h:16,
                 from /usr/include/openssl/ssl.h:47,
                 from ../../ptclib/pssl.cxx:231:
/usr/include/openssl/ossl_typ.h:79:16: note: forward declaration of ‘BIO {aka struct bio_st}’
 typedef struct bio_st BIO;
                ^~~~~~
../../ptclib/pssl.cxx:1235:6: error: invalid use of incomplete type ‘BIO {aka struct bio_st}’
   bio->num      = 0;
      ^~
In file included from /usr/include/openssl/crypto.h:31:0,
                 from /usr/include/openssl/comp.h:16,
                 from /usr/include/openssl/ssl.h:47,
                 from ../../ptclib/pssl.cxx:231:
/usr/include/openssl/ossl_typ.h:79:16: note: forward declaration of ‘BIO {aka struct bio_st}’
 typedef struct bio_st BIO;
                ^~~~~~
../../ptclib/pssl.cxx:1236:6: error: invalid use of incomplete type ‘BIO {aka struct bio_st}’
   bio->ptr      = NULL;    // this is really (PSSLChannel *)
      ^~
In file included from /usr/include/openssl/crypto.h:31:0,
                 from /usr/include/openssl/comp.h:16,
                 from /usr/include/openssl/ssl.h:47,
                 from ../../ptclib/pssl.cxx:231:
/usr/include/openssl/ossl_typ.h:79:16: note: forward declaration of ‘BIO {aka struct bio_st}’
 typedef struct bio_st BIO;
                ^~~~~~
../../ptclib/pssl.cxx:1237:6: error: invalid use of incomplete type ‘BIO {aka struct bio_st}’
   bio->flags    = 0;
      ^~
In file included from /usr/include/openssl/crypto.h:31:0,
                 from /usr/include/openssl/comp.h:16,
                 from /usr/include/openssl/ssl.h:47,
                 from ../../ptclib/pssl.cxx:231:
/usr/include/openssl/ossl_typ.h:79:16: note: forward declaration of ‘BIO {aka struct bio_st}’
 typedef struct bio_st BIO;
                ^~~~~~
../../ptclib/pssl.cxx: In function ‘int Psock_free(BIO*)’:
../../ptclib/pssl.cxx:1248:10: error: invalid use of incomplete type ‘BIO {aka struct bio_st}’
   if (bio->shutdown) {
          ^~
In file included from /usr/include/openssl/crypto.h:31:0,
                 from /usr/include/openssl/comp.h:16,
                 from /usr/include/openssl/ssl.h:47,
                 from ../../ptclib/pssl.cxx:231:
/usr/include/openssl/ossl_typ.h:79:16: note: forward declaration of ‘BIO {aka struct bio_st}’
 typedef struct bio_st BIO;
                ^~~~~~
../../ptclib/pssl.cxx:1249:12: error: invalid use of incomplete type ‘BIO {aka struct bio_st}’
     if (bio->init) {
            ^~
In file included from /usr/include/openssl/crypto.h:31:0,
                 from /usr/include/openssl/comp.h:16,
                 from /usr/include/openssl/ssl.h:47,
                 from ../../ptclib/pssl.cxx:231:
/usr/include/openssl/ossl_typ.h:79:16: note: forward declaration of ‘BIO {aka struct bio_st}’
 typedef struct bio_st BIO;
                ^~~~~~
../../ptclib/pssl.cxx:1221:51: error: invalid use of incomplete type ‘BIO {aka struct bio_st}’
 #define PSSLCHANNEL(bio)      ((PSSLChannel *)(bio->ptr))
                                                   ^
../../ptclib/pssl.cxx:1250:7: note: in expansion of macro ‘PSSLCHANNEL’
       PSSLCHANNEL(bio)->Shutdown(PSocket::ShutdownReadAndWrite);
       ^~~~~~~~~~~
In file included from /usr/include/openssl/crypto.h:31:0,
                 from /usr/include/openssl/comp.h:16,
                 from /usr/include/openssl/ssl.h:47,
                 from ../../ptclib/pssl.cxx:231:
/usr/include/openssl/ossl_typ.h:79:16: note: forward declaration of ‘BIO {aka struct bio_st}’
 typedef struct bio_st BIO;
                ^~~~~~
../../ptclib/pssl.cxx:1221:51: error: invalid use of incomplete type ‘BIO {aka struct bio_st}’
 #define PSSLCHANNEL(bio)      ((PSSLChannel *)(bio->ptr))
 
../../ptclib/pssl.cxx: At global scope:
../../ptclib/pssl.cxx:855:13: warning: ‘void LockingCallback(int, int, const char*, int)’ defined but not used  -Wunused-function]
 static void LockingCallback(int mode, int n, const char * /*file*/, int /*line*/)
             ^~~~~~~~~~~~~~~
../../../make/common.mak:327: ошибка выполнения рецепта для цели «/home/alex/openmcu-ru/libs/ptlib/lib/obj_linux_x86_64_r/pssl.o»
make[3]: *** [/home/alex/openmcu-ru/libs/ptlib/lib/obj_linux_x86_64_r/pssl.o] Ошибка 1
make[3]: выход из каталога «/home/alex/openmcu-ru/libs/ptlib/src/ptlib/unix»
Makefile:239: ошибка выполнения рецепта для цели «opt»
make[2]: *** [opt] Ошибка 2
make[2]: выход из каталога «/home/alex/openmcu-ru/libs/ptlib»
/home/alex/openmcu-ru/libs/ptlib/make/common.mak:549: ошибка выполнения рецепта для цели «optshared»
make[1]: *** [optshared] Ошибка 2
make[1]: выход из каталога «/home/alex/openmcu-ru/libs/ptlib»
Makefile:764: ошибка выполнения рецепта для цели «all»
make: *** [all] Ошибка 2
root@mcu:/home/alex/openmcu-ru#


talentvictor

  • Новичок
  • *
  • Сообщений: 1
  • Карма: 0
Re: Установка на debian 8 jessie (сборка, git)
« Ответ #4 : 25 Января 2018, 11:34:12 »
На 9 версии не компилится изза openssl 1.1
============== OpenMCU-ru Build Configuration =================
                         OS Type  :  linux-gnu
                    Machine Type  :  x86_64
          Installing into prefix  :  /opt
          Installing directory    :  /opt/openmcu-ru

                       Subtitles  :  enabled
JPEG Frame Encoder (for browser)  :  disabled
      Use libyuv to resize video  :  enabled
        External Audio Resampler  :  enabled - ffmpeg

                VP8 Video Plugin  :  enabled
              H.264 Video Plugin  :  enabled
       H.263/H.263P Video Plugin  :  enabled
              H.261 Video Plugin  :  enabled
              MPEG4 Video Plugin  :  enabled
               OPUS Audio Plugin  :  enabled
               SILK Audio Plugin  :  enabled
              G.722 Audio Plugin  :  enabled
            G.722.1 Audio Plugin  :  enabled
            G.722.2 Audio Plugin  :  enabled
              SPEEX Audio Plugin  :  enabled
            G.723.1 Audio Plugin  :  enabled
               iLBC Audio Plugin  :  enabled
              G.726 Audio Plugin  :  enabled
              G.729 Audio Plugin  :  enabled

 If all settings are OK, type make and make install
========================================================

# make
(make      -C /home/alex/openmcu-ru/libs/ptlib) || exit $?
make[1]: вход в каталог «/home/alex/openmcu-ru/libs/ptlib»
make P_SHAREDLIB=1 opt
make[2]: вход в каталог «/home/alex/openmcu-ru/libs/ptlib»
set -e; if test -e src/ptlib/unix ; then make -C src/ptlib/unix opt; fi;
make[3]: вход в каталог «/home/alex/openmcu-ru/libs/ptlib/src/ptlib/unix»
[CC] /home/alex/openmcu-ru/libs/ptlib/lib/obj_linux_x86_64_r/pssl.o
In file included from /home/alex/openmcu-ru/libs/ptlib/include/ptlib.h:250:0,
                 from ../../ptclib/pssl.cxx:220:
/home/alex/openmcu-ru/libs/ptlib/include/ptlib/psharedptr.h:70:21: warning: ‘template<class> class std::auto_pt ’ is deprecated [-Wdeprecated-declarations]
     PSharedPtr(std::auto_ptr<element_type> & v)
                     ^~~~~~~~
In file included from /usr/include/c++/6/bits/locale_conv.h:41:0,
                 from /usr/include/c++/6/locale:43,
                 from /usr/include/c++/6/iomanip:43,
                 from /home/alex/openmcu-ru/libs/ptlib/include/ptlib/object.h:493,
                 from /home/alex/openmcu-ru/libs/ptlib/include/ptlib/contain.h:257,
                 from /home/alex/openmcu-ru/libs/ptlib/include/ptlib.h:161,
                 from ../../ptclib/pssl.cxx:220:
/usr/include/c++/6/bits/unique_ptr.h:49:28: note: declared here
   template<typename> class auto_ptr;
                            ^~~~~~~~
../../ptclib/pssl.cxx:268:55: error: ‘BIO_s_file_internal’ was not declared in this scope
     PSSL_BIO(BIO_METHOD *method = BIO_s_file_internal())
                                                       ^
In file included from /usr/include/openssl/x509.h:23:0,
                 from /usr/include/openssl/ssl.h:50,
                 from ../../ptclib/pssl.cxx:231:
../../ptclib/pssl.cxx: In member function ‘BOOL PSSLPrivateKey::Create(unsigned int, void (*)(int, int, void*), void*)’:
../../ptclib/pssl.cxx:391:32: warning: ‘RSA* RSA_generate_key(int, long unsigned int, void (*)(int, int, void*), void*)’ is deprecated [-Wdeprecated-declarations]
   if (EVP_PKEY_assign_RSA(key, RSA_generate_key(modulus, 0x10001, callback, cb_arg)))
                                ^
In file included from /usr/include/openssl/rsa.h:13:0,
                 from /usr/include/openssl/x509.h:31,
                 from /usr/include/openssl/ssl.h:50,
                 from ../../ptclib/pssl.cxx:231:
/usr/include/openssl/rsa.h:193:1: note: declared here
 DEPRECATEDIN_0_9_8(RSA *RSA_generate_key(int bits, unsigned long e, void
 ^
In file included from /usr/include/openssl/x509.h:23:0,
                 from /usr/include/openssl/ssl.h:50,
                 from ../../ptclib/pssl.cxx:231:
../../ptclib/pssl.cxx:391:83: warning: ‘RSA* RSA_generate_key(int, long unsigned int, void (*)(int, int, void*), void*)’ is deprecated [-Wdeprecated-declarations]
   if (EVP_PKEY_assign_RSA(key, RSA_generate_key(modulus, 0x10001, callback, cb_arg)))
                                                                                   ^
In file included from /usr/include/openssl/rsa.h:13:0,
                 from /usr/include/openssl/x509.h:31,
                 from /usr/include/openssl/ssl.h:50,
                 from ../../ptclib/pssl.cxx:231:
/usr/include/openssl/rsa.h:193:1: note: declared here
 DEPRECATEDIN_0_9_8(RSA *RSA_generate_key(int bits, unsigned long e, void
 ^
../../ptclib/pssl.cxx: In member function ‘BOOL PSSLPrivateKey::Load(const PFilePath&, PSSLFileTypes)’:
../../ptclib/pssl.cxx:426:12: error: call to ‘PSSL_BIO::PSSL_BIO(BIO_METHOD*)’ uses the default argument for parameter 1, which is not yet defined
   PSSL_BIO in;
            ^~
../../ptclib/pssl.cxx: In member function ‘BOOL PSSLPrivateKey::Save(const PFilePath&, BOOL, PSSLFileTypes)’:
../../ptclib/pssl.cxx:465:12: error: call to ‘PSSL_BIO::PSSL_BIO(BIO_METHOD*)’ uses the default argument for parameter 1, which is not yet defined
   PSSL_BIO out;
            ^~~
../../ptclib/pssl.cxx: In member function ‘BOOL PSSLCertificate::Load(const PFilePath&, PSSLFileTypes)’:
../../ptclib/pssl.cxx:672:12: error: call to ‘PSSL_BIO::PSSL_BIO(BIO_METHOD*)’ uses the default argument for parameter 1, which is not yet defined
   PSSL_BIO in;
            ^~
../../ptclib/pssl.cxx: In member function ‘BOOL PSSLCertificate::Save(const PFilePath&, BOOL, PSSLFileTypes)’:
../../ptclib/pssl.cxx:711:12: error: call to ‘PSSL_BIO::PSSL_BIO(BIO_METHOD*)’ uses the default argument for parameter 1, which is not yet defined
   PSSL_BIO out;
            ^~~
../../ptclib/pssl.cxx: In constructor ‘PSSLDiffieHellman::PSSLDiffieHellman(const BYTE*, PINDEX, const BYTE*, PINDEX)’:
../../ptclib/pssl.cxx:766:5: error: invalid use of incomplete type ‘struct dh_st’
   dh->p = BN_bin2bn(pData, pSize, NULL);
     ^~
In file included from ../../ptclib/pssl.cxx:222:0:
/home/alex/openmcu-ru/libs/ptlib/include/ptclib/pssl.h:103:8: note: forward declaration of ‘struct dh_st’
 struct dh_st;
        ^~~~~
../../ptclib/pssl.cxx:767:5: error: invalid use of incomplete type ‘struct dh_st’
   dh->g = BN_bin2bn(gData, gSize, NULL);
     ^~
In file included from ../../ptclib/pssl.cxx:222:0:
/home/alex/openmcu-ru/libs/ptlib/include/ptclib/pssl.h:103:8: note: forward declaration of ‘struct dh_st’
 struct dh_st;
        ^~~~~
../../ptclib/pssl.cxx:768:9: error: invalid use of incomplete type ‘struct dh_st’
   if (dh->p != NULL && dh->g != NULL)
         ^~
In file included from ../../ptclib/pssl.cxx:222:0:
/home/alex/openmcu-ru/libs/ptlib/include/ptclib/pssl.h:103:8: note: forward declaration of ‘struct dh_st’
 struct dh_st;
        ^~~~~
../../ptclib/pssl.cxx:768:26: error: invalid use of incomplete type ‘struct dh_st’
   if (dh->p != NULL && dh->g != NULL)
                          ^~
In file included from ../../ptclib/pssl.cxx:222:0:
/home/alex/openmcu-ru/libs/ptlib/include/ptclib/pssl.h:103:8: note: forward declaration of ‘struct dh_st’
 struct dh_st;
        ^~~~~
../../ptclib/pssl.cxx: In member function ‘BOOL PSSLDiffieHellman::Load(const PFilePath&, PSSLFileTypes)’:
../../ptclib/pssl.cxx:819:12: error: call to ‘PSSL_BIO::PSSL_BIO(BIO_METHOD*)’ uses the default argument for parameter 1, which is not yet defined
   PSSL_BIO in;
            ^~
../../ptclib/pssl.cxx: In function ‘int Psock_new(BIO*)’:
../../ptclib/pssl.cxx:1234:6: error: invalid use of incomplete type ‘BIO {aka struct bio_st}’
   bio->init     = 0;
      ^~
In file included from /usr/include/openssl/crypto.h:31:0,
                 from /usr/include/openssl/comp.h:16,
                 from /usr/include/openssl/ssl.h:47,
                 from ../../ptclib/pssl.cxx:231:
/usr/include/openssl/ossl_typ.h:79:16: note: forward declaration of ‘BIO {aka struct bio_st}’
 typedef struct bio_st BIO;
                ^~~~~~
../../ptclib/pssl.cxx:1235:6: error: invalid use of incomplete type ‘BIO {aka struct bio_st}’
   bio->num      = 0;
      ^~
In file included from /usr/include/openssl/crypto.h:31:0,
                 from /usr/include/openssl/comp.h:16,
                 from /usr/include/openssl/ssl.h:47,
                 from ../../ptclib/pssl.cxx:231:
/usr/include/openssl/ossl_typ.h:79:16: note: forward declaration of ‘BIO {aka struct bio_st}’
 typedef struct bio_st BIO;
                ^~~~~~
../../ptclib/pssl.cxx:1236:6: error: invalid use of incomplete type ‘BIO {aka struct bio_st}’
   bio->ptr      = NULL;    // this is really (PSSLChannel *)
      ^~
In file included from /usr/include/openssl/crypto.h:31:0,
                 from /usr/include/openssl/comp.h:16,
                 from /usr/include/openssl/ssl.h:47,
                 from ../../ptclib/pssl.cxx:231:
/usr/include/openssl/ossl_typ.h:79:16: note: forward declaration of ‘BIO {aka struct bio_st}’
 typedef struct bio_st BIO;
                ^~~~~~
../../ptclib/pssl.cxx:1237:6: error: invalid use of incomplete type ‘BIO {aka struct bio_st}’
   bio->flags    = 0;
      ^~
In file included from /usr/include/openssl/crypto.h:31:0,
                 from /usr/include/openssl/comp.h:16,
                 from /usr/include/openssl/ssl.h:47,
                 from ../../ptclib/pssl.cxx:231:
/usr/include/openssl/ossl_typ.h:79:16: note: forward declaration of ‘BIO {aka struct bio_st}’
 typedef struct bio_st BIO;
                ^~~~~~
../../ptclib/pssl.cxx: In function ‘int Psock_free(BIO*)’:
../../ptclib/pssl.cxx:1248:10: error: invalid use of incomplete type ‘BIO {aka struct bio_st}’
   if (bio->shutdown) {
          ^~
In file included from /usr/include/openssl/crypto.h:31:0,
                 from /usr/include/openssl/comp.h:16,
                 from /usr/include/openssl/ssl.h:47,
                 from ../../ptclib/pssl.cxx:231:
/usr/include/openssl/ossl_typ.h:79:16: note: forward declaration of ‘BIO {aka struct bio_st}’
 typedef struct bio_st BIO;
                ^~~~~~
../../ptclib/pssl.cxx:1249:12: error: invalid use of incomplete type ‘BIO {aka struct bio_st}’
     if (bio->init) {
            ^~
In file included from /usr/include/openssl/crypto.h:31:0,
                 from /usr/include/openssl/comp.h:16,
                 from /usr/include/openssl/ssl.h:47,
                 from ../../ptclib/pssl.cxx:231:
/usr/include/openssl/ossl_typ.h:79:16: note: forward declaration of ‘BIO {aka struct bio_st}’
 typedef struct bio_st BIO;
                ^~~~~~
../../ptclib/pssl.cxx:1221:51: error: invalid use of incomplete type ‘BIO {aka struct bio_st}’
 #define PSSLCHANNEL(bio)      ((PSSLChannel *)(bio->ptr))
                                                   ^
../../ptclib/pssl.cxx:1250:7: note: in expansion of macro ‘PSSLCHANNEL’
       PSSLCHANNEL(bio)->Shutdown(PSocket::ShutdownReadAndWrite);
       ^~~~~~~~~~~
In file included from /usr/include/openssl/crypto.h:31:0,
                 from /usr/include/openssl/comp.h:16,
                 from /usr/include/openssl/ssl.h:47,
                 from ../../ptclib/pssl.cxx:231:
/usr/include/openssl/ossl_typ.h:79:16: note: forward declaration of ‘BIO {aka struct bio_st}’
 typedef struct bio_st BIO;
                ^~~~~~
../../ptclib/pssl.cxx:1221:51: error: invalid use of incomplete type ‘BIO {aka struct bio_st}’
 #define PSSLCHANNEL(bio)      ((PSSLChannel *)(bio->ptr))
 
../../ptclib/pssl.cxx: At global scope:
../../ptclib/pssl.cxx:855:13: warning: ‘void LockingCallback(int, int, const char*, int)’ defined but not used  -Wunused-function]
 static void LockingCallback(int mode, int n, const char * /*file*/, int /*line*/)
             ^~~~~~~~~~~~~~~
../../../make/common.mak:327: ошибка выполнения рецепта для цели «/home/alex/openmcu-ru/libs/ptlib/lib/obj_linux_x86_64_r/pssl.o»
make[3]: *** [/home/alex/openmcu-ru/libs/ptlib/lib/obj_linux_x86_64_r/pssl.o] Ошибка 1
make[3]: выход из каталога «/home/alex/openmcu-ru/libs/ptlib/src/ptlib/unix»
Makefile:239: ошибка выполнения рецепта для цели «opt»
make[2]: *** [opt] Ошибка 2
make[2]: выход из каталога «/home/alex/openmcu-ru/libs/ptlib»
/home/alex/openmcu-ru/libs/ptlib/make/common.mak:549: ошибка выполнения рецепта для цели «optshared»
make[1]: *** [optshared] Ошибка 2
make[1]: выход из каталога «/home/alex/openmcu-ru/libs/ptlib»
Makefile:764: ошибка выполнения рецепта для цели «all»
make: *** [all] Ошибка 2
root@mcu:/home/alex/openmcu-ru#
How did you finally solve this problem?

ink

  • Новичок
  • *
  • Сообщений: 1
  • Карма: 0
Re: Установка на debian 8 jessie (сборка, git)
« Ответ #5 : 20 Апреля 2018, 14:06:17 »
Удалось ли кому-нибудь собрать под Debian 9?

belko

  • Новичок
  • *
  • Сообщений: 21
  • Карма: 0
Удалось ли кому-нибудь собрать под Debian 9?
Сильно не ковырял, я не программист. Если отключить поддержку опенссл, то сборка спотыкается на PTLIB который в комплекте(много несоответствий типов итд). Нужно как я понял на с++ 11 версии переписывать или ptlib другой брать.

schmel

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 574
  • Карма: 30
Re: Установка на debian 8 jessie (сборка, git)
« Ответ #7 : 08 Января 2020, 01:04:46 »
Предварительно удалось собрать под debian 10. Но есть нюансы.
Патчи под gcc 7+ в ветке 4.1, как только протестирую, сделаю pull реквест.
Нужный человек не в том месте может перевернуть мир (Gman, Half-Life2)

kay27

  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3068
  • Карма: 58
Re: Установка на debian 8 jessie (сборка, git)
« Ответ #8 : 09 Февраля 2020, 06:19:03 »
Нужное дело. Сейчас очень не хватает какой-то готовой экосистемы. Слакварь устарел, 15-й версии всё нет, на работе как раз начинаем мигрировать на дебиан, за неимением, как говорится... но пока подготовишь среду для сборки со всеми зависимостями, времени на эксперименты не остаётся.

Сорри за mpi.cxx, там была давняя ошибка с этим abs(), её все проглядели, внутри abs() беззнаковое вычитается из беззнакового. Компиляторы поумнели с тех пор. Преобразовывать в long хорошо, конечно, но не знаю, для всех ли платформ это будет работать правильно, первый вариант с int был универсальнее, но могу предложить ещё такой вариант в два действия с проверкой, чтобы не вычитать из меньшего большее, этот уж совсем параноидальный, наверное, кому-то покажется смешным, но согласование происходит не так часто, чтобы из-за громоздкости сильно переживать:

  for (i=0; i < MPIs.size(); i++) {
    // we square the value in order to get absolute distances
//    distance = ( abs(MPIs[i].width  - desiredWidth ) * // ERROR: POSSIBILITY OF INTEGER OVERFLOW!
//                 abs(MPIs[i].height - desiredHeight) );
// TEMPORARY FIX:
    if(MPIs[i].width>desiredWidth) distance=MPIs[i].width-desiredWidth; else distance=desiredWidth-MPIs[i].width;
    if(MPIs[i].height>desiredHeight) distance*=(MPIs[i].height-desiredHeight); else distance*=(desiredHeight-MPIs[i].height);

belko

  • Новичок
  • *
  • Сообщений: 21
  • Карма: 0
Предварительно удалось собрать под debian 10. Но есть нюансы.
Патчи под gcc 7+ в ветке 4.1, как только протестирую, сделаю pull реквест.
Есть новости?

pavel2084

  • Новичок
  • *
  • Сообщений: 3
  • Карма: 0
Re: Установка на debian 8 jessie (сборка, git)
« Ответ #10 : 30 Апреля 2020, 18:20:07 »
Предварительно удалось собрать под debian 10. Но есть нюансы.
Патчи под gcc 7+ в ветке 4.1, как только протестирую, сделаю pull реквест.
Вот тоже интересно, есть ли новости? А то проект годный, ничего подобного, работающего, в open source среде просто нет.