移植tiobench到openwrt出现各种编译问题,汇总如下:
<1> error: conflicting types for 'aligned_alloc'和stdlib.h中的定义冲突
—— 错误原因是tiotest.c中的aligned_alloc和stdlib.h中的函数重名了,对tiotest.c中的该函数aligned_alloc进行重命名,比如换成tiobench_aligned_alloc
<2> printf format not a string literal and no format arguments
—— 我编译时,加入了很多CFLAGS,会报错。此处将printf(mess),修改为printf("%s",mess)
<3> tiobench undefined reference to `crc32'
—— 问题由gcc版本过高(5.x)导致,删除crc32.h中的inline关键字即可
参考:https://aur.archlinux.org/packages/tiobench/?comments=all