Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ Boost二进制文件读取错误不支持的版本_C++_Linux_Serialization_Boost_Binaryfiles - Fatal编程技术网

C++ Boost二进制文件读取错误不支持的版本

C++ Boost二进制文件读取错误不支持的版本,c++,linux,serialization,boost,binaryfiles,C++,Linux,Serialization,Boost,Binaryfiles,我正在做序列的序列化 在windows系统中,我通过boost::序列化生成二进制文件 看来没问题 但是,如果我将这个二进制文件移动到linux系统并加载二进制文件 编译器说不支持的版本 我对这个问题一无所知 有人能帮我们吗 Windows和linux的Boost版本是相同的。boost版本为1_63_0 Adjcency_grpah LoadGraphData(char *fileName) { Adjcency_grpah g; std::ifstream ifs(fileN

我正在做序列的序列化

在windows系统中,我通过boost::序列化生成二进制文件

看来没问题

但是,如果我将这个二进制文件移动到linux系统并加载二进制文件 编译器说不支持的版本

我对这个问题一无所知

有人能帮我们吗

Windows和linux的Boost版本是相同的。boost版本为1_63_0

Adjcency_grpah LoadGraphData(char *fileName) {
    Adjcency_grpah g;
    std::ifstream ifs(fileName, std::ios::binary);
    if (!ifs) {
        cout << "Read Error" << endl;
        exit(1);
    }
    try {
        boost::archive::binary_iarchive ia(ifs);
        ia & BOOST_SERIALIZATION_NVP(g);
        cout << "Restoring Graphs Serialize Success\n" << endl;
    }
    catch (boost::archive::archive_exception e) {
        cout << "BOOST ERROR " << e.what() << std::endl;
    }
    return g;
}
appcentcy\u grpah LoadGraphData(char*fileName){
邻接;
std::ifstream ifs(文件名,std::ios::binary);
如果(!ifs){

coutBoost的内置二进制文件是不可移植的。它在文档中这样说

相反,您应该能够使用。它与Boost序列化完全兼容


除此之外,请确保使用独立于平台的类型标识符(因此,
int64\t
而不是
long
等).

如果您可以发布一个实际的SSCCE,那么我们可以检查它是否有任何错误。有许多组件可以生成二进制文件。因此,我想发布它,但很难生成示例代码…通过SaveGraphData代码,它在windows中生成二进制文件。我使用sftp将其移动到Linux服务器。在Linux系统中,我运行前面提到的代码。CompiLER说不受支持的版本。我们没有印象深刻:从二进制100个节点图演示二进制存档的创建,并读取它。使用两个不同的创建的图形检查往返。欢迎。EOS便携式存档是C++的库吗?您可以实际查看链接。如果不喜欢访问Web PA,请使用安全浏览器。GES。如果不是C++,它不能完全与Boost序列化兼容,对吗?哦,我理解它,我正在调整EOS存档!我从网站下载zip文件,但是在zip文件夹中没有“Purable BialayiIsCuivi.HPP”文件。