In the above scenario I am getting the following compile error. Can someone tell me why? I am using the following doc as my guide line
http://billforums.station51.net/viewtopic.php?f=8&t=15
ts_test.o: In function `main':
ts_test.c:(.text+0x1d8): undefined reference to `rpl_malloc'
fbutils.o: In function `open_framebuffer':
fbutils.c:(.text+0xa7c): undefined reference to `rpl_malloc'
collect2: ld returned 1 exit status
make[2]: *** [ts_test] Error 1
ts_harvest.o: In function `main':
ts_harvest.c:(.text+0x5d0): undefined reference to `rpl_malloc'
fbutils.o: In function `open_framebuffer':
fbutils.c:(.text+0xa7c): undefined reference to `rpl_malloc'
collect2: ld returned 1 exit status
make[2]: *** [ts_harvest] Error 1
make[2]: Leaving directory `/home/thwijeth/Downloads/tslib-1.0/tests'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/thwijeth/Downloads/tslib-1.0'
make: *** [all] Error 2
ts_test.o: In function `main':
ts_test.c:(.text+0x1d8): undefined reference to `rpl_malloc'
fbutils.o: In function `open_framebuffer':
fbutils.c:(.text+0xa7c): undefined reference to `rpl_malloc'
collect2: ld returned 1 exit status
make[2]: *** [ts_test] Error 1
ts_harvest.o: In function `main':
ts_harvest.c:(.text+0x5d0): undefined reference to `rpl_malloc'
fbutils.o: In function `open_framebuffer':
fbutils.c:(.text+0xa7c): undefined reference to `rpl_malloc'
collect2: ld returned 1 exit status
make[2]: *** [ts_harvest] Error 1
make[2]: Leaving directory `/home/thwijeth/Downloads/tslib-1.0/tests'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/thwijeth/Downloads/tslib-1.0'
make: *** [all] Error 2
A simple Google search on "rpl_malloc" finds many references to this issue, with suggestions for solutions. The problem is that the Autoconf configure script is having trouble finding malloc
for some reason, and tries to fall back to rpl_malloc
. There are a couple of suggestions to work around this:
1.) Define the ac_cv_func_malloc_0_nonnull=yes
environment variable before you run configure
, for instance by running configure (assuming a bash shell) as:
ac_cv_func_malloc_0_nonnull=yes ./configure <your configure options>
or
2.) Manually change the configure script to comment out the rpl_malloc problem AC_FUNC_MALLOC
line by prefixing it with a #
.
(Reference: this blog post, among others)