Problem z biblioteką pjSIP - czyli kompilacja ze źródeł
Ostatnio zmodyfikowano 2014-01-15 20:42
kubek3898 Temat założony przez niniejszego użytkownika |
Problem z biblioteką pjSIP - czyli kompilacja ze źródeł » 2014-01-15 14:11:39 Chciałem skompilować ze źródeł bibliotekę pjSIP pod system Android, korzystając z tego tutoriala -> http://trac.pjsip.org/repos/wiki/Getting-Started/AndroidNa moim Ubuntu 13.10 uruchomiłem terminal, przeszedłem do katalogu /pjsip i wykonałem komendę: ./configure-android Już na początku napotkałem problem. Terminal wyrzucił, że nie ma takiego pliku lub katalogu. Domyśliłem się, że to przez ścieżki bezwzględne, więc zmieniłem ./ na ../. Tym razem skrypt uruchomił się z takim logiem: configure-android: APP_PLATFORM not specified, using android-19 configure-android: TARGET_ABI not specified, using armeabi configure-android: calling ./configure with env vars: CC = /home/android/Downloads/android-ndk-r9c/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc CXX = /home/android/Downloads/android-ndk-r9c/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64/bin/arm-linux-androideabi-g++ CFLAGS = -I/home/android/Downloads/android-ndk-r9c/platforms/android-19/arch-arm/usr/include CXXFLAGS = -shared --sysroot=/home/android/Downloads/android-ndk-r9c/platforms/android-19/arch-arm LDFLAGS = -nostdlib -L/home/android/Downloads/android-ndk-r9c/platforms/android-19/arch-arm/usr/lib/ LIBS = -lc -lgcc AR = /home/android/Downloads/android-ndk-r9c/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64/bin/arm-linux-androideabi-ar RANLIB = /home/android/Downloads/android-ndk-r9c/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64/bin/arm-linux-androideabi-ranlib aconfigure: error: missing argument to --prefix android@android-VirtualBox:~/Downloads/trunk/pjsip$ ../configure-android --prefix=/usr configure-android: APP_PLATFORM not specified, using android-19 configure-android: TARGET_ABI not specified, using armeabi configure-android: calling ./configure with env vars: CC = /home/android/Downloads/android-ndk-r9c/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc CXX = /home/android/Downloads/android-ndk-r9c/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64/bin/arm-linux-androideabi-g++ CFLAGS = -I/home/android/Downloads/android-ndk-r9c/platforms/android-19/arch-arm/usr/include CXXFLAGS = -shared --sysroot=/home/android/Downloads/android-ndk-r9c/platforms/android-19/arch-arm LDFLAGS = -nostdlib -L/home/android/Downloads/android-ndk-r9c/platforms/android-19/arch-arm/usr/lib/ LIBS = -lc -lgcc AR = /home/android/Downloads/android-ndk-r9c/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64/bin/arm-linux-androideabi-ar RANLIB = /home/android/Downloads/android-ndk-r9c/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64/bin/arm-linux-androideabi-ranlib aconfigure: WARNING: if you wanted to set the --build type, don't use --host. If a cross compiler is detected then cross compile mode will be used checking build system type... x86_64-unknown-linux-gnu checking host system type... arm-unknown-linux-androideabi checking target system type... arm-unknown-linux-androideabi checking for arm-linux-androideabi-gcc... /home/android/Downloads/android-ndk-r9c/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64/bin/arm-linux-androideabi-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... yes checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether /home/android/Downloads/android-ndk-r9c/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc accepts -g... yes checking for /home/android/Downloads/android-ndk-r9c/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc option to accept ISO C89... none needed checking whether we are using the GNU C++ compiler... yes checking whether /home/android/Downloads/android-ndk-r9c/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64/bin/arm-linux-androideabi-g++ accepts -g... yes checking for arm-linux-androideabi-ranlib... /home/android/Downloads/android-ndk-r9c/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64/bin/arm-linux-androideabi-ranlib checking for arm-linux-androideabi-ar... /home/android/Downloads/android-ndk-r9c/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64/bin/arm-linux-androideabi-ar checking for pthread_create in -lpthread... no 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... no checking for puts in -lnsl... no checking for sin in -lm... yes checking for uuid_generate in -luuid... no checking for uuid_generate in -luuid... (cached) no Setting PJ_M_NAME to arm checking memory alignment... 4 bytes (default) checking how to run the C preprocessor... /home/android/Downloads/android-ndk-r9c/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64/bin/arm-linux-androideabi-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 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... no checking netinet/tcp.h usability... yes checking netinet/tcp.h presence... yes checking for netinet/tcp.h... yes checking ifaddrs.h usability... no checking ifaddrs.h presence... no checking for ifaddrs.h... no 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 arm-unknown-linux-androideabi 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() Building shared libraries... no checking sys/soundcard.h usability... no checking sys/soundcard.h presence... no checking for sys/soundcard.h... no 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 sound device backend... OpenSL ES Video is disabled 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 if SDL is disabled... yes Checking if ffmpeg is disabled... yes Checking if V4L2 is disabled... yes Skipping Intel IPP settings (not wanted) Checking if SSL support is disabled... yes Checking if OpenCORE AMR support is disabled... yes Checking if SILK support is disabled... yes 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
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'. Uruchomiłem więc komendę: make dep && make clean && make Tutaj jednak utknąłem. Co bym nie zrobił, terminal wypluwa: make *** brak reguł do wykonania obiektu 'dep'. Stop. make *** brak reguł do wykonania obiektu 'clean'. Stop. make *** nie podano obiektów i nie znaleziono Makefile. Stop Gdzieś wyczytałem, że najpierw trzeba uruchomić komendę 'make', a później dopiero sudo make install. Próbowałem i tak, również bez skutku. Proszę o pomoc. |
|
DejaVu |
» 2014-01-15 18:49:12 ./(...) to nie jest ścieżka bezwględna, tylko bieżący katalog roboczy.
../(...) to jest nadrzędny katalog względem bieżącego katalogu roboczego.
innymi słowy uruchamiasz skrypt ze złego katalogu roboczego i być może to rzutuje na kolejne błędy. |
|
kubek3898 Temat założony przez niniejszego użytkownika |
» 2014-01-15 20:09:11 No ale w manualu wyraźnie jest uruchamiana komenda cd pjsip/, a później wykonywany ./configure-android, podczas gdy on zdajduje się katalog wyżej. Chyba, że ja źle rozumuję tą instrukcję sam już nie wiem. |
|
DejaVu |
» 2014-01-15 20:42:29 No ale co to za problem sprawdzić, czy kompilacja zadziała prawidłowo w katalogu wyżej? Bo na razie robisz problem, że musisz wejść do innego katalogu aby sprawdzić 'czy kompilacja zadziała'. |
|
« 1 » |