Reputation: 174
I'm having trouble compiling pjsip on windows trough cygwin. I tried to use android branc of pjsip form http://svn.pjsip.org/repos/pjproject/branches/projects/android/ and Android NDK r8c for windows.
This is output when i try to configure pjsip.
$ ./configure-android
configure-android: APP_PLATFORM not specified, using android-14
configure-android: TARGET_ABI not specified, using armeabi
configure-android: calling ./configure with env vars:
CC = /ndk/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows/bin/arm-linux-androideabi-gcc
CXX = /ndk/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows/bin/arm-linux-androideabi-g++
CFLAGS = -I/ndk/platforms/android-14/arch-arm/usr/include
CXXFLAGS = -shared --sysroot=/ndk/platforms/android-14/arch-arm
LDFLAGS = -nostdlib -L/ndk/platforms/android-14/arch-arm/usr/lib/
LIBS = -lc -lgcc
checking build system type... i686-pc-cygwin
checking host system type... arm-unknown-linux-androideabi
checking target system type... arm-unknown-linux-androideabi
checking for arm-linux-androideabi-gcc... /ndk/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows/bin/arm-linux-androideabi-gcc
checking whether the C compiler works... no
aconfigure: error: in `/pjsip-android':
aconfigure: error: C compiler cannot create executables
See `config.log' for more details
This is excerpt from config.log
aconfigure:2490: result: /ndk/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows/bin/arm-linux-androideabi-gcc
aconfigure:2759: checking for C compiler version
aconfigure:2768: c:\Development\cygwin\ndk\toolchains\arm-linux-androideabi-4.4.3\prebuilt\windows\bin\arm-linux-androideabi-gcc.exe --version >&5
./aconfigure: line 2770: /ndk/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows/bin/arm-linux-androideabi-gcc: Permission denied
aconfigure:2779: $? = 126
aconfigure:2768: c:\Development\cygwin\ndk\toolchains\arm-linux-androideabi-4.4.3\prebuilt\windows\bin\arm-linux-androideabi-gcc.exe -v >&5
./aconfigure: line 2770: /ndk/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows/bin/arm-linux-androideabi-gcc: Permission denied
aconfigure:2779: $? = 126
aconfigure:2768: c:\Development\cygwin\ndk\toolchains\arm-linux-androideabi-4.4.3\prebuilt\windows\bin\arm-linux-androideabi-gcc.exe -V >&5
./aconfigure: line 2770: /ndk/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows/bin/arm-linux-androideabi-gcc: Permission denied
aconfigure:2779: $? = 126
aconfigure:2768: c:\Development\cygwin\ndk\toolchains\arm-linux-androideabi-4.4.3\prebuilt\windows\bin\arm-linux-androideabi-gcc.exe -qversion >&5
./aconfigure: line 2770: /ndk/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows/bin/arm-linux-androideabi-gcc: Permission denied
aconfigure:2779: $? = 126
aconfigure:2799: checking whether the C compiler works
aconfigure:2821: /ndk/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows/bin/arm-linux-androideabi-gcc -I/ndk/platforms/android-14/arch-arm/usr/include -I/ndk/platforms/android-14/arch-arm/usr/include -nostdlib -L/ndk/platforms/android-14/arch-arm/usr/lib/ conftest.c -lc -lgcc >&5
./aconfigure: line 2823: /ndk/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows/bin/arm-linux-androideabi-gcc: Permission denied
aconfigure:2825: $? = 126
aconfigure:2863: result: no
Can anyone please tell how can I fix this....
Upvotes: 3
Views: 2283
Reputation: 1
If you look at config.log you'll see something like this:
aconfigure:2841: /cygdrive/c/android-ndk-r9/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows/bin/arm-linux-androideabi-gcc -I/cygdrive/c/android-ndk-r9/platforms/android-18/arch-arm/usr/include -I/cygdrive/c/android-ndk-r9/platforms/android-18/arch-arm/usr/include -nostdlib -L/cygdrive/c/android-ndk-r9/platforms/android-18/arch-arm/usr/lib/ conftest.c -lc -lgcc >&5
C:/android-ndk-r9/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows/bin/../lib/gcc/arm-linux-androideabi/4.4.3/../../../../arm-linux-androideabi/bin/ld.exe: cannot find -lc
The NDK's ld.exe is looking for libc (which is in arch-arm/usr/lib/) but it doesn't like cygwin paths. Change in configure-android the line
export LDFLAGS="${LDFLAGS} -nostdlib -L${ANDROID_SYSROOT}/usr/lib/"
to something like this:
export LDFLAGS="${LDFLAGS} -nostdlib -Lc:/android-ndk-r9/platforms/android-18/arch-arm/usr/lib/"
Upvotes: 0
Reputation: 174
I managed to get past that error,but still didn't manage to compile pjsip. I switched to linux, where all works as it should....
Upvotes: 0
Reputation: 910
Make sure you launch Cygwin As an Administrator on Windows, it made me struggle quite a bit when not doing so ^^
Upvotes: 1