Jak można zainstalować aktualną wersję Linphone?

9

Chcę zainstalować aktualną wersję Linphone. Próbowałem zainstalować przy użyciu następującej procedury w systemie Ubuntu 16.04:

sudo add-apt-repository ppa:linphone/release
sudo apt-get update
sudo apt-get install linphone

Instaluje tylko wersję 3.6.1 (obecna wersja to 3.9.1). Próbowałem zainstalować bardziej aktualną wersję, stosując następującą procedurę:

sudo add-apt-repository ppa:rayanayar/linphone
sudo apt-get update
sudo apt-get install linphone

Jednak po uruchomieniu tej instalacji Linphone napotyka następujący błąd:

linphone: symbol lookup error: /usr/lib/x86_64-linux-gnu/liblinphone.so.8: undefined symbol: belle_sip_stack_set_http_proxy_host

Jak więc zainstalować aktualną wersję Linphone?

d3pd
źródło
3
Co powiesz na kompilację ze źródła? Możesz podać mi źródło, a ja piszę odpowiedź na ten temat.
Videonauth,
@Videonauth Hej tam! Byłbym bardzo wdzięczny, gdybyś mógł rzucić okiem. Źródło jest dostępne tutaj: linphone.org/downloads-for-desktop.html Sam próbowałem, ale napotkałem trudności z zapewnieniem zależności.
d3pd
Dobra kompilacja, sprawdź moją odpowiedź poniżej.
Videonauth,
@ d3pd Chcę zainstalować Flexisip na Ubuntu 18 i zbudować aplikacje na telefony Android i iOS. Dużo szukałem, ale nie znalazłem żadnego kompletnego i łatwego do rozwiązania rozwiązania. Potem znalazłem ten ficus.myvnc.com/en/blog/... To używa dokera . Chciałem zapytać, czy jest dostępny inny przewodnik. Nie jestem technikiem, ale mogę podążać za przewodnikami.
Umair,

Odpowiedzi:

10

Aby skompilować ze źródła, musisz najpierw zainstalować następujące pakiety jako zależności (uważaj, aby zaznaczyć całe pole i wkleić je do terminala):

sudo apt-get install git build-essential automake autoconf libtool   \
intltool libgtk2.0-dev libspeexdsp-dev libavcodec-dev libswscale-dev \
libx11-dev libxv-dev libgl1-mesa-dev libreadline-dev libgsm1-dev     \
libtheora-dev libsqlite3-dev libupnp-dev libsrtp-dev open-vm-tools   \
open-vm-tools-dev cmak* libmbedtls-dev libmbedtls-doc libmbedtls10   \
libcunit1 libcunit1-dev libantlr3c-dev libantlr3-runtime-java antlr3 \
libortp-dev libortp9 libmediastreamer-base3 libmediastreamer-dev     \
extra-cmake-modules yasm

W przypadku Ubuntu 18.04 potrzebne są również następujące pakiety:

python-pystache libv4l-dev libpulse-dev libglew-dev doxygen libbsd-dev \
qt5-default qttools5-dev qttools5-dev-tools libqt5svg5-dev \
libqt5texttospeech5-dev qtdeclarative5-dev qtdeclarative5-dev-tools \
qtquickcontrols2-5-dev qml-module-qtquick-controls qml-module-qtquick-controls2 \
qml-module-qtquick-dialogs  qml-module-qtqml-models2 qml-module-qtquick-templates2 \
qml-module-qt-labs-folderlistmodel qml-module-qt-labs-settings \ 
qml-module-qt-labs-platform

Teraz możesz skompilować i zainstalować, wykonując następujące czynności:

git clone https://gitlab.linphone.org/BC/public/linphone-desktop.git
cd linphone-desktop
git submodule sync && git submodule update --init --recursive
./prepare.py
make
sudo make install

Szczęśliwy budynek Daj mi znać, jeśli to zadziałało w moim systemie, który buduje, ale nie chcę go instalować.

Videonauth
źródło
Wow, dziękuję bardzo za poświęcenie czasu na uruchomienie tej kompilacji. To działa również dla mnie 16.04. To git submodulepolecenie jest świetne. Dzięki!
d3pd
1
Musiałem również zainstalować Pythona w wersji pystache, a także apt binaria dla Doksygen i Graphviz.
Alex Combas
@videonauth Chcę zainstalować Flexisip na Ubuntu 18 i zbudować aplikacje na telefony Android i iOS. Dużo szukałem, ale nie znalazłem żadnego kompletnego i łatwego do rozwiązania rozwiązania. Potem znalazłem ten ficus.myvnc.com/en/blog/... To używa dokera . Chciałem zapytać, czy jest dostępny inny przewodnik. Nie jestem technikiem, ale mogę podążać za przewodnikami.
Umair
5

Ponieważ nie mogę komentować, dodam to jako kolejną odpowiedź:

Próbowałem dzisiaj zaakceptować odpowiedź (na Xubuntu 16.04) i otrzymałem wiadomość

Could not find a support sound driver API 

Naprawiłem to, instalując libasound2-dev:

sudo apt-get install libasound2-dev

Aby pozbyć się innych ostrzeżeń, zainstalowałem jeszcze kilka pakietów:

sudo apt-get install libv4l-dev libvpx-dev libgl1-mesa-dev

Wydaje się, że instalacja make target już nie istnieje.

Ale telefon można uruchomić bezpośrednio z katalogu wyjściowego

WYJŚCIE / desktop / bin / linphone

Mam nadzieję że to pomoże!

użytkownik3417737
źródło
5

Pracował 16.04

Musi być rootem

sudo su

Zainstaluj flatpak (skompiluje wszystko za Ciebie)

sudo apt install flatpak

Zainstaluj Linphone za pomocą flatpak

flatpak --user install --from https://linphone.org/flatpak/linphone.flatpakref
Kareem
źródło
1
Próbowałem tej metody, ale otrzymuję: Aplikacja com.belledonnecommunications.linphone / x86_64 / 4.1.1 wymaga środowiska wykonawczego org.freedesktop.Platform / x86_64 / 1.6, którego nie znaleziono. Jak zainstalować program Freedesktop?
Old Geezer
Mogłem sprawdzić, czy to działa z Ubuntu 18.04, chociaż nie dostałem żadnego wpisu w menu Start, musiałem użyć flatpak listi flatpak runuruchomić aplikację oraz dodać pozycję menu.
Trendfischer
4

W czerwcu 2017 r. Wydano Linphone Desktop 4. Dzięki temu jego autorzy Belledonne Communications zmienili z GTK + 2 na Qt 5.9 LTS (a ściślej: zmienili na QML z Qt Quick Controls 2). Ponadto dodali możliwość pobrania gotowego pliku binarnego za pośrednictwem Flatpak . Dlatego chociaż poprzednie odpowiedzi były prawidłowe w tamtym czasie, zmieniły się:

a) Pobierz z Flatpak

sudo add-apt-repository ppa:alexlarsson/flatpak
sudo apt update
sudo apt install flatpak
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak --user install --from https://linphone.org/flatpak/linphone.flatpakref
flatpak run com.belledonnecommunications.linphone --verbose

b) Kompilacja ze źródła

  • przejść na Ubuntu 14.04 LTS i / lub
  • debugować / współtworzyć Linphone, ponieważ jesteś programistą i / lub
  • aby korzystać z najnowszych funkcji i poprawek błędów i / lub
  • aby uzyskać więcej kodeków audio i wideo.

Wariant przez Flatpak daje jako kodek wideo tylko VP8. Jeśli zbudujesz siebie, MP4V-ES, H.263 i H.264 zostaną dodane. Wraz z dodawaniem kodeków audio, AMR, AMR-WB, iLBC, iSAC i SiLK. Ponadto opcjonalnie możesz dodać nawet G.726 i kodek 2. Jednak na dzień dzisiejszy te dwa moduły muszą zostać załatane, aby współpracowały z innymi implementacjami VoIP / SIP (zła endianność i zła przepływność).

Aby się skompilować, potrzebujesz Qt Framework. Dlatego
a) wybierasz Instalatora Qt lub
b) wybieracie Ubuntu 18.04 LTS i jego istniejące pakiety Qt 5.9.

Krok 1a: Instalator Qt

wget download.qt.io/official_releases/online_installers/qt-unified-linux-x64-online.run
chmod u+x ./qt-unified-linux-*.run
./qt-unified-linux-*.run

W Instalatorze wybierasz opcje Qt → Qt 5.9.x → Pulpit. Po ustawieniu PATHi Qt5_DIRupewnij się, że odpowiada wersji, którą pobrałeś:

Qt5_DIR="~/Qt/5.9.9/gcc_64/lib/cmake"
PATH="~/Qt/5.9.9/gcc_64/bin/:$PATH"

Krok 1b: Pakiety Qt

sudo apt install qt5-default qttools5-dev qttools5-dev-tools libqt5svg5-dev libqt5texttospeech5-dev qtdeclarative5-dev qtdeclarative5-dev-tools qtquickcontrols2-5-dev qml-module-qtquick-controls qml-module-qtquick-controls2 qml-module-qtquick-dialogs qml-module-qtqml-models2 qml-module-qtquick-templates2 qml-module-qt-labs-folderlistmodel qml-module-qt-labs-settings qml-module-qt-labs-platform

Jak wspomniano powyżej, działa to tylko z najnowszym Ubuntu. W przypadku starszych wersji Ubuntu wybrałbym instalator Qt, jak opisano w alternatywie A. Ponadto komentarze w kodzie źródłowym wskazują , że Belledonne Communications nie trzyma się wersji długoterminowych (LTS), ale będzie wymagać następnej stabilnej release, kiedy jedna po następnej stabilnej gałęzi została wydana (na przykład, kiedy Qt 5.11 jest wydany, Linphone może już wymagać Qt 5.10). Dlatego po przeczytaniu tej odpowiedzi ta alternatywa B może już nie być opcją.

Krok 2 dla Ubuntu 14.04 LTS

sudo apt install autoconf libasound2-dev build-essential libbsd-dev cmake3 curl doxygen git libglew-dev graphviz libtool default-jre-headless nasm libpcap-dev pkg-config python-pystache python-six libudev-dev libwww-perl libxv-dev yasm libpolarssl-dev libsqlite3-dev libxml2-dev libsrtp0-dev libgsm1-dev libopus-dev libspeexdsp-dev libavcodec-extra libavcodec-dev libswscale-dev libv4l-dev libvpx-dev libantlr3c-dev antlr3 xsdcxx libxerces-c-dev libspandsp-dev libopencore-amrnb-dev libopencore-amrwb-dev libvo-amrwbenc-dev

Krok 2 dla Ubuntu 16.04 LTS

sudo apt install autoconf libasound2-dev build-essential libbsd-dev cmake curl doxygen git libglew-dev graphviz libtool default-jre-headless nasm libpcap-dev pkg-config python3-distutils python3-pystache python3-six libudev-dev libwww-perl libxv-dev yasm libmbedtls-dev libsqlite3-dev libxml2-dev libsrtp0-dev libgsm1-dev libopus-dev libspeexdsp-dev libavcodec-extra libavcodec-dev libswscale-dev libv4l-dev libvpx-dev libantlr3c-dev antlr3 xsdcxx libxerces-c-dev libspandsp-dev libopencore-amrnb-dev libopencore-amrwb-dev libvo-amrwbenc-dev libcodec2-dev

Krok 2 dla Ubuntu 18.04 LTS

sudo apt install autoconf libasound2-dev build-essential libbsd-dev cmake curl doxygen git libglew-dev graphviz libtool default-jre-headless nasm libpcap-dev pkg-config python3-distutils python3-pystache python3-six libturbojpeg0-dev libudev-dev libwww-perl libxv-dev yasm libmbedtls-dev libsqlite3-dev libxml2-dev libsrtp2-dev libgsm1-dev libopus-dev libspeexdsp-dev libavcodec-extra libavcodec-dev libswscale-dev libv4l-dev libvpx-dev libantlr3c-dev antlr3 xsdcxx libxerces-c-dev libspandsp-dev libopencore-amrnb-dev libopencore-amrwb-dev libvo-amrwbenc-dev libcodec2-dev

Krok 3

git clone git://git.linphone.org/linphone-desktop --recursive
cd ./linphone-desktop
python3 prepare.py --use-system-dependencies --all-codecs --debug --list-cmake-variables -DENABLE_AMRWB=OFF -DENABLE_AMR=OFF -DENABLE_UNMAINTAINED=ON -DENABLE_JPEG=OFF
make
gdb ./OUTPUT/desktop/bin/linphone -ex 'run --verbose'

W Ubuntu 14.04 LTS wybierasz python2. W Ubuntu 18.04 LTS możesz usunąć -DENABLE_JPEG=OFF. W Ubuntu 19.10 musisz łatać plik nagłówka . Na dzień dzisiejszy kilka błędów dotyczy implementacji AMR (-WB); dlatego tutaj jest wyłączone.


Uwaga dodatkowa: Proszę dokładnie sprawdzić wartość quality_reporting_enabledw pliku, ~/.config/linphone/linphonercczy odzwierciedla on Twoje dane dotyczące gromadzenia danych i interesy prywatności. Dla mnie 0wyłączone dane telemetryczne, które były wysyłane do Belledonne Communications po każdym połączeniu. Nie znalazłem jednak sposobu na zmianę tej wartości za pomocą graficznego interfejsu użytkownika.

Alexander Traud
źródło
Brzmi dobrze. Niestety, nie działało to dla mnie 18.04: Zwykły „przepis na cel” wszystko „zawiódł” jak zawsze w Linphone Desktop. / cmake „Makefile: 83: przepis na cel„ wszystko ”nie powiodło się make [1]: *** [all] Error 2 make [1]: Leaving directory '/ usr / local / src / linphone-desktop / WORK / desktop / cmake 'Makefile: 14: przepis na docelową kompilację pulpitu nie powiodło się make: *** [kompilacja pulpitu] Błąd 2
opinia_no9
@ opinia_no9 masz szczęście: Wczoraj musiałem przebudować najnowszy Linphone na waniliowej instalacji Ubuntu 18.04 LTS. Zostało jednak wykonane bez żadnego problemu. (1) Który program budujący cmake zawiódł dokładnie - główny? (2) Czy cmake stworzył plik o nazwie CMakeOutput.logdla tego nieudanego konstruktora? Widzę, że próbujesz się skompilować /usr/local/src. Jeszcze tego nie próbowałem, ale zrobiłem wszystko w folderze domowym zwykłego użytkownika. (3) Czy próbowałeś już wbudować swój normalny Documentsfolder?
Alexander Traud
@AlexanderTraud Próbowałem metody flatpack, ale otrzymuję „Aplikacja com.belledonnecommunications.linphone / x86_64 / 4.1.1 wymaga środowiska wykonawczego org.freedesktop.Platform / x86_64 / 1.6, którego nie znaleziono” Co to za freedesktop?
Old Geezer
@OldGeezer, której wersji Ubuntu używasz? Zwykle środowisko uruchomieniowe Freedesktop jest instalowane / dostępne przez Flathub. Wcześniej Flathub był dodawany automatycznie. Jednak Flatpak zmienił instrukcje (które zaktualizowałem / dodałem powyżej). Dlatego: Czy możesz dodać Flathub? Czy Freedesktop został teraz znaleziony? Jeśli nie, jakiej wersji Ubuntu używasz?
Alexander Traud
Mam 18.04. W końcu udało mi się zainstalować, śledząc ten film youtube.com/watch?time_continue=51&v=2FM-wq6gPpA , który wykonuje dodatkowy krok przed użyciem apt-get install linphone. Jestem zdezorientowany, dlaczego istnieje tak wiele różnych metod.
Old Geezer
1

Ogromne podziękowania dla Alexandra TRAUDA za jego howTo, bez którego nawet bym nie próbował.

Nadal muszę dodać XercesCbibliotekę i wszystko skompilowało się na Linux Mint 19 (Ubuntu 18.04):

apt install libxerces-c-dev
./prepare.py -c
./prepare.py --use-system-dependencies --all -codes --debug --list-cmake-variables -DENABLE_JPEG = OFF -DENABLE_DOC = OFF
make

To powinno wystarczyć.

chgchg
źródło