使用cmake区分两个具有相同名称的头文件

时间:2017-08-08 05:01:15

标签: visual-studio cmake cygwin

我使用cmake

有以下情况
  1. 运行Windows 7
  2. 安装了cygwin和visual studio(VS)社区版(版本14)
  3. Cygwin在/ usr / include / w32api
  4. 中有winsock2.h
  5. VS社区版没有winsock2.h
  6. 请注意,VS的某些旧版(非社区版)确实有 winsock2.h定义。
  7. CHECK_INCLUDE_FILE(“winsock2.h”,HAVE_WINSOCK2_H)返回true 因为它找到了cygwin版本而不是VS版本。
  8. 问题是如何查看已安装的VS是否已定义winsock2.h 而无视任何cygwin版本。

    我需要知道的原因是winsock2.h的存在 在VS中导致与另一个包(libcurl)发生冲突。我可以 如果我知道VS安装是否有,请解决冲突 winsock2.h(或不)。

    我推测我需要阻止CMake搜索 w32api。可能的复杂性是我可能必须指定的 cywin / usr / include / w32api的实际windows文件系统路径。 也就是说,我可能需要指定类似c:/ cygwin / usr / include / w32api的内容 如何获得修改后的路径并不明显。

0 个答案:

没有答案