libmicrohttpd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [libmicrohttpd] How to compile MHD for ARMv7?


From: silvioprog
Subject: Re: [libmicrohttpd] How to compile MHD for ARMv7?
Date: Sun, 19 Feb 2017 01:59:24 -0300

Done. In attachment (from 0.9.52).

On Fri, Feb 17, 2017 at 11:09 AM, silvioprog <address@hidden> wrote:
Yes, I can! :-)

I'm going to get it from the stable package 0.9.52 ...

On Fri, Feb 17, 2017 at 5:46 AM, Evgeny Grin <address@hidden> wrote:
Hi!

Could you provide a link to full configure.log?
May be some other fine tuning is required too,

--
Best Wishes,
Evgeny Grin

On 16.02.2017 9:03, silvioprog wrote:
> Oops, the full log of ./configure:
>
> $ ./configure --host=arm-linux-androideabi
> --target=arm-linux-androideabi --disable-httpschecking for a
> BSD-compatible install... /usr/bin/install -c
> checking whether build environment is sane... yes
> checking for arm-linux-androideabi-strip... arm-linux-androideabi-strip
> checking for a thread-safe mkdir -p... /bin/mkdir -p
> checking for gawk... gawk
> checking whether make sets $(MAKE)... yes
> checking whether make supports nested variables... yes
> checking for a sed that does not truncate output... /bin/sed
> checking whether NLS is requested... yes
> checking for msgfmt... /usr/bin/msgfmt
> checking for gmsgfmt... /usr/bin/msgfmt
> checking for xgettext... /usr/bin/xgettext
> checking for msgmerge... /usr/bin/msgmerge
> checking for style of include used by make... GNU
> checking for arm-linux-androideabi-gcc... 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 arm-linux-androideabi-gcc accepts -g... yes
> checking for arm-linux-androideabi-gcc option to accept ISO C89... none
> needed
> checking whether arm-linux-androideabi-gcc understands -c and -o
> together... yes
> checking dependency style of arm-linux-androideabi-gcc... gcc3
> checking build system type... x86_64-pc-linux-gnu
> checking host system type... arm-unknown-linux-androideabi
> checking for ld used by arm-linux-androideabi-gcc...
> /usr/arm-linux-androideabi/bin/ld
> checking if the linker (/usr/arm-linux-androideabi/bin/ld) is GNU ld... yes
> checking for shared library run path origin... done
> checking how to run the C preprocessor... arm-linux-androideabi-gcc -E
> checking for grep that handles long lines and -e... /bin/grep
> checking for egrep... /bin/grep -E
> checking for CFPreferencesCopyAppValue... no
> checking for CFLocaleCopyCurrent... no
> checking for GNU gettext in libc... no
> checking for iconv... no, consider installing GNU libiconv
> checking for GNU gettext in libintl... no
> checking whether to use NLS... no
> checking whether z/OS special settings are required... no
> checking for gawk... (cached) gawk
> checking whether ln -s works... yes
> checking whether make sets $(MAKE)... (cached) yes
> checking for arm-linux-androideabi-gcc option to accept ISO C99...
> -std=gnu99
> checking for arm-linux-androideabi-gcc -std=gnu99 option to accept ISO
> Standard C... (cached) -std=gnu99
> checking for presence of stdio.h... yes
> checking for presence of wchar.h... yes
> checking for presence of stdlib.h... yes
> checking for presence of string.h... yes
> checking for presence of strings.h... yes
> checking for presence of stdint.h... yes
> checking for presence of fcntl.h... yes
> checking for presence of sys/types.h... yes
> checking for presence of time.h... yes
> checking for presence of unistd.h... yes
> checking whether _XOPEN_SOURCE is already defined... no
> checking whether headers accept _XOPEN_SOURCE with value 700... yes
> checking whether _XOPEN_SOURCE with value 700 really enable
> POSIX.1-2008/SUSv4 features... no
> checking whether headers accept _XOPEN_SOURCE with value 600... yes
> checking whether _XOPEN_SOURCE with value 600 really enable
> POSIX.1-2001/SUSv3 features... yes
> checking whether _GNU_SOURCE is already defined... no
> checking whether headers accept _GNU_SOURCE... yes
> checking whether to try __BSD_VISIBLE macro... yes
> checking whether __BSD_VISIBLE is already defined... yes
> checking whether to try _DARWIN_C_SOURCE macro... no
> checking whether to try __EXTENSIONS__ macro... no
> checking whether to try _NETBSD_SOURCE macro... no
> checking whether to try _BSD_SOURCE macro... no
> checking whether to try _TANDEM_SOURCE macro... no
> checking whether to try _ALL_SOURCE macro... no
> checking for final set of defined symbols... _XOPEN_SOURCE=600 _GNU_SOURCE
> checking how to print strings... printf
> checking for a sed that does not truncate output... (cached) /bin/sed
> checking for fgrep... /bin/grep -F
> checking for ld used by arm-linux-androideabi-gcc -std=gnu99...
> /usr/arm-linux-androideabi/bin/ld
> checking if the linker (/usr/arm-linux-androideabi/bin/ld) is GNU ld... yes
> checking for BSD- or MS-compatible name lister (nm)...
> /usr/bin/arm-linux-androideabi-nm -B
> checking the name lister (/usr/bin/arm-linux-androideabi-nm -B)
> interface... BSD nm
> checking the maximum length of command line arguments... 1572864
> checking how to convert x86_64-pc-linux-gnu file names to
> arm-unknown-linux-androideabi format... func_convert_file_noop
> checking how to convert x86_64-pc-linux-gnu file names to toolchain
> format... func_convert_file_noop
> checking for /usr/arm-linux-androideabi/bin/ld option to reload object
> files... -r
> checking for arm-linux-androideabi-objdump... arm-linux-androideabi-objdump
> checking how to recognize dependent libraries... pass_all
> checking for arm-linux-androideabi-dlltool... no
> checking for dlltool... no
> checking how to associate runtime and link libraries... printf %s\n
> checking for arm-linux-androideabi-ar... arm-linux-androideabi-ar
> checking for archiver @FILE support... @
> checking for arm-linux-androideabi-strip... (cached)
> arm-linux-androideabi-strip
> checking for arm-linux-androideabi-ranlib... arm-linux-androideabi-ranlib
> checking command to parse /usr/bin/arm-linux-androideabi-nm -B output
> from arm-linux-androideabi-gcc -std=gnu99 object... ok
> checking for sysroot... no
> checking for a working dd... /bin/dd
> checking how to truncate binary pipes... /bin/dd bs=4096 count=1
> checking for arm-linux-androideabi-mt... no
> checking for mt... mt
> configure: WARNING: using cross tools not prefixed with host triplet
> checking if mt is a manifest tool... no
> 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 for dlfcn.h... yes
> checking for objdir... .libs
> checking if arm-linux-androideabi-gcc -std=gnu99 supports -fno-rtti
> -fno-exceptions... no
> checking for arm-linux-androideabi-gcc -std=gnu99 option to produce
> PIC... -fPIC -DPIC
> checking if arm-linux-androideabi-gcc -std=gnu99 PIC flag -fPIC -DPIC
> works... yes
> checking if arm-linux-androideabi-gcc -std=gnu99 static flag -static
> works... yes
> checking if arm-linux-androideabi-gcc -std=gnu99 supports -c -o
> file.o... yes
> checking if arm-linux-androideabi-gcc -std=gnu99 supports -c -o
> file.o... (cached) yes
> checking whether the arm-linux-androideabi-gcc -std=gnu99 linker
> (/usr/arm-linux-androideabi/bin/ld) supports shared libraries... yes
> checking whether -lc should be explicitly linked in... no
> checking dynamic linker characteristics... Android linker
> checking how to hardcode library paths into programs... immediate
> checking whether stripping libraries is possible... yes
> checking if libtool supports shared libraries... yes
> checking whether to build shared libraries... yes
> checking whether to build static libraries... yes
> checking for arm-linux-androideabi-windres... no
> checking for windres... no
> checking for _Bool... yes
> checking whether C compiler accepts -Werror=attributes... yes
> checking for function inline keywords suppoted by
> arm-linux-androideabi-gcc -std=gnu99... inline
> __attribute__((always_inline))
> checking for target host OS... Linux
> checking whether arm-linux-androideabi-gcc -std=gnu99 is Clang... no
> checking whether pthreads work with -pthread... yes
> checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE
> checking whether more special flags are required for pthreads... no
> checking for PTHREAD_PRIO_INHERIT... no
> checking for threading lib to use with libmicrohttpd... posix
> checking for pthread_np.h... no
> checking whether pthread_setname_np is declared... yes
> checking for pthread_setname_np(3) in NetBSD or OSF1 form... no
> checking for pthread_setname_np(3) in GNU/Linux form... yes
> checking whether to enable thread names... yes
> checking whether the linker accepts -fno-strict-aliasing... yes
> checking whether C compiler accepts -fno-strict-aliasing... yes
> checking whether byte ordering is bigendian... no
> checking for curl... yes
> checking for makeinfo... yes
> checking for poll.h... yes
> checking for poll... yes
> checking linux/version.h usability... yes
> checking linux/version.h presence... yes
> checking for linux/version.h... yes
> checking for Linux epoll(7) interface... yes
> checking for epoll_create1()... no
> checking for fcntl.h... yes
> checking for math.h... yes
> checking for errno.h... yes
> checking for limits.h... yes
> checking for stdio.h... yes
> checking for locale.h... yes
> checking for sys/stat.h... (cached) yes
> checking for sys/types.h... (cached) yes
> checking for sys/types.h... (cached) yes
> checking for sys/time.h... yes
> checking for sys/msg.h... no
> checking for time.h... yes
> checking for sys/mman.h... yes
> checking for search.h... yes
> checking for sys/ioctl.h... yes
> checking for sys/socket.h... yes
> checking for sys/select.h... yes
> checking for netdb.h... yes
> checking for netinet/in.h... yes
> checking for netinet/ip.h... yes
> checking for netinet/tcp.h... yes
> checking for arpa/inet.h... yes
> checking for endian.h... yes
> checking for machine/endian.h... no
> checking for sys/endian.h... yes
> checking for sys/param.h... yes
> checking for sys/machine.h... no
> checking for sys/byteorder.h... no
> checking for machine/param.h... no
> checking for sys/isa_defs.h... no
> checking for inttypes.h... (cached) yes
> checking for stddef.h... yes
> checking for unistd.h... (cached) yes
> checking for sockLib.h... no
> checking for inetLib.h... no
> checking for net/if.h... yes
> checking for rand... no
> checking for random... no
> checking for struct sockaddr_in.sin_len... no
> checking for sys/eventfd.h... yes
> checking whether eventfd(2) is usable... yes
> checking for accept4... no
> checking for gmtime_r... yes
> checking for memmem... yes
> checking for snprintf... yes
> checking whether gmtime_s is declared... no
> checking whether SOCK_NONBLOCK is declared... no
> checking for library containing clock_gettime... none required
> checking for clock_get_time... no
> checking for gethrtime... no
> checking for IPv6... yes
> checking whether the linker accepts -fvisibility=hidden... yes
> checking whether C compiler accepts -fvisibility=hidden... yes
> checking for gawk... (cached) gawk
> checking for curl-config... /usr/bin/curl-config
> checking for the version of libcurl... 7.47.0
> checking for libcurl >= version 7.16.4... yes
> checking whether libcurl is usable... no
> checking for magic_open in -lmagic... no
> checking for special C compiler options needed for large files... no
> checking for _FILE_OFFSET_BITS value needed for large files... unknown
> checking for _LARGE_FILES value needed for large files... unknown
> checking for _LARGEFILE_SOURCE value needed for large files... no
> checking for _lseeki64... no
> checking for lseek64... yes
> checking for sendfile64... no
> checking whether to generate error messages... yes
> checking whether to enable postprocessor... yes
> checking for zzuf... no
> checking for socat... no
> checking for arm-linux-androideabi-libgcrypt-config... no
> checking for libgcrypt-config... /usr/bin/libgcrypt-config
> checking for LIBGCRYPT - version >= 1.2.2... yes (1.6.5)
> configure: WARNING:
> ***
> *** The config script /usr/bin/libgcrypt-config was
> *** built for x86_64-pc-linux-gnu and thus may not match the
> *** used host arm-unknown-linux-androideabi.
> *** You may want to use the configure option --with-libgcrypt-prefix
> *** to specify a matching config script.
> ***
> checking for gcrypt.h... no
> checking how to find GnuTLS library... automatically
> checking for arm-linux-androideabi-pkg-config... no
> checking for pkg-config... /usr/bin/pkg-config
> checking pkg-config is at least version 0.9.0... yes
> checking for GNUTLS... yes
> checking whether GnuTLS is usable... no
> configure: WARNING: pkg-config reports that GnuTLS is present, but
> GnuTLS can't be used
> checking whether to support HTTPS... no (disabled)
> checking whether to support HTTP basic authentication... yes
> checking whether to support HTTP digest authentication... yes
> checking whether to compile with support for code coverage analysis... no
> checking the number of available CPUs... 8
> checking that generated files are newer than configure... done
> configure: creating ./config.status
> config.status: creating src/microhttpd/microhttpd_dll_res.rc
> config.status: creating libmicrohttpd.pc
> config.status: creating w32/common/microhttpd_dll_res_vc.rc
> config.status: creating Makefile
> config.status: creating contrib/Makefile
> config.status: creating doc/Makefile
> config.status: creating doc/doxygen/Makefile
> config.status: creating doc/examples/Makefile
> config.status: creating m4/Makefile
> config.status: creating po/Makefile.in
> config.status: creating src/Makefile
> config.status: creating src/include/Makefile
> config.status: creating src/microhttpd/Makefile
> config.status: creating src/examples/Makefile
> config.status: creating src/testcurl/Makefile
> config.status: creating src/testcurl/https/Makefile
> config.status: creating src/testzzuf/Makefile
> config.status: creating MHD_config.h
> config.status: MHD_config.h is unchanged
> config.status: executing po-directories commands
> config.status: creating po/POTFILES
> config.status: creating po/Makefile
> config.status: executing depfiles commands
> config.status: executing libtool commands
> configure: libmicrohttpd 0.9.52 Configuration Summary:
>   Cross-compiling:   yes
>   Operating System:  linux-androideabi
>   Threading lib:     posix
>   Use thread names:  yes
>   Inter-thread comm: eventfd
>   libcurl (testing): no, many unit tests will not run
>   Target directory:  /usr/local
>   Messages:          yes
>   Basic auth.:       yes
>   Digest auth.:      yes
>   Postproc:          yes
>   HTTPS support:     no (disabled)
>   poll support:      yes
>   epoll support:     yes
>   build docs:        yes
>   build examples:    yes
>
> configure:
>   License         :  LGPL or eCos
>
> On Thu, Feb 16, 2017 at 2:42 AM, silvioprog <address@hidden
> <mailto:address@hidden>> wrote:
>
>     Hello masters,
>
>     I'm developing an embedded HTTP server for ARM using MHD as HTTP
>     core library, however, I couldn't compile it as static library in my
>     Xubuntu. Below all steps I've tried:
>
>     *Configuration:*
>
>     configure: libmicrohttpd 0.9.52 Configuration Summary:
>       Cross-compiling:   yes
>       Operating System:  linux-androideabi
>       Threading lib:     posix
>       Use thread names:  yes
>       Inter-thread comm: eventfd
>       libcurl (testing): no, many unit tests will not run
>       Target directory:  /usr/local
>       Messages:          yes
>       Basic auth.:       yes
>       Digest auth.:      yes
>       Postproc:          yes
>       HTTPS support:     no (disabled)
>       poll support:      yes
>       epoll support:     yes
>       build docs:        yes
>       build examples:    yes
>
>     configure:
>       License         :  LGPL or eCos
>
>     *Step 1:*
>
>     ./configure --host=arm-linux-androideabi --enable-shared=no
>     --enable-static=yes --disable-https
>     make CFLAGS="-Wno-sign-compare -Wno-unused-parameter"
>
>     /(the CFLAGS idea above was extracted from:
>     https://android.googlesource.com/platform/external/libmicrohttpd/+/3b641bc5341bd35a4b798224d4c637c65d78ada0/Android.mk
>     <https://android.googlesource.com/platform/external/libmicrohttpd/+/3b641bc5341bd35a4b798224d4c637c65d78ada0/Android.mk>)/
>
>     Error:FAILURE: Build failed with an exception.
>
>     * What went wrong:
>     Execution failed for task ':app:externalNativeBuildArm7Debug'.
>     > Build command failed.
>       Error while executing
>     '/home/silvioprog/Android/Sdk/cmake/3.6.3155560/bin/cmake' with
>     arguments {--build
>     /home/silvioprog/Android/Projects/MyApplication/app/.externalNativeBuild/cmake/arm7Debug/armeabi-v7a
>     --target mhd}
>       [1/1] Linking C shared library
>     /home/silvioprog/Android/Projects/MyApplication/app/build/intermediates/cmake/arm7/debug/obj/armeabi-v7a/libmhd.so
>       FAILED: : &&
>     /home/silvioprog/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/clang
>      -target armv7-none-linux-androideabi -gcc-toolchain
>     /home/silvioprog/Android/Sdk/ndk-bundle/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64
>     --sysroot=/home/silvioprog/Android/Sdk/ndk-bundle/platforms/android-15/arch-arm
>     -fPIC -g -DANDROID -ffunction-sections -funwind-tables
>     -fstack-protector-strong -no-canonical-prefixes -march=armv7-a
>     -mfloat-abi=softfp -mfpu=vfpv3-d16 -fno-integrated-as -mthumb
>     -Wa,--noexecstack -Wformat -Werror=format-security -g -DANDROID
>     -ffunction-sections -funwind-tables -fstack-protector-strong
>     -no-canonical-prefixes -march=armv7-a -mfloat-abi=softfp
>     -mfpu=vfpv3-d16 -fno-integrated-as -mthumb -Wa,--noexecstack
>     -Wformat -Werror=format-security  -O0 -fno-limit-debug-info -O0
>     -fno-limit-debug-info  -Wl,--build-id -Wl,--warn-shared-textrel
>     -Wl,--fatal-warnings -Wl,--fix-cortex-a8 -Wl,--no-undefined
>     -Wl,-z,noexecstack -Qunused-arguments -Wl,-z,relro -Wl,-z,now
>     -Wl,--build-id -Wl,--warn-shared-textrel -Wl,--fatal-warnings
>     -Wl,--fix-cortex-a8 -Wl,--no-undefined -Wl,-z,noexecstack
>     -Qunused-arguments -Wl,-z,relro -Wl,-z,now -shared
>     -Wl,-soname,libmhd.so -o
>     /home/silvioprog/Android/Projects/MyApplication/app/build/intermediates/cmake/arm7/debug/obj/armeabi-v7a/libmhd.so
>     CMakeFiles/mhd.dir/src/mhd.c.o
>      /home/silvioprog/Android/Projects/MyApplication/app/src/main/jniLibs/armeabi-v7a/libmicrohttpd.a
>     -lm && :
>
>     /home/silvioprog/Android/Projects/MyApplication/app/src/main/jniLibs/armeabi-v7a/libmicrohttpd.a(libmicrohttpd_la-daemon.o):daemon.c:function
>     MHD_ip_limit_add: error: undefined reference to 'tsearch'
>
>     /home/silvioprog/Android/Projects/MyApplication/app/src/main/jniLibs/armeabi-v7a/libmicrohttpd.a(libmicrohttpd_la-daemon.o):daemon.c:function
>     MHD_ip_limit_del: error: undefined reference to 'tfind'
>
>     /home/silvioprog/Android/Projects/MyApplication/app/src/main/jniLibs/armeabi-v7a/libmicrohttpd.a(libmicrohttpd_la-daemon.o):daemon.c:function
>     MHD_ip_limit_del: error: undefined reference to 'tdelete'
>       clang: error: linker command failed with exit code 1 (use -v to
>     see invocation)
>       ninja: build stopped: subcommand failed.
>
>     *Step 2:*
>
>     ./configure --host=arm-linux-androideabi --enable-shared=no
>     --enable-static=yes --disable-https
>     make
>
>     Error:FAILURE: Build failed with an exception.
>
>     * What went wrong:
>     Execution failed for task ':app:externalNativeBuildArm7Debug'.
>     > Build command failed.
>       Error while executing
>     '/home/silvioprog/Android/Sdk/cmake/3.6.3155560/bin/cmake' with
>     arguments {--build
>     /home/silvioprog/Android/Projects/MyApplication/app/.externalNativeBuild/cmake/arm7Debug/armeabi-v7a
>     --target mhd}
>       [1/1] Linking C shared library
>     /home/silvioprog/Android/Projects/MyApplication/app/build/intermediates/cmake/arm7/debug/obj/armeabi-v7a/libmhd.so
>       FAILED: : &&
>     /home/silvioprog/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/clang
>      -target armv7-none-linux-androideabi -gcc-toolchain
>     /home/silvioprog/Android/Sdk/ndk-bundle/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64
>     --sysroot=/home/silvioprog/Android/Sdk/ndk-bundle/platforms/android-15/arch-arm
>     -fPIC -g -DANDROID -ffunction-sections -funwind-tables
>     -fstack-protector-strong -no-canonical-prefixes -march=armv7-a
>     -mfloat-abi=softfp -mfpu=vfpv3-d16 -fno-integrated-as -mthumb
>     -Wa,--noexecstack -Wformat -Werror=format-security -g -DANDROID
>     -ffunction-sections -funwind-tables -fstack-protector-strong
>     -no-canonical-prefixes -march=armv7-a -mfloat-abi=softfp
>     -mfpu=vfpv3-d16 -fno-integrated-as -mthumb -Wa,--noexecstack
>     -Wformat -Werror=format-security  -O0 -fno-limit-debug-info -O0
>     -fno-limit-debug-info  -Wl,--build-id -Wl,--warn-shared-textrel
>     -Wl,--fatal-warnings -Wl,--fix-cortex-a8 -Wl,--no-undefined
>     -Wl,-z,noexecstack -Qunused-arguments -Wl,-z,relro -Wl,-z,now
>     -Wl,--build-id -Wl,--warn-shared-textrel -Wl,--fatal-warnings
>     -Wl,--fix-cortex-a8 -Wl,--no-undefined -Wl,-z,noexecstack
>     -Qunused-arguments -Wl,-z,relro -Wl,-z,now -shared
>     -Wl,-soname,libmhd.so -o
>     /home/silvioprog/Android/Projects/MyApplication/app/build/intermediates/cmake/arm7/debug/obj/armeabi-v7a/libmhd.so
>     CMakeFiles/mhd.dir/src/mhd.c.o
>      /home/silvioprog/Android/Projects/MyApplication/app/src/main/jniLibs/armeabi-v7a/libmicrohttpd.a
>     -lm && :
>       daemon.c:375: error: undefined reference to 'tfind'
>       daemon.c:392: error: undefined reference to 'tdelete'
>       daemon.c:317: error: undefined reference to 'tsearch'
>       clang: error: linker command failed with exit code 1 (use -v to
>     see invocation)
>       ninja: build stopped: subcommand failed.
>
>     *Step 3:*
>
>     ./configure --host=arm-linux-androideabi --enable-shared=no
>     --enable-static=yes --disable-https --disable-curl
>     make CC=arm-linux-androideabi-gcc LD=arm-linux-androideabi-ld
>
>     /(inspired by https://gnunet.org/mhd-on-openwrt
>     <https://gnunet.org/mhd-on-openwrt>)/
>
>     Error:FAILURE: Build failed with an exception.
>
>     * What went wrong:
>     Execution failed for task ':app:externalNativeBuildArm7Debug'.
>     > Build command failed.
>       Error while executing
>     '/home/silvioprog/Android/Sdk/cmake/3.6.3155560/bin/cmake' with
>     arguments {--build
>     /home/silvioprog/Android/Projects/MyApplication/app/.externalNativeBuild/cmake/arm7Debug/armeabi-v7a
>     --target mhd}
>       [1/1] Linking C shared library
>     /home/silvioprog/Android/Projects/MyApplication/app/build/intermediates/cmake/arm7/debug/obj/armeabi-v7a/libmhd.so
>       FAILED: : &&
>     /home/silvioprog/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/clang
>      -target armv7-none-linux-androideabi -gcc-toolchain
>     /home/silvioprog/Android/Sdk/ndk-bundle/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64
>     --sysroot=/home/silvioprog/Android/Sdk/ndk-bundle/platforms/android-15/arch-arm
>     -fPIC -g -DANDROID -ffunction-sections -funwind-tables
>     -fstack-protector-strong -no-canonical-prefixes -march=armv7-a
>     -mfloat-abi=softfp -mfpu=vfpv3-d16 -fno-integrated-as -mthumb
>     -Wa,--noexecstack -Wformat -Werror=format-security -g -DANDROID
>     -ffunction-sections -funwind-tables -fstack-protector-strong
>     -no-canonical-prefixes -march=armv7-a -mfloat-abi=softfp
>     -mfpu=vfpv3-d16 -fno-integrated-as -mthumb -Wa,--noexecstack
>     -Wformat -Werror=format-security  -O0 -fno-limit-debug-info -O0
>     -fno-limit-debug-info  -Wl,--build-id -Wl,--warn-shared-textrel
>     -Wl,--fatal-warnings -Wl,--fix-cortex-a8 -Wl,--no-undefined
>     -Wl,-z,noexecstack -Qunused-arguments -Wl,-z,relro -Wl,-z,now
>     -Wl,--build-id -Wl,--warn-shared-textrel -Wl,--fatal-warnings
>     -Wl,--fix-cortex-a8 -Wl,--no-undefined -Wl,-z,noexecstack
>     -Qunused-arguments -Wl,-z,relro -Wl,-z,now -shared
>     -Wl,-soname,libmhd.so -o
>     /home/silvioprog/Android/Projects/MyApplication/app/build/intermediates/cmake/arm7/debug/obj/armeabi-v7a/libmhd.so
>     CMakeFiles/mhd.dir/src/mhd.c.o
>      /home/silvioprog/Android/Projects/MyApplication/app/src/main/jniLibs/armeabi-v7a/libmicrohttpd.a
>     -lm && :
>       daemon.c:375: error: undefined reference to 'tfind'
>       daemon.c:392: error: undefined reference to 'tdelete'
>       daemon.c:317: error: undefined reference to 'tsearch'
>       clang: error: linker command failed with exit code 1 (use -v to
>     see invocation)
>       ninja: build stopped: subcommand failed.
>
>     *Step 4:*
>
>     Downloaded the package
>     "https://archlinuxarm.org/packages/arm/libmicrohttpd
>     <https://archlinuxarm.org/packages/arm/libmicrohttpd>", but
>     unfortunately it distribute only the shared library that isn't
>     compatible with my ARM version. :-/
>
>     So, what are the tricks to compile MHD for ARM? :-)
>
>     Thank you!
>
>     /(I successfully compiled libcurl using this steps:
>     https://github.com/gcesarmza/curl-android-ios
>     <https://github.com/gcesarmza/curl-android-ios>, it would by nice a
>     script like this for MHD :-) )/
>
>     My environment:
>
>     *$ lsb_release -a*
>     No LSB modules are available.
>     Distributor ID:Ubuntu
>     Description:Ubuntu 16.04.2 LTS
>     Release:16.04
>     Codename:xenial
>
>     *$ arm-linux-androideabi-gcc -v*
>     Using built-in specs.
>     COLLECT_GCC=arm-linux-androideabi-gcc
>     COLLECT_LTO_WRAPPER=/usr/lib/gcc/arm-linux-androideabi/4.7.4/lto-wrapper
>     Target: arm-linux-androideabi
>     Configured with: ../src/configure --prefix=/usr
>     --libexecdir=/usr/lib --build=x86_64-linux-gnu
>     --host=x86_64-linux-gnu --target=arm-linux-androideabi
>     --with-build-sysroot=/build/gcc-arm-linux-androideabi-LAi2yM/gcc-arm-linux-androideabi-0.20130705.1/sys-root
>     --disable-multilib --with-gnu-as --with-gnu-ld
>     --enable-languages=c,c++ --disable-ppl-version-check
>     --disable-cloog-version-check --enable-cloog-backend=ppl
>     --disable-libssp --disable-nls --disable-libmudflap --disable-shared
>     --disable-sjlj-exceptions --disable-libquadmath --disable-libitm
>     --disable-libatomic --with-float=soft --with-fpu=vfp
>     --with-arch=armv5te --enable-target-optspace --disable-docs
>     --disable-nls --enable-threads --enable-tls --enable-libgomp
>     --disable-libitm --disable-libatomic --disable-libstdc__-v3
>     Thread model: posix
>     gcc version 4.7.4 (Linaro GCC 4.7-2014.04-1~dev)
>
>     *$ adb shell cat /proc/cpuinfo*
>     Processor: ARMv7 Processor rev 3 (v7l)
>     processor: 0
>     BogoMIPS: 38.40
>
>     processor: 1
>     BogoMIPS: 38.40
>
>     processor: 2
>     BogoMIPS: 38.40
>
>     processor: 3
>     BogoMIPS: 38.40
>
>     Features: swp half thumb fastmult vfp edsp neon vfpv3 tls vfpv4
>     idiva idivt
>     CPU implementer: 0x41
>     CPU architecture: 7
>     CPU variant: 0x0
>     CPU part: 0xc07
>     CPU revision: 3
>
>     Hardware: Qualcomm MSM8226
>     Revision: 0006
>     Serial: 0000000000000000

--
Silvio Clécio



--
Silvio Clécio

Attachment: config.log.tar.gz
Description: GNU Zip compressed data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]