我正在将一个应用程序从BSD平台移植到Linux机器上。编译时,我发现一些头文件调用了<bits/stl_alloc.h>,这在我的计算机中是缺失的。有没有人知道我在哪里可以找到这个和/或为什么它不见了?
我运行的是一台带GCC4.4.4的Fedora 12机器。
发布于 2010-08-13 03:53:13
您的错误消息显示bits目录中的文件丢失。这可能导致两种可能的方式:
#ifdef __BSD__ //特定于BSD的包含文件#include #elsif定义的__LINUX__ #include #endif
通常,在Linux上开发的程序会包含正确的文件。然而,你的程序可能已经在它自己的上定义了BSD指纹,这个指纹可能会被STL实现误解,因为它应该包括它特定于BSD的部分。如果你仅仅建立在BSD上,你根本不会注意到它。
https://stackoverflow.com/questions/3471354
复制相似问题