Problem compiling simple_pjsua (linking problem)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Ben:

>
>  I think you're using the old instruction which requires the app's
>  Makefile to specify all the libraries, and you missed specifying all
>  the enabled codecs. The new (well, since 0.5.10.2) instruction is much
>  simpler, you can see it here:
>  http://trac.pjsip.org/repos/wiki/Getting_Started_Using or here:
>  http://www.pjsip.org/using.htm#using
>

You're right! I changed the makefile and it works. I went through that
section earlier, but apparently I choosed the wrong makefile :)

Thanks for that quick response!!


>  cheers,
>   -benny
>
>
>
>
>  >  PJBASE=pjproject-0.8.0
>  >
>  >  include $(PJBASE)/build.mak
>  >
>  >  CC=$(CROSS_COMPILE)$(CC_NAME)
>  >
>  >  # Remove components that you don't need from the following definitions.
>  >  LDFLAGS=-L${PJBASE}/pjlib/lib\
>  >         -L${PJBASE}/pjlib-util/lib\
>  >         -L${PJBASE}/pjmedia/lib\
>  >         -L${PJBASE}/pjnath/lib\
>  >         -L${PJBASE}/pjsip/lib
>  >
>  >  LDLIBS=-lpjsua-${TARGET_NAME}\
>  >         -lpjsip-ua-${TARGET_NAME}\
>  >         -lpjsip-simple-${TARGET_NAME}\
>  >         -lpjsip-${TARGET_NAME}\
>  >         -lpjmedia-codec-${TARGET_NAME}\
>  >         -lpjmedia-${TARGET_NAME}\
>  >         -lpjnath-${TARGET_NAME}\
>  >         -lpjlib-util-${TARGET_NAME}\
>  >         -lpj-${TARGET_NAME}\
>  >         -lm\
>  >         -lpthread
>  >
>  >  CFLAGS=-I${PJBASE}/pjlib/include\
>  >         -I${PJBASE}/pjlib-util/include\
>  >         -I${PJBASE}/pjmedia/include\
>  >         -I${PJBASE}/pjnath/include\
>  >         -I${PJBASE}/pjsip/include\
>  >         -DPJ_AUTOCONF=1
>  >
>  >  CPPFLAGS=${CFLAGS}
>  >
>  >
>  >  But when I try to 'make' simple_pjsua, I get this linking errors:
>  >
>  >  saghul at homer:~/PFC/pruebas$ make
>  >  gcc -o hello-world hello-world.c -Ipjproject-0.8.0/pjlib/include
>  >  -Ipjproject-0.8.0/pjlib-util/include -Ipjproject-0.8.0/pjmedia/include
>  >  -Ipjproject-0.8.0/pjnath/include -Ipjproject-0.8.0/pjsip/include
>  >  -DPJ_AUTOCONF=1 -Lpjproject-0.8.0/pjlib/lib
>  >  -Lpjproject-0.8.0/pjlib-util/lib -Lpjproject-0.8.0/pjmedia/lib
>  >  -Lpjproject-0.8.0/pjnath/lib -Lpjproject-0.8.0/pjsip/lib
>  >  -lpjsua-i686-pc-linux-gnu -lpjsip-ua-i686-pc-linux-gnu
>  >  -lpjsip-simple-i686-pc-linux-gnu -lpjsip-i686-pc-linux-gnu
>  >  -lpjmedia-codec-i686-pc-linux-gnu -lpjmedia-i686-pc-linux-gnu
>  >  -lpjnath-i686-pc-linux-gnu -lpjlib-util-i686-pc-linux-gnu
>  >  -lpj-i686-pc-linux-gnu -lm -lpthread
>  >  pjproject-0.8.0/pjmedia/lib/libpjmedia-codec-i686-pc-linux-gnu.a(gsm.o):
>  >  In function `gsm_codec_close':
>  >  gsm.c:(.text+0x30b): undefined reference to `gsm_destroy'
>  >  gsm.c:(.text+0x320): undefined reference to `gsm_destroy'
>  >  pjproject-0.8.0/pjmedia/lib/libpjmedia-codec-i686-pc-linux-gnu.a(gsm.o):
>  >  In function `gsm_codec_decode':
>  >  gsm.c:(.text+0x475): undefined reference to `gsm_decode'
>  >  pjproject-0.8.0/pjmedia/lib/libpjmedia-codec-i686-pc-linux-gnu.a(gsm.o):
>  >  In function `gsm_codec_encode':
>  >  gsm.c:(.text+0x5c0): undefined reference to `gsm_encode'
>  >  pjproject-0.8.0/pjmedia/lib/libpjmedia-codec-i686-pc-linux-gnu.a(gsm.o):
>  >  In function `gsm_codec_open':
>  >  gsm.c:(.text+0x673): undefined reference to `gsm_create'
>  >  gsm.c:(.text+0x67e): undefined reference to `gsm_create'
>  >  pjproject-0.8.0/pjmedia/lib/libpjmedia-codec-i686-pc-linux-gnu.a(ilbc.o):
>  >  In function `ilbc_codec_recover':
>  >  ilbc.c:(.text+0x344): undefined reference to `iLBC_decode'
>  >  pjproject-0.8.0/pjmedia/lib/libpjmedia-codec-i686-pc-linux-gnu.a(ilbc.o):
>  >  In function `ilbc_codec_decode':
>  >  ilbc.c:(.text+0x483): undefined reference to `iLBC_decode'
>  >  pjproject-0.8.0/pjmedia/lib/libpjmedia-codec-i686-pc-linux-gnu.a(ilbc.o):
>  >  In function `ilbc_codec_encode':
>  >  ilbc.c:(.text+0x5b9): undefined reference to `iLBC_encode'
>  >  pjproject-0.8.0/pjmedia/lib/libpjmedia-codec-i686-pc-linux-gnu.a(ilbc.o):
>  >  In function `ilbc_codec_open':
>  >  ilbc.c:(.text+0x775): undefined reference to `initEncode'
>  >  ilbc.c:(.text+0x7b4): undefined reference to `initDecode'
>  >  pjproject-0.8.0/pjmedia/lib/libpjmedia-i686-pc-linux-gnu.a(errno.o):
>  >  In function `pjmedia_strerror':
>  >  errno.c:(.text+0xad): undefined reference to `Pa_GetErrorText'
>  >  pjproject-0.8.0/pjmedia/lib/libpjmedia-i686-pc-linux-gnu.a(resample_resample.o):
>  >  In function `pjmedia_resample_create':
>  >  resample_resample.c:(.text+0x175): undefined reference to `res_GetXOFF'
>  >  pjproject-0.8.0/pjmedia/lib/libpjmedia-i686-pc-linux-gnu.a(resample_resample.o):
>  >  In function `pjmedia_resample_run':
>  >  resample_resample.c:(.text+0x23d): undefined reference to `res_SrcLinear'
>  >  resample_resample.c:(.text+0x29c): undefined reference to `res_Resample'
>  >  pjproject-0.8.0/pjmedia/lib/libpjmedia-i686-pc-linux-gnu.a(pasound.o):
>  >  In function `pjmedia_snd_deinit':
>  >  pasound.c:(.text+0x31): undefined reference to `Pa_Terminate'
>  >  pjproject-0.8.0/pjmedia/lib/libpjmedia-i686-pc-linux-gnu.a(pasound.o):
>  >  In function `pjmedia_snd_stream_close':
>  >  pasound.c:(.text+0x107): undefined reference to `Pa_CloseStream'
>  >  pasound.c:(.text+0x11d): undefined reference to `Pa_CloseStream'
>  >  pjproject-0.8.0/pjmedia/lib/libpjmedia-i686-pc-linux-gnu.a(pasound.o):
>  >  In function `pjmedia_snd_stream_stop':
>  >  pasound.c:(.text+0x203): undefined reference to `Pa_StopStream'
>  >  pasound.c:(.text+0x219): undefined reference to `Pa_StopStream'
>  >  pjproject-0.8.0/pjmedia/lib/libpjmedia-i686-pc-linux-gnu.a(pasound.o):
>  >  In function `pjmedia_snd_stream_start':
>  >  pasound.c:(.text+0x294): undefined reference to `Pa_StartStream'
>  >  pasound.c:(.text+0x2d0): undefined reference to `Pa_StartStream'
>  >  pasound.c:(.text+0x2e1): undefined reference to `Pa_StopStream'
>  >  pjproject-0.8.0/pjmedia/lib/libpjmedia-i686-pc-linux-gnu.a(pasound.o):
>  >  In function `pa_get_default_output_dev':
>  >  pasound.c:(.text+0x34d): undefined reference to `Pa_GetHostApiCount'
>  >  pasound.c:(.text+0x364): undefined reference to `Pa_GetHostApiInfo'
>  >  pasound.c:(.text+0x379): undefined reference to `Pa_GetDeviceInfo'
>  >  pasound.c:(.text+0x38d): undefined reference to `Pa_GetDeviceCount'
>  >  pasound.c:(.text+0x3ab): undefined reference to `Pa_GetDeviceInfo'
>  >  pjproject-0.8.0/pjmedia/lib/libpjmedia-i686-pc-linux-gnu.a(pasound.o):
>  >  In function `pa_get_default_input_dev':
>  >  pasound.c:(.text+0x3ed): undefined reference to `Pa_GetHostApiCount'
>  >  pasound.c:(.text+0x404): undefined reference to `Pa_GetHostApiInfo'
>  >  pasound.c:(.text+0x419): undefined reference to `Pa_GetDeviceInfo'
>  >  pasound.c:(.text+0x42d): undefined reference to `Pa_GetDeviceCount'
>  >  pasound.c:(.text+0x44b): undefined reference to `Pa_GetDeviceInfo'
>  >  pjproject-0.8.0/pjmedia/lib/libpjmedia-i686-pc-linux-gnu.a(pasound.o):
>  >  In function `pjmedia_snd_init':
>  >  pasound.c:(.text+0x719): undefined reference to `PaUtil_SetDebugPrintFunction'
>  >  pasound.c:(.text+0x726): undefined reference to `Pa_Initialize'
>  >  pasound.c:(.text+0x77c): undefined reference to `Pa_GetHostApiCount'
>  >  pjproject-0.8.0/pjmedia/lib/libpjmedia-i686-pc-linux-gnu.a(pasound.o):
>  >  In function `pjmedia_snd_get_dev_info':
>  >  pasound.c:(.text+0x7ce): undefined reference to `Pa_GetDeviceInfo'
>  >  pjproject-0.8.0/pjmedia/lib/libpjmedia-i686-pc-linux-gnu.a(pasound.o):
>  >  In function `pjmedia_snd_stream_get_info':
>  >  pasound.c:(.text+0x894): undefined reference to `Pa_GetStreamInfo'
>  >  pasound.c:(.text+0x8ad): undefined reference to `Pa_GetStreamInfo'
>  >  pjproject-0.8.0/pjmedia/lib/libpjmedia-i686-pc-linux-gnu.a(pasound.o):
>  >  In function `pjmedia_snd_open_player':
>  >  pasound.c:(.text+0xa4b): undefined reference to `Pa_GetDeviceInfo'
>  >  pasound.c:(.text+0xb75): undefined reference to `Pa_GetHostApiInfo'
>  >  pasound.c:(.text+0xbc3): undefined reference to `Pa_OpenStream'
>  >  pasound.c:(.text+0xbd4): undefined reference to `Pa_GetStreamInfo'
>  >  pjproject-0.8.0/pjmedia/lib/libpjmedia-i686-pc-linux-gnu.a(pasound.o):
>  >  In function `pjmedia_snd_open_rec':
>  >  pasound.c:(.text+0xd08): undefined reference to `Pa_GetDeviceInfo'
>  >  pasound.c:(.text+0xe34): undefined reference to `Pa_GetHostApiInfo'
>  >  pasound.c:(.text+0xe82): undefined reference to `Pa_OpenStream'
>  >  pasound.c:(.text+0xe93): undefined reference to `Pa_GetStreamInfo'
>  >  pjproject-0.8.0/pjmedia/lib/libpjmedia-i686-pc-linux-gnu.a(pasound.o):
>  >  In function `pjmedia_snd_open':
>  >  pasound.c:(.text+0xfc5): undefined reference to `Pa_GetDeviceInfo'
>  >  pasound.c:(.text+0xfe0): undefined reference to `Pa_GetDeviceInfo'
>  >  pasound.c:(.text+0x110d): undefined reference to `Pa_GetHostApiInfo'
>  >  pasound.c:(.text+0x116c): undefined reference to `Pa_GetHostApiInfo'
>  >  pasound.c:(.text+0x11ad): undefined reference to `Pa_GetStreamInfo'
>  >  pasound.c:(.text+0x11ca): undefined reference to `Pa_GetStreamInfo'
>  >  pasound.c:(.text+0x126e): undefined reference to `Pa_OpenStream'
>  >  pasound.c:(.text+0x12b7): undefined reference to `Pa_OpenStream'
>  >  pasound.c:(.text+0x12cd): undefined reference to `Pa_CloseStream'
>  >  pasound.c:(.text+0x130b): undefined reference to `Pa_GetDeviceInfo'
>  >  pasound.c:(.text+0x136e): undefined reference to `Pa_OpenStream'
>  >  pjproject-0.8.0/pjmedia/lib/libpjmedia-i686-pc-linux-gnu.a(pasound.o):
>  >  In function `pjmedia_snd_get_dev_count':
>  >  pasound.c:(.text+0x485): undefined reference to `Pa_GetDeviceCount'
>  >  collect2: ld returned 1 exit status
>  >  make: *** [hello-world] Error 1
>  >
>  >
>  >  I think it's a library linking issue, but I can't get it work.
>  >
>  >  I've been browsing the archive, and found some similar cases, but
>  >  couldn't manage to solve it. Any help will be appreciated.
>  >
>  >  Thanks in advance!
>  >
>  >
>  >  PS: Sorry for that long mail.
>  >
>  >  --
>  >  Sa?l -- "Nunca subestimes el ancho de banda de un cami?n lleno de disketes."
>  >  ----------------------------------------------------------------
>  >  http://www.saghul.net/
>  >
>  >  _______________________________________________
>  >  Visit our blog: http://blog.pjsip.org
>  >
>  >  pjsip mailing list
>  >  pjsip at lists.pjsip.org
>  >  http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org
>  >
>
>  _______________________________________________
>  Visit our blog: http://blog.pjsip.org
>
>  pjsip mailing list
>  pjsip at lists.pjsip.org
>  http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org
>



-- 
Sa?l -- "Nunca subestimes el ancho de banda de un cami?n lleno de disketes."
----------------------------------------------------------------
http://www.saghul.net/



[Index of Archives]     [Asterisk Users]     [Asterisk App Development]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [Linux API]
  Powered by Linux