[]ARM-LINUX下C语言编译GPIO接口程序遇到有关问题

[求助]ARM-LINUX下C语言编译GPIO接口程序遇到问题
实习的单位老板让我给arm-linux写一个控制gpio接口的c语言程序。查看厂家的板子,linux系统里已经有相关驱动,直接用shell命令也能控制GPIO接口输出和电平。
于是研究差不多我弄了个测试程序,想用arm-linux-gcc交叉编译。厂家提供了一个压缩包,包含如下文件,按照厂家提供的指南,修改makefile文件中我的内核地址位置,保存。然后用make安装。提示找不到mach/gpio.h。我查看了gpio_dev.c文件,确实包含了<mach/gpio.h>,我也查看了系统里相关位置,系统源文件/arch/arm/mach-at91/include/mach/ 下是有gpio.h这个文件的。

之后我将gpio_dev.h头文件拷贝到我要编译的程序所在目录,将其包含进我的c文件,并用arm-linux-gcc -o编译。显示"_IO"未定义。而这个"_IO"是gpio_dev.h里定义的宏,不知道到那去参照。
相关截图如下。
想问下我这个到底是哪里出现了问题?如何解决?


[]ARM-LINUX下C语言编译GPIO接口程序遇到有关问题
[]ARM-LINUX下C语言编译GPIO接口程序遇到有关问题
[]ARM-LINUX下C语言编译GPIO接口程序遇到有关问题
------解决方案--------------------
_IO这个应该在ioctl.h里有