mkfs.ubifs/hashtable/hashtable_itr.c:42:1: error: redefinition of ‘hashtable_iterator_key’

背景:

在编译ambalink 时发现如下编译错误:

mkfs.ubifs/hashtable/hashtable_itr.c:42:1: error: redefinition of ‘hashtable_iterator_key’_第1张图片

解决方法:

1. 查看此函数在哪些文件中被引用或定义

   mkfs.ubifs/hashtable/hashtable_itr.c:42:1: error: redefinition of ‘hashtable_iterator_key’_第2张图片

2. 查看定义位置

在 hashtable_itr.h中定义如下:

mkfs.ubifs/hashtable/hashtable_itr.c:42:1: error: redefinition of ‘hashtable_iterator_key’_第3张图片

在 hashtable_itr.c中定义如下:

mkfs.ubifs/hashtable/hashtable_itr.c:42:1: error: redefinition of ‘hashtable_iterator_key’_第4张图片

3. 将hashtable_itr.h中改成如下:

mkfs.ubifs/hashtable/hashtable_itr.c:42:1: error: redefinition of ‘hashtable_iterator_key’_第5张图片

 

4. 删除host-mtd-1.5.1目录,并重新编译: rm -rf build/host-mtd-1.5.1/;make -j1

PS: 也可以在 dl 目录中解压 mtd-utils-1.5.1.tar.bz2 ,在解压目录中直接修改 hashtable_itr.h文件,修改后再打包修改过的目录,替换掉当前使用的 mtd-utils-1.5.1.tar.bz2

 

你可能感兴趣的:(工作总结)