本文介绍了提高::档案:: binary_iarchive无效签名的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我使用boost ::档案:: binary_iarchive,出现错误:无效签名
当我要编译program--cvpr_2012_ffd.you可以从。我编译根据它的README程序。当我运行这个程序,我遇到一些和error.The错误是这样

when i use boost::archive::binary_iarchive , the error occur :invalid signaturewhen i want to compile the program--cvpr_2012_ffd.you can get it from http://blog.gimiatlicho.webfactional.com/?page_id=38. I compile the program according to it's README. when I run this program that I encounter some error.the error is this

l00138375@l00138375:/home/hm/downloads/cvpr_2012_public$ ./FaceForest 1      data/config_ffd.txt data/config_headpose.txt data/haarcascade_frontalface_alt.xml
Image pathdata/index_random_subset.txt
paths to treesdata/trees_ffd/
Image path
paths to treesdata/trees_headpose/tree_
10 to load.
Archive Exception during deserializing:
invalid signature
it was tree: data/trees_headpose/tree_000.txt
segment fault

我觉得这个错误出现在文件中:tree.hpp的code这样的

I find this error appear in the file:tree.hpp the code like this

224     //check if file exist
225     std::ifstream ifs(path.c_str());
226     if (!ifs) {
227       std::cout << "Tree not found " << path << std::endl;
228       return false;
229     }
230
231     //load tree
232     try {
233 //      boost::archive::binary_iarchive ia(ifs);
234       boost::archive::binary_iarchive ia(ifs);
235       ia >> *t;
236     } catch (boost::archive::archive_exception& ex) {
237       std::cout << "Archive Exception during deserializing:" << std::endl;
238       std::cout << ex.what() << std::endl;
239       std::cout << "it was tree: " << path << std::endl;
240     } catch (int e) {
241       std::cout << path << "EXCEPTION " << e << std::endl;
242
243     }

发生在线路的错误:234

the error occur in the line:234

不要有人遇到这个问题?如何解决这个问题?谢谢

Do somebody encounter this error?how to solve this problem ?thanks

推荐答案

我试图编译程序的作者。
问题是,你尝试加载的文件是64位Linux / MAC二进制文件。

I'm the author of the program you try to compile.The problem is that the files you try to load are 64 bit linux/mac binaries.

如果您使用的是32位Linux或32/64窗口,比你无法加载文件。

If you are using 32 bit linux or 32/64 windows, than you can't load the files.

如果您需要32位二进制模式只是与我联系。

Just contact me if you need the 32-bit binary models.

这篇关于提高::档案:: binary_iarchive无效签名的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-03 12:36