Hi, I'm on armv6l-unknown-linux-gnueabihf (Raspberry Pi, Raspian) and at svn revision 4543. I have created pjlib/include/pj/config_site.h as indicated in README.txt and actiavted PJ_CONFIG_MINIMAL_SIZE: // Uncomment to get minimum footprint (suitable for 1-2 concurrent calls only) #define PJ_CONFIG_MINIMAL_SIZE // Uncomment to get maximum performance //#define PJ_CONFIG_MAXIMUM_SPEED #include <pj/config_site_sample.h> (Sorry for line wrapping. It's legal C/C++ in the actual file.) Running ?make distclean && ./configure && make?, I get make[2]: Leaving directory `/home/pi/pjsip/pjsip-apps/build' make[1]: Leaving directory `/home/pi/pjsip/pjsip-apps/build' checking build system type... armv6l-unknown-linux-gnueabihf checking host system type... armv6l-unknown-linux-gnueabihf checking target system type... armv6l-unknown-linux-gnueabihf checking for gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking for g++... g++ checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking for pthread_create in -lpthread... yes checking for puts in -lwsock32... no checking for puts in -lws2_32... no checking for puts in -lole32... no checking for puts in -lwinmm... no checking for puts in -lsocket... no checking for puts in -lrt... yes checking for puts in -lnsl... yes checking for uuid_generate in -luuid... no checking for uuid_generate in -luuid... (cached) no Setting PJ_M_NAME to armv6l checking memory alignment... 4 bytes (default) checking how to run the C preprocessor... gcc -E checking for grep that handles long lines and -e... /bin/grep checking for egrep... /bin/grep -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking whether byte ordering is bigendian... no Checking if floating point is disabled... no checking for fmod in -lm... yes checking arpa/inet.h usability... yes checking arpa/inet.h presence... yes checking for arpa/inet.h... yes checking assert.h usability... yes checking assert.h presence... yes checking for assert.h... yes checking ctype.h usability... yes checking ctype.h presence... yes checking for ctype.h... yes checking errno.h usability... yes checking errno.h presence... yes checking for errno.h... yes checking fcntl.h usability... yes checking fcntl.h presence... yes checking for fcntl.h... yes checking linux/socket.h usability... yes checking linux/socket.h presence... yes checking for linux/socket.h... yes checking limits.h usability... yes checking limits.h presence... yes checking for limits.h... yes checking malloc.h usability... yes checking malloc.h presence... yes checking for malloc.h... yes checking netdb.h usability... yes checking netdb.h presence... yes checking for netdb.h... yes checking netinet/in_systm.h usability... yes checking netinet/in_systm.h presence... yes checking for netinet/in_systm.h... yes checking netinet/in.h usability... yes checking netinet/in.h presence... yes checking for netinet/in.h... yes checking for netinet/ip.h... yes checking netinet/tcp.h usability... yes checking netinet/tcp.h presence... yes checking for netinet/tcp.h... yes checking ifaddrs.h usability... yes checking ifaddrs.h presence... yes checking for ifaddrs.h... yes checking for getifaddrs... yes checking semaphore.h usability... yes checking semaphore.h presence... yes checking for semaphore.h... yes checking setjmp.h usability... yes checking setjmp.h presence... yes checking for setjmp.h... yes checking stdarg.h usability... yes checking stdarg.h presence... yes checking for stdarg.h... yes checking stddef.h usability... yes checking stddef.h presence... yes checking for stddef.h... yes checking stdio.h usability... yes checking stdio.h presence... yes checking for stdio.h... yes checking for stdint.h... (cached) yes checking for stdlib.h... (cached) yes checking for string.h... (cached) yes checking sys/ioctl.h usability... yes checking sys/ioctl.h presence... yes checking for sys/ioctl.h... yes checking sys/select.h usability... yes checking sys/select.h presence... yes checking for sys/select.h... yes checking sys/socket.h usability... yes checking sys/socket.h presence... yes checking for sys/socket.h... yes checking sys/time.h usability... yes checking sys/time.h presence... yes checking for sys/time.h... yes checking sys/timeb.h usability... yes checking sys/timeb.h presence... yes checking for sys/timeb.h... yes checking for sys/types.h... (cached) yes checking sys/filio.h usability... no checking sys/filio.h presence... no checking for sys/filio.h... no checking sys/sockio.h usability... no checking sys/sockio.h presence... no checking for sys/sockio.h... no checking sys/utsname.h usability... yes checking sys/utsname.h presence... yes checking for sys/utsname.h... yes checking time.h usability... yes checking time.h presence... yes checking for time.h... yes checking for unistd.h... (cached) yes checking winsock.h usability... no checking winsock.h presence... no checking for winsock.h... no checking winsock2.h usability... no checking winsock2.h presence... no checking for winsock2.h... no checking for mswsock.h... no checking ws2tcpip.h usability... no checking ws2tcpip.h presence... no checking for ws2tcpip.h... no checking uuid/uuid.h usability... no checking uuid/uuid.h presence... no checking for uuid/uuid.h... no checking for net/if.h... yes Setting PJ_OS_NAME to armv6l-unknown-linux-gnueabihf Setting PJ_HAS_ERRNO_VAR to 1 Setting PJ_HAS_HIGH_RES_TIMER to 1 Setting PJ_HAS_MALLOC to 1 Setting PJ_NATIVE_STRING_IS_UNICODE to 0 Setting PJ_ATOMIC_VALUE_TYPE to long checking if inet_aton() is available... yes checking if inet_pton() is available... yes checking if inet_ntop() is available... yes checking if getaddrinfo() is available... yes checking if sockaddr_in has sin_len member... no checking if socklen_t is available... yes checking if SO_ERROR is available... yes checking if pthread_rwlock_t is available... yes checking if pthread_mutexattr_settype() is available... no checking if pthread_mutexattr_t has recursive member... no checking ioqueue backend... select() checking sys/soundcard.h usability... yes checking sys/soundcard.h presence... yes checking for sys/soundcard.h... yes checking linux/soundcard.h usability... yes checking linux/soundcard.h presence... yes checking for linux/soundcard.h... yes checking machine/soundcard.h usability... no checking machine/soundcard.h presence... no checking for machine/soundcard.h... no checking alsa/version.h usability... yes checking alsa/version.h presence... yes checking for alsa/version.h... yes Checking sound device backend... unix Checking if small filter is disabled... no Checking if large filter is disabled... no Checking if Speex AEC is disabled...no Checking if G.711 codec is disabled...no Checking if L16 codec is disabled...no Checking if GSM codec is disabled...no Checking if G.722 codec is disabled...no Checking if G.722.1 codec is disabled...no Checking if Speex codec is disabled...no Checking if iLBC codec is disabled...no Skipping libsamplerate detection Building libresample as shared library... no checking for sdl2-config... no checking for sdl-config... no checking SDL availability... not found checking for pkg-config... pkg-config checking ffmpeg packages... none detected (check the prefix)! ** Must specify package names on the command line Must specify package names on the command line checking for v4l2_open in -lv4l2... no Skipping Intel IPP settings (not wanted) checking for OpenSSL installations.. checking openssl/ssl.h usability... yes checking openssl/ssl.h presence... yes checking for openssl/ssl.h... yes checking for ERR_load_BIO_strings in -lcrypto... yes checking for SSL_library_init in -lssl... yes OpenSSL library found, SSL support enabled checking for OpenCORE AMR installations.. checking opencore-amrnb/interf_enc.h usability... no checking opencore-amrnb/interf_enc.h presence... no checking for opencore-amrnb/interf_enc.h... no checking for Encoder_Interface_init in -lopencore-amrnb... no checking vo-amrwbenc/enc_if.h usability... no checking vo-amrwbenc/enc_if.h presence... no checking for vo-amrwbenc/enc_if.h... no checking opencore-amrwb/dec_if.h usability... no checking opencore-amrwb/dec_if.h presence... no checking for opencore-amrwb/dec_if.h... no checking for D_IF_init in -lopencore-amrwb... no checking for E_IF_init in -lvo-amrwbenc... no checking for SILK installations.. checking SKP_Silk_SDK_API.h usability... no checking SKP_Silk_SDK_API.h presence... no checking for SKP_Silk_SDK_API.h... no checking for SKP_Silk_SDK_get_version in -lSKP_SILK_SDK... no checking if select() needs correct nfds... no (default) ** Decided that select() doesn't need correct nfds (please check) checking if pj_thread_create() should enforce stack size... no (default) checking if pj_thread_create() should allocate stack... no (default) ** Setting non-blocking recv() retval to EAGAIN (please check) ** Setting non-blocking connect() retval to EINPROGRESS (please check) aconfigure: creating ./config.status config.status: creating build.mak config.status: creating build/os-auto.mak config.status: creating build/cc-auto.mak config.status: creating pjlib/build/os-auto.mak config.status: creating pjlib-util/build/os-auto.mak config.status: creating pjmedia/build/os-auto.mak config.status: creating pjsip/build/os-auto.mak config.status: creating third_party/build/os-auto.mak config.status: creating third_party/build/portaudio/os-auto.mak config.status: creating pjlib/include/pj/compat/os_auto.h config.status: pjlib/include/pj/compat/os_auto.h is unchanged config.status: creating pjlib/include/pj/compat/m_auto.h config.status: pjlib/include/pj/compat/m_auto.h is unchanged config.status: creating pjmedia/include/pjmedia/config_auto.h config.status: pjmedia/include/pjmedia/config_auto.h is unchanged config.status: creating pjmedia/include/pjmedia-codec/config_auto.h config.status: pjmedia/include/pjmedia-codec/config_auto.h is unchanged config.status: creating pjsip/include/pjsip/sip_autoconf.h config.status: pjsip/include/pjsip/sip_autoconf.h is unchanged ? ? ? ? several warnings, nothing obviously critical, just unused variables and the like ? ? ? ? gcc -c -Wall -DPJ_AUTOCONF=1 -O2 -DPJ_IS_BIG_ENDIAN=0 -DPJ_IS_LITTLE_ENDIAN=1 -I../include -I../../pjlib/include -I../../pjlib-util/include \ -o output/pjnath-armv6l-unknown-linux-gnueabihf/ice_session.o \ ../src/pjnath/ice_session.c ../src/pjnath/ice_session.c: In function ?prune_checklist?: ../src/pjnath/ice_session.c:1057:8: warning: unused variable ?baddr? [-Wunused-variable] ../src/pjnath/ice_session.c: In function ?perform_check?: ../src/pjnath/ice_session.c:1758:5: warning: implicit declaration of function ?pj_log_push_indent? [-Wimplicit-function-declaration] ../src/pjnath/ice_session.c:1766:2: warning: implicit declaration of function ?pj_log_pop_indent? [-Wimplicit-function-declaration] ../src/pjnath/ice_session.c: In function ?handle_incoming_check?: ../src/pjnath/ice_session.c:2649:7: warning: unused variable ?raddr? [-Wunused-variable] ../src/pjnath/ice_session.c: In function ?on_stun_rx_indication?: ../src/pjnath/ice_session.c:2857:23: warning: variable ?sd? set but not used [-Wunused-but-set-variable] ../src/pjnath/ice_session.c: At top level: ../src/pjnath/ice_session.c:61:20: warning: ?role_names? defined but not used [-Wunused-variable] gcc -c -Wall -DPJ_AUTOCONF=1 -O2 -DPJ_IS_BIG_ENDIAN=0 -DPJ_IS_LITTLE_ENDIAN=1 -I../include -I../../pjlib/include -I../../pjlib-util/include \ -o output/pjnath-armv6l-unknown-linux-gnueabihf/ice_strans.o \ ../src/pjnath/ice_strans.c ../src/pjnath/ice_strans.c: In function ?create_comp?: ../src/pjnath/ice_strans.c:427:6: warning: implicit declaration of function ?pj_log_push_indent? [-Wimplicit-function-declaration] ../src/pjnath/ice_strans.c:436:3: warning: implicit declaration of function ?pj_log_pop_indent? [-Wimplicit-function-declaration] ../src/pjnath/ice_strans.c:481:8: warning: unused variable ?addrinfo? [-Wunused-variable] ../src/pjnath/ice_strans.c: In function ?pj_ice_strans_sendto?: ../src/pjnath/ice_strans.c:1164:16: warning: variable ?pkt_size? set but not used [-Wunused-but-set-variable] ../src/pjnath/ice_strans.c: In function ?on_ice_complete?: ../src/pjnath/ice_strans.c:1247:14: warning: variable ?msec? set but not used [-Wunused-but-set-variable] ../src/pjnath/ice_strans.c: In function ?stun_on_status?: ../src/pjnath/ice_strans.c:1527:15: warning: unused variable ?op_name? [-Wunused-variable] ../src/pjnath/ice_strans.c:1526:8: warning: unused variable ?ipaddr? [-Wunused-variable] ../src/pjnath/ice_strans.c: In function ?turn_on_state?: ../src/pjnath/ice_strans.c:1688:7: warning: unused variable ?ipaddr? [-Wunused-variable] ? ? ? gcc -o ../bin/pjnath-test-armv6l-unknown-linux-gnueabihf \ output/pjnath-test-armv6l-unknown-linux-gnueabihf/main.o output/pjnath-test-armv6l-unknown-linux-gnueabihf/ice_test.o output/pjnath-test-armv6l-unknown-linux-gnueabihf/stun.o output/pjnath-test-armv6l-unknown-linux-gnueabihf/sess_auth.o output/pjnath-test-armv6l-unknown-linux-gnueabihf/server.o output/pjnath-test-armv6l-unknown-linux-gnueabihf/concur_test.o output/pjnath-test-armv6l-unknown-linux-gnueabihf/stun_sock_test.o output/pjnath-test-armv6l-unknown-linux-gnueabihf/turn_sock_test.o output/pjnath-test-armv6l-unknown-linux-gnueabihf/test.o ../lib/libpjnath-armv6l-unknown-linux-gnueabihf.a ../../pjlib-util/lib/libpjlib-util-armv6l-unknown-linux-gnueabihf.a ../../pjlib/lib/libpj-armv6l-unknown-linux-gnueabihf.a -lm -lnsl -lrt -lpthread -lasound -lcrypto -lssl ../lib/libpjnath-armv6l-unknown-linux-gnueabihf.a(ice_session.o): In function `on_stun_rx_indication': ice_session.c:(.text+0x2f8): undefined reference to `pj_log_push_indent' ice_session.c:(.text+0x2fc): undefined reference to `pj_log_pop_indent' ../lib/libpjnath-armv6l-unknown-linux-gnueabihf.a(ice_session.o): In function `start_nominated_check': ice_session.c:(.text+0x658): undefined reference to `pj_log_push_indent' ice_session.c:(.text+0x798): undefined reference to `pj_log_pop_indent' ../lib/libpjnath-armv6l-unknown-linux-gnueabihf.a(ice_session.o): In function `perform_check': ice_session.c:(.text+0x850): undefined reference to `pj_log_push_indent' ice_session.c:(.text+0x954): undefined reference to `pj_log_pop_indent' ice_session.c:(.text+0x994): undefined reference to `pj_log_pop_indent' ../lib/libpjnath-armv6l-unknown-linux-gnueabihf.a(ice_session.o): In function `periodic_timer': ice_session.c:(.text+0xa0c): undefined reference to `pj_log_push_indent' ice_session.c:(.text+0xa80): undefined reference to `pj_log_pop_indent' ? etc. Christopher