在上面的场景中,我收到以下编译错误。有人可以告诉我为什么吗?我使用以下文档作为我的指南
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
答案 0 :(得分:5)
simple Google search on "rpl_malloc"找到许多对此问题的引用,并提供了解决方案的建议。问题是Autoconf配置脚本由于某种原因无法找到malloc
,并试图回退到rpl_malloc
。有几个建议可以解决这个问题:
1。)在运行ac_cv_func_malloc_0_nonnull=yes
之前定义configure
环境变量,例如通过运行configure(假设bash shell):
ac_cv_func_malloc_0_nonnull=yes ./configure <your configure options>
或
2.。)手动更改配置脚本,以rpl_malloc problem AC_FUNC_MALLOC
行为其添加注释,并在其前面添加#
。