Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Compiling pjsip for iOS 4.0

Tags:

ios4

voip

pjsip

I've been having issues with compiling pjsip for iOS 4.0.

I am using the latest trunk version from SVN and keep getting a portaudio error. When using the piedmontwireless guide: http://www.piemontewireless.net/PJSip155_and_iPhoneSDK312 I get a missing separator error in my build.mak file, which would indicate a whitespace/tabbing error, but for the life of me I cannot find it.

According to the pjsip mailing lists, you should be able to compile out of the box for iOS 4.0, but I get this error:

 ../src/pjmedia-audiodev/errno.c:23:26: error: portaudio.h: No such file or directory
../src/pjmedia-audiodev/errno.c: In function ‘pjmedia_audiodev_strerror’:
../src/pjmedia-audiodev/errno.c:104: warning: implicit declaration of function ‘Pa_GetErrorText’
make[2]: *** [output/pjmedia-audiodev-arm-apple-darwin9/errno.o] Error 1
make[1]: *** [pjmedia-audiodev] Error 2

I'll keep punching through this but any help would be really appreciated.

EDIT: I do have portaudio.h

like image 521
Schroedinger Avatar asked Jul 15 '10 00:07

Schroedinger


2 Answers

The specific step you are missing is to have a config_site.h file in the proper location.

pjlib/include/pj/config_site.h

It needs to contain the following:

#define PJ_CONFIG_IPHONE 1
#include <pj/config_site_sample.h>

So the configuration will avoid libraries that are not needed or won't compile for the arm chip in the iPhone.

After this addition start over with:

./configure-iphone

and then

make dep && make clean && make
like image 115
jkatzer Avatar answered Jan 04 '23 01:01

jkatzer


./configure-iphone

Fresh from SVN

Configurations for current target have been written to 'build.mak', and 'os-auto.mak' in various build directories, and pjlib/include/pj/compat/os_auto.h.

Further customizations can be put in:
  - 'user.mak'
  - 'pjlib/include/pj/config_site.h'

The next step now is to run 'make dep' and 'make'.

Done configuring for iPhoneOS4.2.sdk

Shouldn't ./configure-iphone setup pjlib/include/pj/config_site.h

As

#define PJ_CONFIG_IPHONE 1
#include <pj/config_site_sample.h>

Thanks for the fix @Schroedinger

like image 34
Vee Avatar answered Jan 03 '23 23:01

Vee