【发布时间】:2010-11-22 02:50:26
【问题描述】:
我想让 MinGW 验证 #include 指令中指定的文件名是否大小写正确。 MinGW 默认情况下不区分大小写,可能是因为 windows 在文件名方面不区分大小写,但我在跨平台环境中工作,并且希望确保 gcc 在 Linux 下不会在有人指定包含文件时抱怨错误的情况。
我认为可能有一个编译开关来强制执行此操作,但一直找不到。也欢迎任何替代建议。
【问题讨论】:
我想让 MinGW 验证 #include 指令中指定的文件名是否大小写正确。 MinGW 默认情况下不区分大小写,可能是因为 windows 在文件名方面不区分大小写,但我在跨平台环境中工作,并且希望确保 gcc 在 Linux 下不会在有人指定包含文件时抱怨错误的情况。
我认为可能有一个编译开关来强制执行此操作,但一直找不到。也欢迎任何替代建议。
【问题讨论】:
我不认为 MinGW 有任何这样的选择。如果您假设您至少在 NTFS 上运行,那么编写代码并提供补丁可能不会太难。但到目前为止,最简单的解决方案是简单地提醒人们区分大小写,并修复(希望很少见!)他们出错的情况。
有时最好的解决方案是社交,而不是技术。
【讨论】:
我想不出一个直接的解决方案,而不是编写一些自定义工具来检查这个:) Win32 子系统通常强制不区分大小写,这使得在 Windows 上不可能有区分大小写的文件请求。至少在 FATxx 和 NTFS 文件系统上是不区分大小写的。 我没有尝试过 NFS 挂载的文件系统。如果可以的话,你可以试一试..
【讨论】: