I have managed to compile golang OpenCL on ubuntu saucy stable Nexus 4. I have a linker error I don't know how to get rid of: undefined reference to `__libc_csu_fini' undefined reference to `__libc_csu_init'
Any suggestions to fix this? Thank you. Cheers, David Marceau Here are the noisy details: apt-get install golang wget http://adequatech.ca/gostuff.tar cd /home/phablet tar xvf gostuff.tar # these are already done in the tar # go get code.google.com/p/goncurses # go get github.com/tones111/raw # go get github.com/tones111/go-opencl/cl export GOPATH=/home/phablet/gostuff cd /usr/include ln -s /home/phablet/gostuff/src/github.com/tones111/go-opencl/cl/CL CL cd /home/phablet/gostuff/src/github.com/tones111/go-opencl/clinfo go build -x clinfo.go WORK=/tmp/go-build116707911 mkdir -p $WORK/github.com/tones111/go-opencl/cl/_obj/ mkdir -p $WORK/github.com/tones111/go-opencl/ cd /home/phablet/gostuff/src/github.com/tones111/go-opencl/cl /usr/lib/go/pkg/tool/linux_arm/cgo -objdir $WORK/github.com/tones111/go-opencl/cl/_obj/ -- -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I $WORK/github.com/tones111/go-opencl/cl/_obj/ buffer.go commandQueue.go context.go device.go image.go kernel.go memory.go opencl.go platform.go program.go sampler.go /usr/lib/go/pkg/tool/linux_arm/5c -F -V -w -I $WORK/github.com/tones111/go-opencl/cl/_obj/ -I /usr/lib/go/pkg/linux_arm -o $WORK/github.com/tones111/go-opencl/cl/_obj/_cgo_defun.5 -D GOOS_linux -D GOARCH_arm $WORK/github.com/tones111/go-opencl/cl/_obj/_cgo_defun.c nclude -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I $WORK/github.com/tones111/go-opencl/cl/_obj/ -o $WORK/github.com/tones111/go-opencl/cl/_obj/_cgo_export.o -c $WORK/github.com/tones111/go-opencl/cl/_obj/_cgo_export.c gcc -I . -g -O2 -fPIC -marm -pthread -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I $WORK/github.com/tones111/go-opencl/cl/_obj/ -o $WORK/github.com/tones111/go-opencl/cl/_obj/buffer.cgo2.o -c $WORK/github.com/tones111/go-opencl/cl/_obj/buffer.cgo2.c gcc -I . -g -O2 -fPIC -marm -pthread -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I $WORK/github.com/tones111/go-opencl/cl/_obj/ -o $WORK/github.com/tones111/go-opencl/cl/_obj/commandQueue.cgo2.o -c $WORK/github.com/tones111/go-opencl/cl/_obj/commandQueue.cgo2.c gcc -I . -g -O2 -fPIC -marm -pthread -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I $WORK/github.com/tones111/go-opencl/cl/_obj/ -o $WORK/github.com/tones111/go-opencl/cl/_obj/context.cgo2.o -c $WORK/github.com/tones111/go-opencl/cl/_obj/context.cgo2.c gcc -I . -g -O2 -fPIC -marm -pthread -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I $WORK/github.com/tones111/go-opencl/cl/_obj/ -o $WORK/github.com/tones111/go-opencl/cl/_obj/device.cgo2.o -c $WORK/github.com/tones111/go-opencl/cl/_obj/device.cgo2.c gcc -I . -g -O2 -fPIC -marm -pthread -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I $WORK/github.com/tones111/go-opencl/cl/_obj/ -o $WORK/github.com/tones111/go-opencl/cl/_obj/image.cgo2.o -c $WORK/github.com/tones111/go-opencl/cl/_obj/image.cgo2.c gcc -I . -g -O2 -fPIC -marm -pthread -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I $WORK/github.com/tones111/go-opencl/cl/_obj/ -o $WORK/github.com/tones111/go-opencl/cl/_obj/kernel.cgo2.o -c $WORK/github.com/tones111/go-opencl/cl/_obj/kernel.cgo2.c gcc -I . -g -O2 -fPIC -marm -pthread -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I $WORK/github.com/tones111/go-opencl/cl/_obj/ -o $WORK/github.com/tones111/go-opencl/cl/_obj/memory.cgo2.o -c $WORK/github.com/tones111/go-opencl/cl/_obj/memory.cgo2.c gcc -I . -g -O2 -fPIC -marm -pthread -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I $WORK/github.com/tones111/go-opencl/cl/_obj/ -o $WORK/github.com/tones111/go-opencl/cl/_obj/opencl.cgo2.o -c $WORK/github.com/tones111/go-opencl/cl/_obj/opencl.cgo2.c gcc -I . -g -O2 -fPIC -marm -pthread -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I $WORK/github.com/tones111/go-opencl/cl/_obj/ -o $WORK/github.com/tones111/go-opencl/cl/_obj/platform.cgo2.o -c $WORK/github.com/tones111/go-opencl/cl/_obj/platform.cgo2.c gcc -I . -g -O2 -fPIC -marm -pthread -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I $WORK/github.com/tones111/go-opencl/cl/_obj/ -o $WORK/github.com/tones111/go-opencl/cl/_obj/program.cgo2.o -c $WORK/github.com/tones111/go-opencl/cl/_obj/program.cgo2.c gcc -I . -g -O2 -fPIC -marm -pthread -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I/usr/include -I. -I $WORK/github.com/tones111/go-opencl/cl/_obj/ -o $WORK/github.com/tones111/go-opencl/cl/_obj/sampler.cgo2.o -c $WORK/github.com/tones111/go-opencl/cl/_obj/sampler.cgo2.c gcc -I . -g -O2 -fPIC -marm -pthread -o $WORK/github.com/tones111/go-opencl/cl/_obj/_cgo_.o $WORK/github.com/tones111/go-opencl/cl/_obj/_cgo_main.o $WORK/github.com/tones111/go-opencl/cl/_obj/_cgo_export.o $WORK/github.com/tones111/go-opencl/cl/_obj/buffer.cgo2.o $WORK/github.com/tones111/go-opencl/cl/_obj/commandQueue.cgo2.o $WORK/github.com/tones111/go-opencl/cl/_obj/context.cgo2.o $WORK/github.com/tones111/go-opencl/cl/_obj/device.cgo2.o $WORK/github.com/tones111/go-opencl/cl/_obj/image.cgo2.o $WORK/github.com/tones111/go-opencl/cl/_obj/kernel.cgo2.o $WORK/github.com/tones111/go-opencl/cl/_obj/memory.cgo2.o $WORK/github.com/tones111/go-opencl/cl/_obj/opencl.cgo2.o $WORK/github.com/tones111/go-opencl/cl/_obj/platform.cgo2.o $WORK/github.com/tones111/go-opencl/cl/_obj/program.cgo2.o $WORK/github.com/tones111/go-opencl/cl/_obj/sampler.cgo2.o -lOpenCL -L/android/system/lib/ /lib/arm-linux-gnueabihf/libc.so.6 -lOpenCL -L/android/system/lib/ /lib/arm-linux-gnueabihf/libc.so.6 -lOpenCL -L/android/system/lib/ /lib/arm-linux-gnueabihf/libc.so.6 -lOpenCL -L/android/system/lib/ /lib/arm-linux-gnueabihf/libc.so.6 -lOpenCL -L/android/system/lib/ /lib/arm-linux-gnueabihf/libc.so.6 -lOpenCL -L/android/system/lib/ /lib/arm-linux-gnueabihf/libc.so.6 -lOpenCL -L/android/system/lib/ /lib/arm-linux-gnueabihf/libc.so.6 -lOpenCL -L/android/system/lib/ /lib/arm-linux-gnueabihf/libc.so.6 -lOpenCL -L/android/system/lib/ /lib/arm-linux-gnueabihf/libc.so.6 -lOpenCL -L/android/system/lib/ -lc -lOpenCL -L/android/system/lib/ /lib/arm-linux-gnueabihf/libc.so.6 -pie # github.com/tones111/go-opencl/cl /android/system/lib//libc.so: warning: the `gets' function is dangerous and should not be used. /android/system/lib//libc.so: warning: the use of `mktemp' is dangerous, better use `mkstemp' or `mkdtemp' /android/system/lib//libc.so: warning: the use of `tempnam' is dangerous, better use `mkstemp' /android/system/lib//libc.so: warning: the use of `tmpnam' is dangerous, better use `mkstemp' /android/system/lib//libc.so: warning: the use of `pthread_attr_setstackaddr' is deprecated, use `pthread_attr_setstack' /android/system/lib//libc.so: warning: the use of `pthread_attr_getstackaddr' is deprecated, use `pthread_attr_getstack' /android/system/lib//libc.so: warning: the `gets' function is dangerous and should not be used. /android/system/lib//libc.so: warning: the use of `mktemp' is dangerous, better use `mkstemp' or `mkdtemp' /android/system/lib//libc.so: warning: the use of `tempnam' is dangerous, better use `mkstemp' /android/system/lib//libc.so: warning: the use of `tmpnam' is dangerous, better use `mkstemp' /usr/lib/gcc/arm-linux-gnueabihf/4.8/../../../arm-linux-gnueabihf/Scrt1.o: In function `_start': (.text+0x44): undefined reference to `__libc_csu_fini' /usr/lib/gcc/arm-linux-gnueabihf/4.8/../../../arm-linux-gnueabihf/Scrt1.o: In function `_start': (.text+0x48): undefined reference to `__libc_csu_init' collect2: error: ld returned 1 exit status -- Mailing list: https://launchpad.net/~ubuntu-phone Post to : ubuntu-phone@lists.launchpad.net Unsubscribe : https://launchpad.net/~ubuntu-phone More help : https://help.launchpad.net/ListHelp