It appears you aren't linking in the math library  (-lm)

On Mon, Jul 28, 2014 at 5:39 PM, fabien monnier <[email protected]>
wrote:

> Dear Boinc Dev community,
>
> I am actually using the makefile in the boinc-master/samples to build an
> application that i wrote with the boinc api for android.
>
> The application have only the boinc_init() and boinc_finish(0) directives.
>
> The source name is : picompute_thread_boinc.c
> This file include pthread.h, stdio.h, boinc_api.h, util.h, config.h,
> filesys.h, mfile.h
> I installed the android NDK and built the standalone toolchain r9
> I use a Makefile that I found in the sample folder of boinc package and
> adapted it.
>
> Make file :
>
> *PROGS = picompute_thread_boinc*
>
> *all: $(PROGS)*
>
> *clean:*
> * rm $(PROGS) *.o*
>
> *picompute_thread_boinc: picompute_thread_boinc.o
> $(BOINC_LIB_DIR)/libboinc.a $(BOINC_API_DIR)/libboinc_api.a*
> * $(CC) $(CFLAGS) $(LDFLAGS) -o picompute_thread_boinc
> picompute_thread_boinc.o $(BOINC_API_DIR)/libboinc_api.a
> $(BOINC_LIB_DIR)/libboinc.a $(STDCPPTC)*
>
>
> What there is in CFLAGS : --sysroot=$TCSYSROOT -DANDROID -DDECLARE_TIMEZONE
> -Wall -I$TCINCLUDES/include -O3 -fomit-frame-pointer -I$TCINCLUDES/include
> -I$BOINC_DIR -I$BOINC_LIB_DIR -I$BOINC_API_DIR -I$BOINC_ZIP_DIR
>
> Result of the make (actually the build.sh because build.sh is setting up
> the appropriate environment variable such as CC, CFLAG, etc... and exec
> make Makefile_android)
>
> arm-linux-androideabi-gcc --sysroot=/opt/android-r9-toolchain/sysroot
> -DANDROID -DDECLARE_TIMEZONE -Wall
> -I/opt/android-r9-toolchain/arm-linux-androideabi/include -O3
> -fomit-frame-pointer
> -I/opt/android-r9-toolchain/arm-linux-androideabi/include -Iboinc-master
> -Iboinc-master/lib -Iboinc-master/api -Iboinc-master/zip
> -L/opt/android-r9-toolchain/sysroot/usr/lib
> -L/opt/android-r9-toolchain/arm-linux-androideabi/lib -Lboinc-master
> -Lboinc-master/lib -Lboinc-master/api -Lboinc-master/zip -llog -o
> picompute_thread_boinc picompute_thread_boinc.o
> boinc-master/api/libboinc_api.a boinc-master/lib/libboinc.a
> /opt/android-r9-toolchain/arm-linux-androideabi/lib/libstdc++.a
>
> /opt/android-r9-toolchain/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld:
> boinc-master/lib/libboinc.a(libboinc_la-util.o): in function
> dday():util.cpp(.text+0x14c): error: undefined reference to 'fmod'
>
> /opt/android-r9-toolchain/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld:
> boinc-master/lib/libboinc.a(libboinc_la-util.o): in function
> boinc_sleep(double):util.cpp(.text+0x214): error: undefined reference to
> 'fmod'
>
> /opt/android-r9-toolchain/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld:
> boinc-master/lib/libboinc.a(libboinc_la-util.o): in function
> update_average(double, double, double, double, double&,
> double&):util.cpp(.text+0x39c): error: undefined reference to 'exp'
>
> /opt/android-r9-toolchain/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld:
> boinc-master/lib/libboinc.a(libboinc_la-util.o): in function
> rand_normal():util.cpp(.text+0x924): error: undefined reference to 'log'
>
> /opt/android-r9-toolchain/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld:
> boinc-master/lib/libboinc.a(libboinc_la-util.o): in function
> rand_normal():util.cpp(.text+0x934): error: undefined reference to 'sqrt'
>
> /opt/android-r9-toolchain/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld:
> boinc-master/lib/libboinc.a(libboinc_la-util.o): in function
> rand_normal():util.cpp(.text+0x968): error: undefined reference to 'sin'
>
> /opt/android-r9-toolchain/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld:
> boinc-master/lib/libboinc.a(libboinc_la-util.o): in function
> rand_normal():util.cpp(.text+0x98c): error: undefined reference to 'cos'
>
> /opt/android-r9-toolchain/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld:
> boinc-master/lib/libboinc.a(libboinc_la-opencl_boinc.o): in function
>
> OPENCL_DEVICE_PROP::get_opencl_driver_revision():opencl_boinc.cpp(.text+0x334):
> error: undefined reference to 'floor'
>
> /opt/android-r9-toolchain/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld:
> boinc-master/lib/libboinc.a(libboinc_la-str_util.o): in function
> ndays_to_string(double, int, char*):str_util.cpp(.text+0xa0): error:
> undefined reference to 'fmod'
>
> /opt/android-r9-toolchain/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld:
> boinc-master/lib/libboinc.a(libboinc_la-str_util.o): in function
> ndays_to_string(double, int, char*):str_util.cpp(.text+0xcc): error:
> undefined reference to 'fmod'
> collect2: ld returned 1 exit status
> make: *** [picompute_thread_boinc] Error 1
>
>
> Can someone help me to fix this issue to be able to build for android
> platforms ?
>
> Thank you so much for your help.
>
> --
> --
> Best regards,
> Fabien Monnier
> _______________________________________________
> boinc_dev mailing list
> [email protected]
> http://lists.ssl.berkeley.edu/mailman/listinfo/boinc_dev
> To unsubscribe, visit the above URL and
> (near bottom of page) enter your email address.
>
_______________________________________________
boinc_dev mailing list
[email protected]
http://lists.ssl.berkeley.edu/mailman/listinfo/boinc_dev
To unsubscribe, visit the above URL and
(near bottom of page) enter your email address.

Reply via email to