shadowsocks-libev icon indicating copy to clipboard operation
shadowsocks-libev copied to clipboard

Compile error during cross-compiling for android

Open amir28 opened this issue 3 years ago • 2 comments

What version of shadowsocks-libev are you using?

shadowsocks-libev-3.3.5.tar.gz from release section

What operating system are you using?

ZorinOS(Ubuntu 20.04)

What did you do?

Installed aarch64 toolchain from NDK and compile everything library needed and installed them in /opt/Android. Then I run this commend in root of source code:

$ ./configure --host=aarch64-linux-android --target=aarch64-linux-android --prefix=/opt/Android --with-pcre=/opt/Android
$ # It succeeds without any error
$ make -j3
...
make  all-recursive
make[1]: Entering directory '/mnt/ArchSSD/home/amir/Logs/TWRP/shadowsocks-libev-3.3.5'
Making all in libcork
make[2]: Entering directory '/mnt/ArchSSD/home/amir/Logs/TWRP/shadowsocks-libev-3.3.5/libcork'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/mnt/ArchSSD/home/amir/Logs/TWRP/shadowsocks-libev-3.3.5/libcork'
Making all in libipset
make[2]: Entering directory '/mnt/ArchSSD/home/amir/Logs/TWRP/shadowsocks-libev-3.3.5/libipset'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/mnt/ArchSSD/home/amir/Logs/TWRP/shadowsocks-libev-3.3.5/libipset'
Making all in libbloom
make[2]: Entering directory '/mnt/ArchSSD/home/amir/Logs/TWRP/shadowsocks-libev-3.3.5/libbloom'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/mnt/ArchSSD/home/amir/Logs/TWRP/shadowsocks-libev-3.3.5/libbloom'
Making all in src
make[2]: Entering directory '/mnt/ArchSSD/home/amir/Logs/TWRP/shadowsocks-libev-3.3.5/src'
  CC       libshadowsocks_libev_la-local.lo
  CC       libshadowsocks_libev_la-cache.lo
  CC       libshadowsocks_libev_la-netutils.lo
local.c:1983:5: error: implicit declaration of function 'USE_LOGFILE' is invalid in C99 [-Werror,-Wimplicit-function-declaration]
    USE_LOGFILE(log);
    ^
1 error generated.
make[2]: *** [Makefile:845: libshadowsocks_libev_la-local.lo] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: Leaving directory '/mnt/ArchSSD/home/amir/Logs/TWRP/shadowsocks-libev-3.3.5/src'
make[1]: *** [Makefile:480: all-recursive] Error 1
make[1]: Leaving directory '/mnt/ArchSSD/home/amir/Logs/TWRP/shadowsocks-libev-3.3.5'
make: *** [Makefile:389: all] Error 2

thankyou

amir28 avatar Jan 10 '22 17:01 amir28

I have been using the rust version of Shadowsocks on Android and it has been working very well. Perhaps that an option for you.

brianwoo avatar Apr 02 '22 01:04 brianwoo

先更新sslibev依赖的子模块再编译

dev4u avatar Apr 02 '22 12:04 dev4u