Taner Sener
2018-12-06 21:38:11 UTC
Hello,
I’m trying to compile git master with Android NDK r18b but having the
following errors. The same method works on the older NDK releases, so it
looks like something has changed in the new NDK r18b. Do you have any ideas
how to resolve it? Also I don’t need v4l2 actually, disabling the
compilation of libavdevice/v4l2.c will also help me but I guess it is not
possible.
I'm using the following steps to cross-compile ffmpeg:
cd $ANDROID_NDK_ROOT/build/tools
./make_standalone_toolchain.py --arch arm --api 21 --stl libc++
--install-dir $ANDROID_NDK_ROOT/toolchains/test-arm
./configure
--cross-prefix=$ANDROID_NDK_ROOT/toolchains/test-arm/bin/arm-linux-androideabi-
--sysroot=$ANDROID_NDK_ROOT/toolchains/test-arm/sysroot --arch=arm
--target-os=android
make
---------------------------------------------
...
libavdevice/v4l2.c:135:9: error: assigning to 'int (*)(int, unsigned long,
...)' from incompatible type
'<overloaded function type>'
SET_WRAPPERS();
^~~~~~~~~~~~~~
libavdevice/v4l2.c:121:17: note: expanded from macro 'SET_WRAPPERS'
s->ioctl_f = prefix ## ioctl; \
^ ~~~~~
/Users/taner/Library/Android/sdk/ndk-bundle/toolchains/test-arm/sysroot/usr/include/bits/ioctl.h:56:5:
note: candidate function
has type mismatch at 2nd parameter (expected 'unsigned long' but has
'unsigned int')
int ioctl(int __fd, unsigned __request, ...) __overloadable __enable_if(1,
"") __RENAME(ioctl);
^
/Users/taner/Library/Android/sdk/ndk-bundle/toolchains/test-arm/sysroot/usr/include/bits/ioctl.h:36:5:
note: candidate function
has type mismatch at 2nd parameter (expected 'unsigned long' but has
'int')
int ioctl(int __fd, int __request, ...);
^
1 error generated.
make: *** [libavdevice/v4l2.o] Error 1
Thanks
_______________________________________________
ffmpeg-user mailing list
ffmpeg-***@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-user
To unsubscribe, visit link above, or email
ffmpeg-user-***@ffmpeg.org with subject
I’m trying to compile git master with Android NDK r18b but having the
following errors. The same method works on the older NDK releases, so it
looks like something has changed in the new NDK r18b. Do you have any ideas
how to resolve it? Also I don’t need v4l2 actually, disabling the
compilation of libavdevice/v4l2.c will also help me but I guess it is not
possible.
I'm using the following steps to cross-compile ffmpeg:
cd $ANDROID_NDK_ROOT/build/tools
./make_standalone_toolchain.py --arch arm --api 21 --stl libc++
--install-dir $ANDROID_NDK_ROOT/toolchains/test-arm
./configure
--cross-prefix=$ANDROID_NDK_ROOT/toolchains/test-arm/bin/arm-linux-androideabi-
--sysroot=$ANDROID_NDK_ROOT/toolchains/test-arm/sysroot --arch=arm
--target-os=android
make
---------------------------------------------
...
libavdevice/v4l2.c:135:9: error: assigning to 'int (*)(int, unsigned long,
...)' from incompatible type
'<overloaded function type>'
SET_WRAPPERS();
^~~~~~~~~~~~~~
libavdevice/v4l2.c:121:17: note: expanded from macro 'SET_WRAPPERS'
s->ioctl_f = prefix ## ioctl; \
^ ~~~~~
/Users/taner/Library/Android/sdk/ndk-bundle/toolchains/test-arm/sysroot/usr/include/bits/ioctl.h:56:5:
note: candidate function
has type mismatch at 2nd parameter (expected 'unsigned long' but has
'unsigned int')
int ioctl(int __fd, unsigned __request, ...) __overloadable __enable_if(1,
"") __RENAME(ioctl);
^
/Users/taner/Library/Android/sdk/ndk-bundle/toolchains/test-arm/sysroot/usr/include/bits/ioctl.h:36:5:
note: candidate function
has type mismatch at 2nd parameter (expected 'unsigned long' but has
'int')
int ioctl(int __fd, int __request, ...);
^
1 error generated.
make: *** [libavdevice/v4l2.o] Error 1
Thanks
_______________________________________________
ffmpeg-user mailing list
ffmpeg-***@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-user
To unsubscribe, visit link above, or email
ffmpeg-user-***@ffmpeg.org with subject