linphone code compilation - voip

I have problem compiling linphone code. I have taken git clone of linphone-iphone and when i am trying to open it in xcode i see all the frameworks and other code missing(in red color). I have installed all ports specified in README file of linphone but still all frameworks are missing. I tried to google also but it was of no use.
>
I am very new to SIP/linphone and this issue is driving me crazy. Can anyone help me to solve this issue and show me directions to proceed further.
Thanks
Gurpreet

I was able to get the app to compile yesterday using the instructions inside the README file. I am not sure if those have been updated since you last got the code but now it works. The one trick was to make sure you don't checkout the code into a path which has a space in it. For example: /Users/NAME/Documents/Folder with Space/git/linphone-iphone would be bad.
Other than that, I made sure to build the linphone target and not the linphone-no-gpl-thirdparties but that's because I didn't mind gpl. Their website seems to be going a refactor at the moment so I have copied their readme here:
LINPHONE ON IPHONE
******************************************
BUILD PREQUISITES
Linphone for iPhone depends on liblinphone sdk. This SDK is generated from makefiles and shell scripts.
You must first install both xcode with iPhone OS SDK and MacPorts (www.macports.org) for these scripts to work.
Once xccode and macports are installed, open a terminal and install the required build-time tools with:
$ sudo port install nawk coreutils automake autoconf libtool intltool wget pkgconfig cmake yasm doxygen
Install gas-preprosessor.pl (http://github.com/yuvi/gas-preprocessor/ ) to be copied into /opt/local/bin :
$ wget --no-check-certificate https://raw.github.com/yuvi/gas-preprocessor/master/gas-preprocessor.pl
$ sudo mv gas-preprocessor.pl /opt/local/bin/.
$ sudo chmod +x /opt/local/bin/gas-preprocessor.pl
Link macport libtoolize to glibtoolize
$ sudo ln -s /opt/local/bin/glibtoolize /opt/local/bin/libtoolize
Link host's strings to simulator SDK
$ ln -s /usr/bin/strings /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/strings
BUILDING THE SDK
GPL third parties versus non GPL third parties
This sdk can be generated in 2 flavors. Firt is with GPL third parties, it means liblinphone includes GPL third parties like FFMPEG or x264.
If you choose this flavor, your final application must comply with GPL in any case. This is the default mode.
To generate the liblinphone multi arch sdk in GPL mode, do:
$ cd submodules/build
$ make all
ALTERNATIVELY, you can force liblinphone to use only non GPL code except for liblinphone, mediastremer2, ortp, exosip, osip.
If you choose this flavor, your final application is still subject to GPL except if you have a commercial license for liblinphone, mediastremer2, ortp, exosip, osip.
To generate the liblinphone multi arch sdkin non GPL mode, do:
$ cd submodules/build
$ make all enable_gpl_third_parties=no
The resulting sdk is in liblinphone-sdk/ directory.
In case you upgrade your IOS SDK, you may force rebuilding everything, by doing
$ make veryclean
$ make all
BUILDING THE APPLICATION
After the SDK is built, just open the linphone xcode project with Xcode, and press "Run".
Note regarding third party components subject to license
The liblinphone-sdk is compiled with third parties code that are subject to patent license, specially: AMR, SILK and X264 codecs.
Linphone controls the embedding of these codecs thanks to the preprocessor macros HAVE_SILK, HAVE_AMR, HAVE_X264 positioned in xcode project.
Before embeding these 3 codecs in the final application, make sure to have the right to do so.
LIMITATIONS, KNOWN BUGS
Video capture does not work in simulator (not implemented by simulator ?).
Sound does not work well (or at all) in simulator

Related

How to use gstreamer1.0 instead of 0.10 with Qt5.5?

I have a laptop and a computer and I want to test the Media Player example of Qt.
On my laptop, everything is working, but on my computer I have this message:
no service found for - "org.qt-project.qt.mediaplayer"
I have installed the Multimedia Dependencies but it's change nothing.
So I have try to find the missing packet by using synaptic and on the both computer, I have the same result by searching Gstreamer:
I have also create two file to compare with this command:
apt list | grep inst > apt_list.txt
# and
apt list | grep inst > apt_list_laptop.txt
tkdiff apt_list.txt apt_list_laptop.txt
I can't find what's missing, I ask your help to find it.
Edit:
I run the program with QT_DEBUG_PLUGINS=1 and on the computer I have: "QLibraryPrivate::loadPlugin failed on "/home/.../libgstmediaplayer.so"
It's also said that it can't open libgstaudio-0.10.so.0 but on the laptop it use the 1.0 version.
And effectively, when I write:
ldd libgstmediaplayer.so
It's linked with gstreamer0.10 on my computer, and with 1.0 on my laptop
I found the reason, it's because QtCreator use the library located in /home/user/Qt/5.5/gcc_64/plugins/mediaservice/ but these libraries use the 0.10 version of gstreamer:
Qt Multimedia Module:
Added GStreamer 1.0 support. Note that the default is still 0.10.
The library in the libqt5multimedia5-plugins package use the 1.0 version. So, to launch the media player without "no service" message, I have compile by using command line:
qmake player.pro && make
By this way, qmake use the system library and not the libraries locate in the Qt folder.

Unable to Run mksdcard sdk tool on ARMv7 Processor Ubuntu 14.04

When trying to install Android Studio on my Linux Laptop, I get "Unable to Run mksdcard tool" From what I can tell from searching, this is usually caused by lacking the 32 bit compatibility libraries on 64 bit Linux, however I am running it on an ARMv7 processor, using the crouton project to use Linux on my Chromebook. I have tried install the recomended packages ending in i386, but the command line returned:
Reading Package Lists... Done
Building Dependendency Tree
Reading State information... Done
E: unable to locate package [Name of package here]
E: Couldn't find any package by Regex '[Name of package]'
Does anyone know what is causing this and how I can fix it?
I've discovered a workaround.
After a little searching, I've found that we can create executable binary of the tool for the ARMv7 platform ourselves! Whupee!
Head over to GitHub and pick up the source code, mksdcard.c. Download this to wherever you'd like, but make sure you download it as mksdcard.c and not as mksdcard.c.txt, which your browser might try to do. You can always rename the file later in case you accidentally save the filename incorrectly.
Over in your chroot environment, head to the directory where you downloaded the file.
Make sure you have the gcc compilation tools installed. Try running gcc -v in an attempt to see what version of GCC you have installed. If this doesn't work, you'll need to install GCC via sudo apt-get install gcc.
Run gcc -o mkdscard mksdcard.c. This uses GCC to compile the source code into something that can be executed. After compilation has completed, you can use ./mkscard to have Linux execute the binary file, which verifies that it works.
Navigate to your Android SDK Tools directory. This is usually ~/Downloads/Android/Sdk/tools. By running ls, you'll list the files and find the version of mksdcard that your Linux distribution doesn't understand how to run. (Running ./mksdcard on this file will confirm this.)
Backup the broken binary somewhere, then delete the copy in the tools folder. (I created a backups/ directory within the Android SDK Tools folder to move it to.)
Within the directory, use rm -r mksdcard to delete the old mksdard binary.
Finally, copy your compatible binary over to take it's place, e.g. cp ~/Downloads/mksdcard . (Copies the mksdcard binary we've created to the current directory ., the Android SDK Tools folder.)
Head back over to your Android Studio installer. In the dialogue complaining about mksdcard failing, hit Retry and the installation should continue. After it's finished, be sure to apply any updates that are recommended by the environment. Enjoy!
For newer versions eg. 3.1 C4 of Android Studio running with Ubuntu on ARM32 you will also need to place mksdcard in ~/Downloads/Android/Sdk/emulator (referencing like path from Alext T.).

New C++ GPP device in RedHawk2.0

The release notes for RedHawk 2.0 say that the GPP device previously written in Python has been replaced with one written in "Written in C++, so it is more responsive". But I find it still running in Python (according to ps command python is running GPP.py, and the $SDRROOT/dev/devices/GPP/GPP.spd.xml which also has softpkg version="1.10.0". Was my installation defective and I still have parts of the 1.10 runtime system? My IDE says 2.0.
It sounds like REDHAWK 2.0 was not properly installed on your system, the IDE and the framework/assets are separate and it is possible to get into a situation with conflicting versions depending on the installation steps taken.
Determining what version of REDHAWK you have installed can be determined in a handful of ways. If you installed via yum or rpm you can check the versions of the rpms installed with:
rpm -qa | grep -i redhawk
The redhawk package, and redhawk-ide package should both be at 2.0. Note that the REDHAWK assets are versioned independently.
If you installed via source, you can use the package config files to obtain version information. The framework keeps it's pc files in $OSSIEHOME/lib64/pkgconfig:
cat $OSSIEHOME/lib64/pkgconfig/ossie.pc
Will print out version information for the core framework installed. Depending on what is installed, there are pc files for the framework, bulkio, frontend, and burstio.
I am sorry. The GPP-2.0.0-3.el6.x86_64 DOES contain an ELF executable for GPP device. But the rpm does not install unless I manually erase the GPP-1.10 pkg. Until erased yum says "nothing to do" for some reason. I saw the source code in GPP-debuginfo but did not notice the executable in GPP-2.0.0 since it was all caps and looked like the directory.

linux, freepascal, fp-ide: No debugger support availble. How to enable debugger?

How to enable debugger in fp-ide? I read somewhere that I should compile fp-ide from sources, but I don't know how to do this. Can someone help me?
Get the generic linux tar installer (fpc-2.6.0.x86_64-linux.tar) for FPC from http://www.freepascal.org/down/x86_64/linux-hungary.var It comes with a precompiled IDE with integrated debugger support and it works fine at least on 12.04 LTS.
I wasn't able to find a PPA for fp-ide, but I can describe how the CLI IDE is compiled on Arch Linux as documented in the repository. Do note that compiling will not enable the debugger in the CLI, as it seems to be an incompatibility between gdb and fp (fp-ide) according to e.g. this bug report in Debian. On Arch Linux, the fpc package also doesn't support the debugger in fp by design (it is explicitly disabled using the NOGDB flag).
Anyhow, here goes the compilation process:
Make sure you have FreePascal installed already, as you need it to compile the IDE
Download the source tarball
Extract the tarball to a location of your convenience and cd into that directory
Execute the following code from within your shell:
pushd fpcsrc/compiler
fpcmake -Tall
popd
make build
make -j1 install
# in Arch, the switch "NOGDB=1" is present in both make lines
That should compile the IDE and install it (you can even try to integrate it in dpkg by using checkinstall instead of make install, but take a look at the Arch PKGBUILD to see an example of what might be needed).
But why do you use the command line IDE fp instead of lazarus? With lazarus you can also make console applications and it offers much more features (e.g. working debug support).

How can I help port Google Chrome to Linux?

I really enjoy Chrome, and the sheer exercise of helping a port would boost my knowledge-base.
Where do I start?
What are the fundamental similarities and differences between the code which will operated under Windows and Linux?
What skills and software do I need?
Note:
The official website is Visual Studio oriented!
Netbeans or Eclipse are my only options.
I will not pay Microsoft to help an Open Source project.
EDIT: (2/6/10)
A Beta version of Chrome has been released for Linux. Although it is labeled beta, it works great on my Ubuntu box. You can download it from Google:
http://www.google.com/chrome?platform=linux
EDIT: (5/31/09)
Since I answered this question, there have been more new developments in Chrome (actually "Chromium") for Linux: An alpha build has been released. This means it's not fully functional.
If you use Ubuntu, you're in luck: add the following lines to your /etc/apt/sources.list
deb http://ppa.launchpad.net/chromium-daily/ppa/ubuntu jaunty main
deb-src http://ppa.launchpad.net/chromium-daily/ppa/ubuntu jaunty main
Then, at the command line:
aptitude update
aptitude install chromium-browser
Don't forget to s/jaunty/yourUbuntuVersion/ if necessary. Also, you can s/aptitude/apt-get/, if you insist.
And.... Yes, it works. I'm typing this in my freshly installed Chromium browser right now!
The build is hosted by launchpad, and gave me some security warnings upon install, which I promptly ignored. Here's the website: https://launchpad.net/~chromium-daily/+archive/ppa
The original answer:
Linux Build Instructions
Read this article on Chrome and Open Source on Linux:
http://arstechnica.com/journals/linux.ars/2008/09/02/google-unveils-chrome-source-code-and-linux-port
The Google V8 JavaScript Engine is also open source and available here if you want to contribute;
http://code.google.com/p/v8/
If you want to contribute on Chronium, here are the instructions:
http://dev.chromium.org/developers/contributing-code
Chromium is an open-source browser
project that aims to build a safer,
faster, and more stable way for all
Internet users to experience the web.
This site contains design documents,
architecture overviews, testing
information, and more to help you
learn to build and work with the
Chromium source code.
Here is how you can get started:
http://dev.chromium.org/developers/how-tos/getting-started
EDIT: Two more questions was added to the original question.
Building on Linux requires the following software:
Subversion >= 1.4
pkg-config >= 0.20
Python >= 2.4
Perl >= 5.x
gcc/g++ >= 4.2
bison >= 2.3
flex >= 2.5.34
gperf >= 3.0.3
libnss3-dev >= 3.12
On Ubuntu 8.04, you can fetch all of the above as follows:
$ sudo apt-get install subversion pkg-config python perl g++ bison flex gperf libnss3-dev
Note: There is no working
Chromium-based browser on Linux.
Although many Chromium submodules
build under Linux and a few unit tests
pass, all that runs is a command-line
"all tests pass" executable.

Resources