My favorites | Sign in
Project Home Downloads Wiki Issues Source
Search
for
Compilation  
Compilation guide.
Phase-Implementation
Updated Mar 10, 2010 by samuelv0...@gmail.com

Introduction

This article describes the steps to generate Siphon. I just tested this on Linux. If you test and it works on another OS, I'd like to know.

PjSIP Compilation

Getting pjsip source code

Get PjSIP from subversion repository:

svn checkout http://svn.pjsip.org/repos/pjproject/trunk pjproject

Media device for ipod/iphone

pjMedia

Download iphonesound.c, and save in pjmedia/src/pjmedia directory.

Complete config.h file in pjmedia/include/pjmedia at line 59 with:

/** Constant for AudioQueue sound backend. */
#define PJMEDIA_SOUND_IPHONE_SOUND	    3

Configuration

Complete aconfigure.ac file at line 370 with:

  arm-apple-darwin*)
	LIBS="$LIBS -framework CoreAudio -framework CoreFoundation -framework AudioToolbox"
	ac_pjmedia_snd=iphone
	AC_MSG_RESULT([Checking sound device backend... AudioQueue])
	;;

Complete os-auto.mak.in in pjmedia/build at line 92 with following lines:

#
# iPod/iPhone
#
ifeq ($(AC_PJMEDIA_SND),iphone)
export SOUND_OBJS = iphonesound.o
INCLUDE_IPHONE=/path/of/include/in/iphone/sdk
export CFLAGS += -DPJMEDIA_SOUND_IMPLEMENTATION=PJMEDIA_SOUND_IPHONE_SOUND \
	-D__COREAUDIO_USE_FLAT_INCLUDES__ \
	-I$(INCLUDE_IPHONE)/AudioToolbox \
	-I$(INCLUDE_IPHONE)/CoreAudio \
	-I$(INCLUDE_IPHONE)/CarbonCore \
	-I$(INCLUDE_IPHONE)/CoreFoundation
endif

On Linux and Windows,you need use FLAT_INCLUDES, so you must define INCLUDE_IPHONE. This value defines the path of include directory in your iphone sdk. It would be great to define automatically INCLUDE_IPHONE.

On MacOS X, with official SDK, you need insert these lines:

#
# iPod/iPhone
#
ifeq ($(AC_PJMEDIA_SND),ipod)
export SOUND_OBJS = iphonesound.o
export CFLAGS += -DPJMEDIA_SOUND_IMPLEMENTATION=PJMEDIA_SOUND_IPHONE_SOUND
endif

Generate configuration script

autoconf aconfigure.ac > aconfigure

Compilation

Configure pjsip without codec except G711 and GSM:

./aconfigure --host=arm-apple-darwin8 \
  --disable-speex-aec --disable-speex-codec \
  --disable-l16-codec --disable-g722-codec  --disable-ilbc-codec

We need to add GSM codec, because when the pjmedia-codec library is build, the ar command needs object file to exit without failure.

For official SDK, you need to replace arm-apple-darwin8 by arm-apple-darwin9.

Compile the libraries:

make

If you get an error with AVAILABLE_MAC_OS_X_VERSION_10_5_AND_LATER macro, you should update the AvailabilityMacros.h file in your sdk.

Siphon Compilation

Getting siphon source code

Get Siphon from subversion repository:

svn checkout http://siphon.googlecode.com/svn/trunk/ siphon-read-only

Installation pjsip

Create directory to install pjsip in Siphon:

mkdir -p pjsip/include
mkdir -p pjsip/lib

Put these pjsip include directories in the pjsip/include path:

  • pjlib/include
  • pjlib-util/include
  • pjmedia/include
  • pjnath/include
  • pjsip/include
Put these pjsip library directories in the pjsip/lib path:
  • pjlib/lib
  • pjlib-util/lib
  • pjmedia/lib
  • pjnath/lib
  • pjsip/lib
  • third_party/lib

Compilation

pushd settings
make
popd
pushd src
make
popd

For installation read the Manual.

Comment by anotherc...@gmail.com, May 3, 2008

Just tried to configure, but got an error:

Badger:pjproject christopher$ autoconf aconfigure.ac > aconfigure
-bash: autoconf: command not found

Don't remember if I have the Apple dev tools installed (Xcode), I suppose not :( Oh well that's as far as I can go this evening,

Comment by project member samuelv0...@gmail.com, May 5, 2008

I didn't test on Mac, because I haven't got Mac ;-)

But for your problem, I think you need to install autoconf. Or you can use xcode template in pjsip. I think it exists. If you make some change, I'd like to post them here.

Thanks

Comment by nacise...@gmail.com, May 9, 2008

Samuel, when it builds ipodsound.c, it says it can't find AudioToolbox?/AudioToolbox?.h. In SDK, It is in a different place.

./System/Library/Frameworks/AudioToolbox?.framework/Versions/A/Headers/AudioToolbox?.h

Any idea? Thanks.

Comment by nacise...@gmail.com, May 10, 2008

I figured that I had to install those headers from SDK to my include dir. Now pjsip built. But when I try to build siphon, I realize that my MacOSX10.4u.sdk does not contain Preferences framework, so build fails. Where do we get this?

Also, Makefile in Siphon dir says, Media Layer uses null sound, so am I building this for nothing?

Comment by project member samuelv0...@gmail.com, May 12, 2008

AudioToolbox? exists in 10.4 but it's not complete. You must complete with 10.5. For Preferences, I don't remember if it presents or if I added this after.

Comment by taruncha...@gmail.com, May 28, 2008

How to do this part :

Put these pjsip include directories in the pjsip/include path:

  • pjlib/include
  • pjlib-util/include
  • pjmedia/include
  • pjnath/include
  • pjsip/include

Put these pjsip library directories in the pjsip/lib path:

  • pjlib/lib
  • pjlib-util/lib
  • pjmedia/lib
  • pjnath/lib
  • pjsip/lib
  • third_party/lib
Comment by Igor.Kok...@gmail.com, Jul 20, 2008

Hello, guys

Could you please help me with this: All instructions above have been done, but after "make" command I receive the next error: Undefined symbols:

"Pa_StartStream?", referenced from:
pjmedia_snd_stream_start in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o) pjmedia_snd_stream_start in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o)
"Pa_CloseStream?", referenced from:
pjmedia_snd_stream_close in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o) pjmedia_snd_stream_close in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o) pjmedia_snd_open in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o)
"Pa_GetStreamInfo?", referenced from:
pjmedia_snd_stream_get_info in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o) pjmedia_snd_stream_get_info in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o) pjmedia_snd_open in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o) pjmedia_snd_open in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o) pjmedia_snd_open_rec in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o) pjmedia_snd_open_player in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o)
"Pa_GetDeviceCount?", referenced from:
pjmedia_snd_get_dev_count in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o)
"Pa_Terminate?", referenced from:
pjmedia_snd_deinit in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o)
"Pa_OpenStream?", referenced from:
pjmedia_snd_open in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o) pjmedia_snd_open in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o) pjmedia_snd_open in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o) pjmedia_snd_open_rec in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o) pjmedia_snd_open_player in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o)
"Pa_Initialize?", referenced from:
pjmedia_snd_init in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o)
"Pa_GetHostApiCount?", referenced from:
pjmedia_snd_init in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o) pa_get_default_input_dev in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o) pa_get_default_output_dev in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o)
"PaUtil_SetDebugPrintFunction?", referenced from:
pjmedia_snd_init in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o)
"Pa_StopStream?", referenced from:
pjmedia_snd_stream_start in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o) pjmedia_snd_stream_stop in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o) pjmedia_snd_stream_stop in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o)
"Pa_GetHostApiInfo?", referenced from:
pa_get_default_input_dev in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o) pa_get_default_output_dev in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o) pjmedia_snd_open in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o) pjmedia_snd_open in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o) pjmedia_snd_open_rec in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o) pjmedia_snd_open_player in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o)
"Pa_GetDeviceInfo?", referenced from:
pa_get_default_input_dev in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o) pa_get_default_input_dev in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o) pa_get_default_output_dev in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o) pa_get_default_output_dev in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o) pjmedia_snd_get_dev_info in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o) pjmedia_snd_open in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o) pjmedia_snd_open in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o) pjmedia_snd_open in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o) pjmedia_snd_open_rec in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o) pjmedia_snd_open_player in libpjmedia-i386-apple-darwin9.4.0.a(pasound.o)
ld: symbol(s) not found collect2: ld returned 1 exit status make2?: [../bin/pjsua-i386-apple-darwin9.4.0] Error 1 make1?: pjsua? Error 2 make: all? Error 1

What wrong with this stuff?

Comment by project member samuelv0...@gmail.com, Jul 22, 2008

You didn't follow instructions, because PA_XXX functions are defined for portaudio. Instructions deactivate portaudio library, code uses specific implementation for ipod/iphone.

Comment by rajan3...@gmail.com, Jul 29, 2008

Hi , I followed steps given about but after "make" command I got following error .

arm-apple-darwin-gcc -Wall -c -O2 -I../pjsip/include -DPJ_DARWINOS=1 -DVERSION_STRING="@\"Siphon 1.9.9\"" ring.c -o ring.o /bin/sh: arm-apple-darwin-gcc: command not found make: [ring.o] Error 127

Please if any one have solution for it help me out .

Comment by robertsc...@icp-fan.net, Sep 23, 2008

I received a similar error when I tried to compile PjSIP

for dir in pjlib pjlib-util pjnath third_party pjmedia pjsip pjsip-apps; do \

if make -C $dir/build all; then \
true; \
else \
exit 1; \
fi; \
done
make -f /pjproject/build/rules.mak APP=PJLIB app=pjlib ../lib/libpj-arm-apple-darwin9.a arm-apple-darwin9-gcc -c -Wall -DPJ_AUTOCONF=1 -O2 -I../include \
-o output/pjlib-arm-apple-darwin9/file_access_unistd.o \ ../src/pj/file_access_unistd.c
make2?: arm-apple-darwin9-gcc: Command not found make2?: [output/pjlib-arm-apple-darwin9/file_access_unistd.o] Error 127 make1?: pjlib? Error 2 make: all? Error 1

Comment by raphaelk...@gmail.com, Nov 2, 2008

I made the changes as specified above, but I am getting this error


checking ioqueue backend... select() ./aconfigure: line 9956: syntax error near unexpected token `)' ./aconfigure: line 9956: `arm-apple-darwin)'

The line in question I believe is:


dnl # Sound device backend selection AC_SUBST(ac_pjmedia_snd) arm-apple-darwin)
LIBS="$LIBS -framework CoreAudio? -framework CoreFoundation? -framework AudioToolbox?" ac_pjmedia_snd=ipod AC_MSG_RESULT(sound device backend... AudioQueue?) ;;

Any help would be greatly appreciated..

Comment by michael....@gmail.com, Nov 7, 2008

Hello,

I've compiled pj stack as described above. Then I tried to compile sipone but get these warnings:

ld warning: in ../pjsip/lib/libpjsua-arm-apple-darwin9.a, file is not of required architecture
ld warning: in ../pjsip/lib/libpjsip-ua-arm-apple-darwin9.a, file is not of required architecture
ld warning: in ../pjsip/lib/libpjsip-simple-arm-apple-darwin9.a, file is not of required architecture
ld warning: in ../pjsip/lib/libpjsip-arm-apple-darwin9.a, file is not of required architecture
ld warning: in ../pjmedia/lib/libpjmedia-codec-arm-apple-darwin9.a, file is not of required architecture
ld warning: in ../pjmedia/lib/libpjmedia-arm-apple-darwin9.a, file is not of required architecture
ld warning: in ../pjnath/lib/libpjnath-arm-apple-darwin9.a, file is not of required architecture
ld warning: in ../pjlib-util/lib/libpjlib-util-arm-apple-darwin9.a, file is not of required architecture
ld warning: in ../third_party/lib/libresample-arm-apple-darwin9.a, file is not of required architecture
ld warning: in ../third_party/lib/libmilenage-arm-apple-darwin9.a, file is not of required architecture
ld warning: in ../third_party/lib/libsrtp-arm-apple-darwin9.a, file is not of required architecture
ld warning: in ../third_party/lib/libgsmcodec-arm-apple-darwin9.a, file is not of required architecture
ld warning: in ../pjlib/lib/libpj-arm-apple-darwin9.a, file is not of required architecture

after that it cannot link pj functions. Please help.

Comment by Igor.Kok...@gmail.com, Nov 12, 2008

Hello Guys,

I have my own sip client developed for iPhone 2.1. I'm using pjsip stack. And I have one huge problem. When I have any sip call (incoming/outgoing) iPhone becomes frozen. Did you face with the similar problem?

Thank you.

Comment by gstylian...@gmail.com, Nov 12, 2008

Hello Guys,

could you please tell me how to use pjsip libraries in official iphone sdk?

thanks in advance

Comment by wabr...@gmail.com, Nov 26, 2008

" tarunchaplot, May 28, 2008

How to do this part : "

Just create the pjsip/include and pjsip/lib in the root of the siphon, then copy the content of the folders referenced from the pjsip project in the include and lib folders.

Comment by king7...@gmail.com, Dec 2, 2008

Does anyone have an Xcode project (xcodeproj) that will compile Siphon using the iPhone SDK? I already built the static pjsip libraries and don't want to install the open-iphone toolchain. Any help will be greatly appreciated. Thanks!

Comment by usu...@gmail.com, Jan 6, 2009

I have compiled the pjsip and have done the following in the Siphone project

Put these pjsip include directories in the pjsip/include path:

  • pjlib/include
  • pjlib-util/include
  • pjmedia/include
  • pjnath/include
  • pjsip/include

Put these pjsip library directories in the pjsip/lib path:

  • pjlib/lib
  • pjlib-util/lib
  • pjmedia/lib
  • pjnath/lib
  • pjsip/lib
  • third_party/lib

but when i make the settings Makefile i get the following error

In private_frameworkspath/Preferences.framework/Headers/PSViewController.h:9:31: error:PSBaseViewProtocol.h: No such file or directory

I searched the web for the above .h file with no luck........

Can any one help with this regard

Comment by nandan.m...@gmail.com, Mar 5, 2009

Hi ,

i have build pjproject 1.0.1 and then keep all the lib and include file as the process which has given but when i compiled Makefile using make which is under the setting project that is giving an error missing separator. Stop.

can some one solve my problem which is highly appropriate.... one more thing can someone send me the source code of siphon which has devloped in xcode .if can plz send it to my gmail account nandan.mehra@gmail.com . thanks in advance

Makefile contents : CC=arm-apple-darwin-gcc CXX=arm-apple-darwin-g++ LD=$(CC)

PRODUCT_NAME = Siphon SETTINGS_NAME=$(PRODUCT_NAME)Settings SETTINGS_BUNDLE=$(SETTINGS_NAME).bundle BUILT_PRODUCTS_DIR = ../dist

LDFLAGS= -Wall -lobjc \

-framework CoreFoundation? \ -framework Foundation \ -framework Preferences \
CFLAGS= -O2

TARGET=$(BUILT_PRODUCTS_DIR)/$(SETTINGS_BUNDLE)/$(SETTINGS_NAME) VERSION=1.9.9

SOURCES=\

SiphonSettings?.m

OBJECTS= \

$(patsubst %.c,%.o,$(filter %.c,$(SOURCES))) \ $(patsubst %.m,%.o,$(filter %.m,$(SOURCES)))

LANGUAGES= \

$(wildcard .lproj)
PLIST= \
$(wildcard .plist)

all: $(TARGET)

$(TARGET): $(OBJECTS)

mkdir -p $(BUILT_PRODUCTS_DIR)/$(SETTINGS_BUNDLE) $(LD) $(LDFLAGS) -bundle -o $@ $^ cp Siphon.plist Advanced.plist $(BUILT_PRODUCTS_DIR)/$(SETTINGS_BUNDLE)/ cp icon.png $(BUILT_PRODUCTS_DIR)/$(SETTINGS_BUNDLE)/ for i in $(LANGUAGES); do \
mkdir -p $(BUILT_PRODUCTS_DIR)/$(SETTINGS_BUNDLE)/$$i; \ cp $$i/Localizable.strings $(BUILT_PRODUCTS_DIR)/$(SETTINGS_BUNDLE)/$$i; \
done

%.o: %.m

$(CC) -Wall -c $(CFLAGS) $(CPPFLAGS) $< -o $@

%.o: %.c

$(CC) -Wall -c $(CFLAGS) $(CPPFLAGS) $< -o $@

clean:

rm -rf $(OBJECTS)

Comment by krishna....@gmail.com, Apr 16, 2009

Hi,

I am getting following error.I know that most people getting same error.So please try to respond as it may helpful for the guys.

This is when i try "make dep" command

for dir in pjlib pjlib-util pjnath third_party pjmedia pjsip pjsip-apps; do \

if make -C $dir/build dep; then \
true; \
else \
exit 1; \
fi; \
done
make -f /pjproject/build/rules.mak APP=PJLIB app=pjlib depend /pjproject/build/rules.mak:79: missing separator. Stop. make1?: depend? Error 2 make: dep? Error 1

Comment by rahulvai...@gmail.com, Jul 6, 2009

Please help me.... I am getting below error while compiling PJSIP library Please let me know what is problem.. rahulvaishnav23@gmail.com

./aconfigure --host=arm-apple-darwin9\ > --disable-speex-acc --disable=speex-codec\ > --disable-116-codec --disable-g722-codec --disable-ilbc-codec -bash: ./aconfigure: Permission denied

Comment by shayne.oneill@gmail.com, Jul 23, 2009
rahulvaishnav23, you need to change ownership of all the files to yourself
Comment by oscargom...@gmail.com, Sep 9, 2009

Siphon installs correctly but program crashes when attempting to do a second call if the first call is successful. No error displayed program just exits.

Comment by pd_...@hotmail.com, Nov 21, 2009

I'm a newbie for siphon I stuck with compiling on iPhoneOS3.1.2 , MacOSX10.5.8 for a few days which I have follow instruction at http://code.google.com/p/siphon/wiki/CompilationForiPhoneOS2_X . The code is last version, I get from svn when I compile I get following error: ... ake -f /Users/theaof/Desktop/pjproject/build/rules.mak APP=PORTAUDIO app=libportaudio depend .libportaudio-i386-apple-darwin9.8.0.depend:1: missing separator. Stop. make2?: depend? Error 2 make1?: dep? Error 1 make: dep? Error 1

I want you to suggest me to compile on Xcode3.1.4 and iPhone 3.1.2. Please help me.

Thank you so much

Aof

Comment by ravibu...@gmail.com, Feb 5, 2010

Hi, I am able to compile pjsip successfully on Mac (My main intension is to run siphon on iphone simulator), but after creating pjsip include and lib files when I am trying to compile siphon with the commands as mentioned in above tutorial.

like "pushd settings" and "make" make is not working giving error, after typing "make" I am getting error as "arm-apple-darwin-gcc -Wall -C -O2 SiphonSettings?.m -o SiphonSettings?.o

make: arm-apple-darwin-gcc: No such file or directory make: [SiphonSettings.o] Error 1".

Please help me to compile/build siphon successfully on iphone simulator.

Comment by socker1r...@gmail.com, Feb 9, 2010

my siphon cannot receive or send sounds... i mean it works completely and i can receive calls but i cant make them. and how do i get the libg729a.a library?

thanks in advance ! - Thommy

Comment by use...@gmail.com, Mar 15, 2010

How can I compile and run siPhone and PjSIP under iPhone Simulator ?

What should I do to compile PjSIP lib-s to enable them running under Simulator???

Comment by alramly-...@hotmail.com, Mar 16, 2010

hello , could you help me plz? how can i download the source code for siphone xcode project?

thanks for your help .

Comment by alramly-...@hotmail.com, Mar 19, 2010

i try to compile pjsip on mac but this error appear ,could any body help me?please

after make dep this error appear:

echo "output/pjlib-i386-apple-darwin9.8.0/" | tr -d '\n' >> .pjlib-i386-apple-darwin9.8.0.depend; /bin/sh: -c: line 1: syntax error: unexpected end of file make2?: depend? Error 2 make1?: depend? Error 2 make: dep? Error 1

afer make this error appear:

../include/pjmedia/config.h:60: error: syntax error before ‘-’ token In file included from ../include/pjmedia/types.h:28,

from ../include/pjmedia/echo.h:28, from ../src/pjmedia/echo_speex.c:21: ../include/pjmedia/config.h:60:13: error: invalid suffix "c" on floating constant In file included from ../../pjlib/include/pj/sock.h:28, from ../include/pjmedia/types.h:29, from ../include/pjmedia/echo.h:28, from ../src/pjmedia/echo_speex.c:21: ../../pjlib/include/pj/types.h:343: error: syntax error before ‘pj_swap32’ ../../pjlib/include/pj/types.h:343: error: syntax error before ‘val32’ ../../pjlib/include/pj/types.h:344: warning: return type defaults to ‘int’ ../../pjlib/include/pj/types.h: In function ‘pj_swap32’: ../../pjlib/include/pj/types.h:345: error: ‘val32’ undeclared (first use in this function) ../../pjlib/include/pj/types.h:345: error: (Each undeclared identifier is reported only once ../../pjlib/include/pj/types.h:345: error: for each function it appears in.) make2?: output/pjmedia-i386-apple-darwin9.8.0/echo_speex.o? Error 1 make1?: pjmedia? Error 2 make: all? Error 1

any idea???

Comment by antalbal...@gmail.com, Mar 26, 2010

in Xcode the downoader: main menu -> SCM -> Configure SCM Repositories -> SCM Name: Something... URL: http://siphon.googlecode.com/svn/trunk

Comment by robertoa...@gmail.com, Apr 27, 2010

How can I compile Siphon under Windows OS ? What tool must I use for edit the source code? Visual Studio .NET?

Comment by sarbanes...@gmail.com, May 13, 2010

Hi, I tried to deploy the app from Xcode, with target 3.0. Everything works, except a lot of warning and this error:

Running custom shell script (1 error): line 3: ldid: command not found

Has anyone successfully managed to build the app from Xcode on a device? I spent more than 10 hours on research for trying to get this work with no success. Any help is appreciated.

Comment by haris.ha...@gmail.com, May 21, 2010

Hi all! Has anyone successfully compiled siphone on snow leopard 10.6.3 / Xcode 3.2.1 / iPhone 3.1.2 with the above instructions? If yes, can you please upload the whole directory? Or write a how-to step by step like I did it below? That would be great and save a lot of time everyone who is looking to compile the siphone with xcode! I still got 63 errors while compiling siphone with xcode... pjsip/pjmedia compiles without any problems! If someone needs the compiled pjproject-svn with the libraries, please contact me!

If someone can’t find the “libg729a.a” library… just perform the following steps:

1. Go to your “siphon-read-only” folder

2. Inside you will see the “g729a” folder… Open it

3. Execute the “g729a.xcodeproj” Xcode file… Xcode should open

4. Press on the drop-down menu and choose your SDK “Device – 3.1.2 - DEBUG”

5. Press “cmd & b” cmd, means “Command on your Apple keyboard”

6. After the Build, you will find the “libg729a.a” library in ../siphon-read-only/g729a/build/Debug-iphoneos/libg729a.a

I hope this will help someone!

Comment by khatrida...@gmail.com, May 24, 2010

i have build pjsip it builds pjsip currectly. but gives error file is not of required architecure. i have followed all the steps as per instruction. still gives that error while compiling siphon

Comment by corrado....@gmail.com, May 30, 2010

I tried to compile but the PJMEDIA_SOUND has been deprecated so I can't figure out how to apply the PJEMDIA patch. Someone else found the same problem?. How did he solve it?

Thank

Comment by GRMrGe...@gmail.com, Jul 15, 2010

One of the things you guys should of done is a patch file and include which revision to download as obviously if you don't include a revision this guide would become obsolete and none would be able to follow... If you could email me the revision, I'll write a shell script for everyone to do it. I really want to get this running on my iPod iOS 4.0 and you guys seem to make it hard by not being up to date and or easy to follow.

Comment by rursche...@gmail.com, Jul 20, 2010

I really would like to compile and run this on iOS 4 using XCode3.2.3. Can anybody help? I have checkout the source, but have tons of error trying to compile any of the projects.

Comment by r...@iavian.com, Jul 23, 2010

No luck compiling it on iOS4

Comment by az.arif....@gmail.com, Sep 23, 2010

I have successfully compiled PJSIP on MAC. Now, I am trying to build Siphon using Xcode 3.1.4 for iPhone simulator 3.1.2. I am getting only the error:

Running custom shell script (1 error) line 3:ldid: Command not found

any idea?

Comment by az.arif....@gmail.com, Sep 26, 2010

I have commented the shell script section and deployed the Siphon to emulator. I have also commented the shell script section for SiphonSettings? project as well.

Now, when I run Siphon I got the message "Siphon requires a valid SIP account" by selecting "settings" from Home screen. But, I am not sure how I will upload the SiphonSettings? application to iPhone emulator.

Any suggestion will be highly appreciated?

Comment by testuser...@gmail.com, Sep 26, 2010

@az.arif.zaman "I have also commented the shell script section for SiphonSettings?? project as well." I don't know where SiphonSettings? shell script section is... if you can explain it to me with help of screenshots or give me exact location I can look into that. ( I didnt had to comment out anything other than Run Scripts under Targets-> Siphon )

Comment by az.arif....@gmail.com, Sep 26, 2010

@testusermac123 I have commented the full PBXShellScriptBuildPhase section of project.pbxproj for SiphonSettings??.xcodeproj project.

/ Begin PBXShellScriptBuildPhase section

7E432FD6106623FF00949182 ShellScript? = {
isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputPaths = ( ); outputPaths = ( ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; shellScript = "echo \"Code Signing (jailbreak) ${PRODUCT_NAME}\"\nldid -S \"${TARGET_BUILD_DIR}/${EXECUTABLE_PATH}\"";
};
End PBXShellScriptBuildPhase section /

Thanks

Comment by testuser...@gmail.com, Sep 27, 2010

@az.arif.zaman I haven't added SiphonSettings?.xcodeproj to Siphon.xcodeproj ... I have added settings bundle though. So I didn't had to bother about it. Try removing SiphonSettings?.xcodeproj from Siphon.xcodeproj ( by default it is not linked .. but if you have imported and linked to current project just take off the reference ) Check this link http://www.piemontewireless.net/Siphon_and_Settings_Bundles and add settings.bundle to your project. Let us know how this works for you...

Comment by az.arif....@gmail.com, Sep 28, 2010

@testusermac123 Thanks for all your help. I have compiled and deployed Siphon on iPhone simulator.

Now, I am trying to call from iPhone simulator to other extension, but I am getting error as "registration error Default status message" with OK option from "status = pjsua_call_make_call(acc_id, &pj_uri, 0, NULL, NULL, call_id);" line of "sip_dial_with_uri()" function on call.m file.

Error: Unable to find default device #define PJMEDIA_EAUD_NODEFDEV (PJMEDIA_AUDIODEV_ERRNO_START+6) / 420006 /

Here is my pjproject configuration point: arm-apple-darwin | i686-apple-darwin)

LIBS="$LIBS -framework CoreAudio? -framework CoreFoundation? -framework AudioToolbox?" ac_pjmedia_snd=iphone AC_MSG_RESULT(sound device backend... AudioUnit?) ;;

Is there any missing point here???

Comment by testuser...@gmail.com, Sep 28, 2010

@az.arif.zaman I dont think its Simulator specific error message. You were right with i686-apple-darwin. Quit XCode, try running ./configure-iphone , make dep, make clean, make.. again see if you got any error messages there. ( did you pick up latest pjsip ? ) Where are you getting these error messages ? After you launch simulator or after you enter settings for sip provider and then launch siphon

Comment by az.arif....@gmail.com, Sep 28, 2010

@testusermac123 I have successfully deployed Siphon and Settings on iPhone simulator. And Siphon is Registered successfully with SIP GW. But, when I am trying to make any call, it displays "registration error Default status message" error message.

After debugging the source, I found that it failed to make call from sip_dial_with_uri() function on status = pjsua_call_make_call(acc_id, &pj_uri, 0, NULL, NULL, call_id) line of call.m file.

Error Status code: 420006 (PJMEDIA_EAUD_NODEFDEV)

Error Cause: Unable to find default device

I can receive any incoming call and call is connected properly. But, there is no audio on either side.

is there any clue???

Comment by testuser...@gmail.com, Sep 28, 2010

@az.arif.zaman Who is the Sip provider, let me test using the same sip provider ( btw I used gizmo5 and sip2sip both of em worked fine for me )

Comment by az.arif....@gmail.com, Sep 28, 2010

@testusermac123 I am using my working Asterisk SIP GW. I have tested will other SIP clients and all are working as expected. So, no issue with SIP GW. I think, problem is with Audio (Speaker/Mic) device detection.

Comment by testuser...@gmail.com, Sep 29, 2010

@az.arif.zaman Here is my compiled pjsip for simulator Try using this first http://www.mediafire.com/?9cf70pghwdvnf5n If issue persists compile pjsip for device and then compile build and run siphon for Device /// I am not quite sure about the issue. Lets see if this helps..

Comment by az.arif....@gmail.com, Sep 30, 2010

@testusermac123 I have used your compiled pjsip for simulator. But, when I am trying to compile Siphon for iPhone Simulator 3.1.2, I am getting the following errors:

Undefined symbols:

"kCFStreamNetworkServiceTypeVoIP", referenced from:
kCFStreamNetworkServiceTypeVoIP$non_lazy_ptr in libpj-arm-apple-darwin9.a(activesock.o)
"kCFStreamNetworkServiceType", referenced from:
kCFStreamNetworkServiceType$non_lazy_ptr in libpj-arm-apple-darwin9.a(activesock.o)
ld: symbol(s) not found collect2: ld returned 1 exit status

Comment by testuser...@gmail.com, Sep 30, 2010

@az.arif.zaman , Thats compiled pjsip lib for iOS 4 ... http://www.file-upload.net/download-2536373/pjproject-svn.zip.html for 3.1.2 (by haris ) If possible test for iOS4 latest pjsip 1.18 doesnt need patches.earlier versions u need to patch then compile. Anyway pick up http://www.file-upload.net/download-2536373/pjproject-svn.zip.html and see if this works for you.. ( 3.1.2 )

Comment by az.arif....@gmail.com, Oct 2, 2010

@testusermac123 I have used your compiled source (http://www.mediafire.com/?9cf70pghwdvnf5n). And to avoid last two errors, I have replaced pjlib Header and Lib using my last build. Now, Siphon is working as expected on iPhone Emulator with both side audio. :)

Thanks for all your help.

Comment by iyer...@gmail.com, Oct 12, 2010

i am trying to compile the pjsip. i am following the steps shown above, but i dont understand what path should i provide to os-auto.mak.in in pjmedia/build

what path should i provide for the following statement.

INCLUDE_IPHONE=/path/of/include/in/iphone/sdk ???????

can smebody plz show me an example. Thanku.

Comment by music...@gmail.com, Oct 12, 2010

@az.arif.zaman: I'm getting the exact same two errors (referencing the kCFStream... stuff). How did you fix the problem?

Comment by az.arif....@gmail.com, Oct 13, 2010

@musicule are you using current pjsip trunk?

Comment by nick.t.j...@gmail.com, Oct 19, 2010

@musicule I've just been struggling with that problem. I solved it by adding the CFNetwork framework to the XCode project, or add "-framework CFNetwork" when linking.

Comment by rfk...@gmail.com, Oct 23, 2010

Hello, I am trying to build pjsip, on SDK 4.1, but I am getting 2 errors:

Ld build/Debug-iphonesimulator/ipjsua.app/ipjsua normal i386 cd /Users/admin/Desktop/Telephone/pjproject/pjsip-apps/src/ipjsua setenv MACOSX_DEPLOYMENT_TARGET 10.5 setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -arch i386 -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator3.2.sdk -L/Users/admin/Desktop/Telephone/pjproject/pjsip-apps/src/ipjsua/build/Debug-iphonesimulator -L../../../pjlib/lib -L../../../pjlib-util/lib -L../../../pjnath/lib -L../../../pjmedia/lib -L../../../pjsip/lib -L../../../third_party/lib -L/Users/admin/Desktop/Telephone/pjproject/pjsip-apps/src/ipjsua/../../../third_party/lib -L/Users/admin/Desktop/Telephone/pjproject/pjsip-apps/src/ipjsua/../../../pjlib/lib -L/Users/admin/Desktop/Telephone/pjproject/pjsip-apps/src/ipjsua/../../../pjlib-util/lib -L/Users/admin/Desktop/Telephone/pjproject/pjsip-apps/src/ipjsua/../../../pjmedia/lib -L/Users/admin/Desktop/Telephone/pjproject/pjsip-apps/src/ipjsua/../../../pjnath/lib -L/Users/admin/Desktop/Telephone/pjproject/pjsip-apps/src/ipjsua/../../../pjsip/lib -F/Users/admin/Desktop/Telephone/pjproject/pjsip-apps/src/ipjsua/build/Debug-iphonesimulator -filelist /Users/admin/Desktop/Telephone/pjproject/pjsip-apps/src/ipjsua/build/ipjsua.build/Debug-iphonesimulator/ipjsua.build/Objects-normal/i386/ipjsua.LinkFileList? -mmacosx-version-min=10.5 -Xlinker -objc_abi_version -Xlinker 2 -framework Foundation -framework UIKit -framework CoreGraphics? -framework AudioToolbox? -lgsmcodec-arm-apple-darwin9 -lpj-arm-apple-darwin9 -lpjlib-util-arm-apple-darwin9 -lpjmedia-arm-apple-darwin9 -lpjmedia-audiodev-arm-apple-darwin9 -lpjmedia-codec-arm-apple-darwin9 -lpjnath-arm-apple-darwin9 -lpjsip-arm-apple-darwin9 -lpjsip-simple-arm-apple-darwin9 -lpjsip-ua-arm-apple-darwin9 -lpjsua-arm-apple-darwin9 -lresample-arm-apple-darwin9 -lg7221codec-arm-apple-darwin9 -lilbccodec-arm-apple-darwin9 -lmilenage-arm-apple-darwin9 -lpjsdp-arm-apple-darwin9 -lspeex-arm-apple-darwin9 -lsrtp-arm-apple-darwin9 -framework CFNetwork -o /Users/admin/Desktop/Telephone/pjproject/pjsip-apps/src/ipjsua/build/Debug-iphonesimulator/ipjsua.app/ipjsua

Undefined symbols:

"kCFStreamNetworkServiceTypeVoIP", referenced from:
kCFStreamNetworkServiceTypeVoIP$non_lazy_ptr in libpj-arm-apple-darwin9.a(activesock.o)
(maybe you meant: kCFStreamNetworkServiceTypeVoIP$non_lazy_ptr)
"kCFStreamNetworkServiceType", referenced from:
kCFStreamNetworkServiceType$non_lazy_ptr in libpj-arm-apple-darwin9.a(activesock.o)
(maybe you meant: kCFStreamNetworkServiceTypeVoIP$non_lazy_ptr, kCFStreamNetworkServiceType$non_lazy_ptr )
ld: symbol(s) not found collect2: ld returned 1 exit status

Can you please helo

Comment by rfk...@gmail.com, Oct 23, 2010

OK guys, I solved my issue(I had 3.2 configured as the base SDK in the target). I had to change the target SDK from the project as well as the target SDK from the "targets" node. Newbie mistake.

Comment by nani.mon...@gmail.com, Nov 3, 2010

@az.arif.zaman:Can u please provide the code that you are using so that it would be helpful for me for reference Iam getting tons of errors when compiling my siphon project.

Thank you, Monish.

Comment by vinceyou...@gmail.com, Jul 23, 2011

during the COMPILATION part of the docs... I am getting this... I am thinking that I did something wrong.

pushd settings ~/AA-TiProjects?/NATIVE/iPHONE/SIPHON/siphon-read-only/Siphon/settings ~/AA-TiProjects?/NATIVE/iPHONE/SIPHON/siphon-read-only/Siphon Macintosh-5:settings vy$ make arm-apple-darwin-gcc -Wall -c -O2 SiphonSettings?.m -o SiphonSettings?.o make: arm-apple-darwin-gcc: No such file or directory make: [SiphonSettings.o] Error 1 Macintosh-5:settings vy$ popd ~/AA-TiProjects?/NATIVE/iPHONE/SIPHON/siphon-read-only/Siphon Macintosh-5:Siphon vy$ pushd src ~/AA-TiProjects?/NATIVE/iPHONE/SIPHON/siphon-read-only/Siphon/src ~/AA-TiProjects?/NATIVE/iPHONE/SIPHON/siphon-read-only/Siphon Macintosh-5:src vy$ make arm-apple-darwin-gcc -Wall -c -O2 -I../pjsip/include -DPJ_DARWINOS=1 -DVERSION_STRING="@\"Siphon 1.9.9\"" ring.c -o ring.o /bin/sh: arm-apple-darwin-gcc: command not found make: [ring.o] Error 127 Macintosh-5:src vy$ popd ~/AA-TiProjects?/NATIVE/iPHONE/SIPHON/siphon-read-only/Siphon Macintosh-5:Siphon vy$

can someone give me a hint what i am doing wrong please

Comment by jinish...@gmail.com, Sep 26, 2011

Can we make peer 2 peer call using this, like linphone ?

Comment by parsamya...@gmail.com, Nov 26, 2011

Hi all... Please help me to compile pjsip lib.... I tryed to compile and got this error....


../src/pj/os_info_iphone.m:27:28: error: UIKit/UIDevice.h: No such file or directory ../src/pj/os_info_iphone.m: In function ‘pj_iphone_os_get_sys_info’: ../src/pj/os_info_iphone.m:32: error: ‘UIDevice’ undeclared (first use in this function) ../src/pj/os_info_iphone.m:32: error: (Each undeclared identifier is reported only once ../src/pj/os_info_iphone.m:32: error: for each function it appears in.) ../src/pj/os_info_iphone.m:32: error: ‘device’ undeclared (first use in this function) ../src/pj/os_info_iphone.m:49: error: ‘NSASCIIStringEncoding’ undeclared (first use in this function) make2?: [output/pjlib-arm-apple-darwin9/os_info_iphone.o] Error 1 make1?: pjlib? Error 2 make: all? Error 1


I dont understand what path i should give to INCLUDE_IPHONE.

INCLUDE_IPHONE=/path/of/include/in/iphone/sdk

Comment by chengfe...@gmail.com, Feb 13, 2012

Undefined symbols for architecture armv7:

"DJTel_Login", referenced from:
-applicationDidFinishLaunching:? in ipjsuaAppDelegate.o

Comment by gurusin...@gmail.com, Apr 1, 2012

../src/pj/os_info_iphone.m:27:28: error: UIKit/UIDevice.h: No such file or directory ../src/pj/os_info_iphone.m: In function ‘pj_iphone_os_get_sys_info’: ../src/pj/os_info_iphone.m:32: error: ‘UIDevice’ undeclared (first use in this function) ../src/pj/os_info_iphone.m:32: error: (Each undeclared identifier is reported only once ../src/pj/os_info_iphone.m:32: error: for each function it appears in.) ../src/pj/os_info_iphone.m:32: error: ‘device’ undeclared (first use in this function) ../src/pj/os_info_iphone.m:49: error: ‘NSASCIIStringEncoding’ undeclared (first use in this function) make2?: [output/pjlib-arm-apple-darwin9/os_info_iphone.o] Error 1 make1?: pjlib? Error 2 make: all? Error 1

I get following error when runing make on pjproject. I solved it by running ./configure && make dep && make clean && make as defined in the INSTALL.txt

Comment by gurusin...@gmail.com, Apr 1, 2012

Apples-MacBook?-Pro:Siphon apple$ pushd settings ~/siphon-read-only/Siphon/settings ~/siphon-read-only/Siphon ~/siphon-read-only/Siphon ~/siphon-read-only/Siphon2 ~/siphon-read-only/Siphon2 Apples-MacBook?-Pro:settings apple$ ls -l total 56 -rw-r--r-- 1 apple staff 2382 Apr 1 00:29 Advanced.plist drwxr-xr-x 4 apple staff 136 Apr 1 00:29 English.lproj drwxr-xr-x 4 apple staff 136 Apr 1 00:29 French.lproj drwxr-xr-x 4 apple staff 136 Apr 1 00:29 German.lproj -rw-r--r-- 1 apple staff 711 Apr 1 00:29 Info.plist -rw-r--r-- 1 apple staff 1158 Apr 1 00:29 Makefile -rw-r--r-- 1 apple staff 2990 Apr 1 00:29 Siphon.plist -rw-r--r-- 1 apple staff 1630 Apr 1 00:29 SiphonSettings?.h -rw-r--r-- 1 apple staff 2578 Apr 1 00:29 SiphonSettings?.m drwxr-xr-x 4 apple staff 136 Apr 1 00:29 Spanish.lproj -rw-r--r-- 1 apple staff 2420 Apr 1 00:29 icon.png Apples-MacBook?-Pro:settings apple$ pwd /Users/apple/siphon-read-only/Siphon/settings Apples-MacBook?-Pro:settings apple$ cd ... -bash: cd: ...: No such file or directory Apples-MacBook?-Pro:settings apple$ make arm-apple-darwin-gcc -Wall -c -O2 SiphonSettings?.m -o SiphonSettings?.o make: arm-apple-darwin-gcc: No such file or directory make: [SiphonSettings.o] Error 1


Sign in to add a comment
Powered by Google Project Hosting