Bug 318825 - build failed against ortp-0.21.1
Summary: build failed against ortp-0.21.1
Alias: None
Product: kopete
Classification: Applications
Component: Jabber Plugin (show other bugs)
Version: 1.4.2
Platform: Other Linux
: NOR normal
Target Milestone: ---
Assignee: Kopete Developers
Depends on:
Reported: 2013-04-24 22:17 UTC by nucleo
Modified: 2013-11-01 21:00 UTC (History)
6 users (show)

See Also:
Latest Commit:
Version Fixed In: 4.12

Fix build with mediastreamer 2.9.x (1.38 KB, patch)
2013-06-15 15:58 UTC, Andrea Scarpino

Note You need to log in before you can comment on or make changes to this bug.
Description nucleo 2013-04-24 22:17:16 UTC
I tried to build kopete against ortp-0.21.1 and mediastreamer-2.9.0 which are part of linphone 3.6 beta1.

Reproducible: Always

Steps to Reproduce:
Build linphone from sources http://download-mirror.savannah.gnu.org/releases/linphone/unstable/source/linphone-3.6-beta-1.tar.gz
Actual Results:  
/builddir/build/BUILD/kdenetwork-4.10.2/kopete/protocols/jabber/googletalk/libjingle/talk/session/phone/linphonemediaengine.cc:146:57: error: 'AudioStream' has no member named 'session'
/builddir/build/BUILD/kdenetwork-4.10.2/kopete/protocols/jabber/googletalk/libjingle/talk/session/phone/linphonemediaengine.cc:157:55: error: 'AudioStream' has no member named 'session'
Comment 1 nucleo 2013-04-26 15:26:30 UTC
There was some API changes in the mediastreamer2 library.
"audio_stream_->session" needs to be replaced by "

Comment 2 Pali Rohár 2013-05-19 10:32:14 UTC
I updated libjingle library in kopete svn tree. Please test if compiling from svn working or not.
Comment 3 Andrea Scarpino 2013-06-15 09:31:00 UTC
Still doesn't build, but I got a different error:

/tmp/kopete/protocols/jabber/googletalk/libjingle/talk/session/phone/srtpfilter.cc: In member function ‘bool cricket::SrtpSession::SetKey(int, const string&, const uint8*, int)’:
/tmp/kopete/protocols/jabber/googletalk/libjingle/talk/session/phone/srtpfilter.cc:527:10: error: ‘srtp_policy_t’ has no member named ‘window_size’
   policy.window_size = 1024;
/tmp/kopete/protocols/jabber/googletalk/libjingle/talk/session/phone/srtpfilter.cc:528:10: error: ‘srtp_policy_t’ has no member named ‘allow_repeat_tx’
   policy.allow_repeat_tx = 1;
make[2]: *** [protocols/jabber/googletalk/libjingle/CMakeFiles/call.dir/talk/session/phone/srtpfilter.o] Error 1
make[1]: *** [protocols/jabber/googletalk/libjingle/CMakeFiles/call.dir/all] Error 2
Comment 4 Pali Rohár 2013-06-15 09:40:15 UTC
Ok, do you know last version of ortp which working? At least I can update cmake file to not use too new version.
Comment 5 Andrea Scarpino 2013-06-15 15:58:56 UTC
Created attachment 80534 [details]
Fix build with mediastreamer 2.9.x

This fixed build with mediastreamer 2.9.0 (and then ortp 0.22.0) in master.
Comment 6 Andrea Scarpino 2013-06-15 16:02:06 UTC
To summarize:
* Building master with ortp 0.20 you get the error in comment#3
* Building master with mediastreamer 2.9 (and then ortp 0.22) you get another error fixed by the patch in comment#5
* Building KDE/4.10 with ortp 0.20.x or mediastreamer 2.8.x you get the error in comment#1
Comment 7 nucleo 2013-07-08 16:12:33 UTC
For kopete-4.10.90 enough patch from comment 5 for compilation with mediastreamer 2.9 and ortp 0.22.0.
Comment 8 Funda Wang 2013-07-29 14:22:28 UTC
The build error listed in comment#3 has no relationship with ortp, because srtp_policy_t is defined in libsrtp. You should update your libsrtp to latest git master to compile gtalk-call.
Comment 9 Johannes Huber 2013-10-22 09:15:03 UTC
In which KDE SC version is this issue fixed?
Comment 10 Christoph Feck 2013-11-01 10:24:27 UTC
Johannes, this bug is still open.
Comment 11 Pali Rohár 2013-11-01 10:41:18 UTC
I'm working on fix for this bug, just wait.
Comment 12 Pali Rohár 2013-11-01 21:00:29 UTC
Git commit 3443ed1e60e465a8955cf48652a8e4ded2364359 by Pali Rohár.
Committed on 01/11/2013 at 20:54.
Pushed by pali into branch 'master'.

Fix libjingle compilation with mediastreamer >= 2.9.x

Library mediastreamer in 2.9.x changed API, see:

With this patch there is support for both old (< 2.9)
and new (>= 2.9) mediastreamer versions.
FIXED-IN: 4.12

M  +7    -2    cmake/modules/FindMediastreamer.cmake
M  +4    -0    protocols/jabber/googletalk/libjingle/CMakeLists.txt
A  +28   -0    protocols/jabber/googletalk/libjingle/patches/04_mediastreamer_29.patch
M  +8    -0    protocols/jabber/googletalk/libjingle/talk/session/phone/linphonemediaengine.cc