如何使用cygwin编译ioping

时间:2016-03-02 18:39:38

标签: c++ c gcc cygwin

在Windows 7 x64上使用Cygwin。提取' ioping'来源于' / home'

结果如下:

$ make
test ! -d .git || git describe --tags --dirty=+ | sed 's/^v//;s/-/./g' > version
cc -std=gnu99 -g -Wall -Wextra -pedantic -DVERSION=\"0.8\" -c -o ioping.o ioping.c
ioping.c: In function ‘get_device_size’:
ioping.c:602:3: error: #error no get disk size method
 # error no get disk size method
   ^
Makefile:46: recipe for target 'ioping.o' failed
make: *** [ioping.o] Error 1

尝试编译Windows可执行文件。我是Cygwin的新手。在查看代码时似乎缺少预处理器。

来源:https://github.com/koct9i/ioping

编辑: 查看已接受的asnwer用户,' user3629249'以及我对完整答案的评论。

链接来源的注释。 '自述'说它适用于Windows,尝试在带有SSD的Win 7 Ultimate 64位上运行它并且错误输出"准备写入失败:没有错误"。

1 个答案:

答案 0 :(得分:0)

函数:get_device_size()根据底层操作系统选择某些`ioctl()。

ioctl()取决于make时间

定义以下哪项
  1. __linux__
  2. __gnu_hurd__
  3. __FreeBSD__
  4. __FreeBSD_kernel__
  5. __DragonFly__
  6. __OpenBSD__
  7. __APPLE__
  8. __sun__
  9. __MINGW32__
  10. 浏览您的环境变量

    我希望有一些环境变量,例如__cygwin__

    哪个环境变量似乎最合适一个,将环境变量的名称添加到ioping.c文件顶部附近的预处理程序块集中,并再次添加到get_device_size()函数中