我正在尝试在Ubuntu 12.04中构建Spatialite 4.1.1。构建时出现以下构建错误。
virtualXL.c:在函数“vXL_create”中:
virtualXL.c:264:3:错误:未知类型名称'FreeXL_CellValue'
virtualXL.c:265:3:警告:从不兼容的指针类型传递“freexl_get_cell_value”的参数4 [默认启用]
/usr/include/freexl.h:202:24:注意:预期为'unsigned char *',但参数的类型为'int *'
virtualXL.c:265:3:错误:函数'freexl_get_cell_value'的参数太少
/usr/include/freexl.h:202:24:注意:在此声明
virtualXL.c:270:17:错误:在非结构或联合中请求成员“类型”
virtualXL.c:271:39:错误:请求成员“值”的不是结构或联合
virtualXL.c:272:22:错误:在非结构或联合中请求成员“类型”
virtualXL.c:275:17:错误:请求成员“值”的方式不是结构或联合
virtualXL.c:276:22:错误:在非结构或联合中请求成员“类型”
virtualXL.c:277:18:错误:请求成员“类型”不是结构或联合
virtualXL.c:278:18:错误:请求成员“类型”不是结构或联合
virtualXL.c:279:18:错误:请求成员“类型”不是结构或联合
virtualXL.c:280:18:错误:请求成员“类型”不是结构或联合
virtualXL.c:282:30:错误:在不是结构或联合的内容中请求成员“值”
virtualXL.c:286:16:错误:请求成员“值”的不是结构或联合
virtualXL.c:在函数“vXL_eval_constraints”中:
virtualXL.c:505:5:错误:未知类型名称'FreeXL_CellValue'
virtualXL.c:551:10:警告:从不兼容的指针类型传递“freexl_get_cell_value”的参数4 [默认启用]
/usr/include/freexl.h:202:24:注意:预期为'unsigned char *',但参数的类型为'int *'
virtualXL.c:551:10:错误:函数'freexl_get_cell_value'的参数太少
/usr/include/freexl.h:202:24:注意:在此声明
virtualXL.c:553:12:错误:在非结构或联合中请求成员“类型”
virtualXL.c:554:12:错误:在非结构或联合中请求成员“类型”
virtualXL.c:561:16:错误:请求成员“值”的方式不是结构或联合
virtualXL.c:565:16:错误:请求成员“值”的不是结构或联合
virtualXL.c:569:16:错误:请求成员“值”的方式不是结构或联合
virtualXL.c:573:16:错误:请求成员“值”的不是结构或联合
virtualXL.c:577:16:错误:请求成员“值”的方式不是结构或联合
virtualXL.c:587:16:错误:请求成员“值”的不是结构或联合
virtualXL.c:591:16:错误:请求成员“值”的方式不是结构或联合
virtualXL.c:595:16:错误:请求成员“值”的方式不是结构或联合
virtualXL.c:599:16:错误:请求成员“值”的方式不是结构或联合
virtualXL.c:603:16:错误:请求成员“值”的方式不是结构或联合
virtualXL.c:609:12:错误:在非结构或联合中请求成员“类型”
virtualXL.c:616:16:错误:请求成员“值”的方式不是结构或联合
virtualXL.c:620:16:错误:请求成员“值”的方式不是结构或联合
virtualXL.c:624:16:错误:请求成员“值”的不是结构或联合
virtualXL.c:628:16:错误:请求成员“值”不是结构或联合
virtualXL.c:632:16:错误:请求成员“值”不是结构或联合
virtualXL.c:642:16:错误:请求成员“值”的不是结构或联合
virtualXL.c:646:16:错误:请求成员“值”的不是结构或联合
virtualXL.c:650:16:错误:请求成员“值”的不是结构或联合
virtualXL.c:654:16:错误:请求成员“值”的方式不是结构或联合
virtualXL.c:658:16:错误:请求成员“值”的方式不是结构或联合
virtualXL.c:664:13:错误:在非结构或联合中请求成员“类型”
virtualXL.c:665:16:错误:在非结构或联合中请求成员“类型”
virtualXL.c:666:16:错误:在非结构或联合中请求成员“类型”
virtualXL.c:667:16:错误:在非结构或联合中请求成员“类型”
virtualXL.c:668:16:错误:请求成员“类型”不是结构或联合
virtualXL.c:670:13:错误:请求成员“值”的不是结构或联合
virtualXL.c:670:13:错误:请求成员“值”的不是结构或联合
virtualXL.c:670:13:错误:请求成员“值”的不是结构或联合
virtualXL.c:670:13:错误:请求成员“值”的方式不是结构或联合
virtualXL.c:670:13:错误:请求成员“值”的不是结构或联合
virtualXL.c:670:13:错误:请求成员“值”的不是结构或联合
virtualXL.c:670:13:错误:请求成员“值”的不是结构或联合
virtualXL.c:670:13:错误:请求成员“值”的不是结构或联合
virtualXL.c:670:13:错误:请求成员“值”的不是结构或联合
virtualXL.c:670:13:错误:请求成员“值”的不是结构或联合
virtualXL.c:670:13:错误:请求成员“值”的不是结构或联合
virtualXL.c:670:13:错误:请求成员“值”的不是结构或联合
virtualXL.c:670:13:错误:请求成员“值”的不是结构或联合
virtualXL.c:670:13:错误:请求成员“值”的不是结构或联合
virtualXL.c:670:13:错误:请求成员“值”的不是结构或联合
virtualXL.c:670:13:错误:请求成员“值”的不是结构或联合
virtualXL.c:670:13:错误:请求成员“值”的不是结构或联合
virtualXL.c:670:13:错误:请求成员“值”的不是结构或联合
virtualXL.c:670:13:错误:请求成员“值”的不是结构或联合
virtualXL.c:670:13:错误:请求成员“值”的不是结构或联合
virtualXL.c:在函数“vXL_column”中:
virtualXL.c:804:5:错误:未知类型名称'FreeXL_CellValue'
virtualXL.c:819:11:警告:从不兼容的指针类型传递“freexl_get_cell_value”的参数4 [默认启用]
/usr/include/freexl.h:202:24:注意:预期为'unsigned char *',但参数的类型为'int *'
virtualXL.c:819:11:错误:函数'freexl_get_cell_value'的参数太少
/usr/include/freexl.h:202:24:注意:在此声明
virtualXL.c:821:6:错误:在非结构或联合中请求成员“类型”
virtualXL.c:822:17:错误:请求成员“类型”不是结构或联合
virtualXL.c:825:38:错误:请求成员“值”的不是结构或联合
virtualXL.c:828:41:错误:请求成员“值”的方式不是结构或联合
virtualXL.c:835:39:错误:请求成员“值”的不是结构或联合
virtualXL.c:836:23:错误:请求成员“值”的不是结构或联合
看来libfreeXL存在版本问题。有没有人遇到过类似的问题?
最佳答案
如果我没记错的话,您必须编辑 config.h 并更改行
#undef OMIT_FREEXL
与
#define OMIT_FREEXL
...但是,如果您需要从Excel文件中提取数据,download FreeXL here: