<分区>
我正在尝试应用一个允许我使用 std::to_string()
的补丁。我在 /usr/include/wchar.h
上使用了 rm,然后将下载的补丁 wchar.h
复制到/usr/include 目录。现在,当我尝试编译程序时,它会提示找不到 _mingw.h
在这一点上,我只想找到一种方法来获取旧的 wchar.h
的拷贝并替换“已修补”的拷贝。我会找到一种不用 std::to_string();
<分区>
我正在尝试应用一个允许我使用 std::to_string()
的补丁。我在 /usr/include/wchar.h
上使用了 rm,然后将下载的补丁 wchar.h
复制到/usr/include 目录。现在,当我尝试编译程序时,它会提示找不到 _mingw.h
在这一点上,我只想找到一种方法来获取旧的 wchar.h
的拷贝并替换“已修补”的拷贝。我会找到一种不用 std::to_string();
最佳答案
其实这跟编程关系不大,估计跑题了。然而……
首先:为您服务。是的。您一直在使用 root 权限工作,但没有注意不要破坏您的系统。有一个单独的根帐户是有原因的,不要将它用于日常工作。
其次,有一些方法可以解决这个问题,但它们在一定程度上取决于系统。首先找出哪个包安装了该 header ,然后重新安装整个包。您也可以尝试仅提取和恢复该文件,但这可能更复杂。例如,在 Debian 下,运行 dpkg -S/usr/include/wchar.h
以找出哪个软件包安装了该文件,在本例中为 libc6-dev。然后,使用 apt-get install --reinstall libc6-dev
重新安装包,这应该可以解决您的问题。
最后,回到编程,你的方法是有缺陷的。标准头文件通常不能在不同编译器之间移植。此外,他们可能会声明在可移植性更差的单独库中实现的功能。我的建议:提出一个新问题,具体说明您想要实现什么以及在哪个系统上实现。
关于c++ - 恢复 wchar.h C++ 包含文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15859482/