0

我在带有 OpenCV 2.2 的 Ubuntu 10.10 上使用这个库,效果非常好。比0.9.3版本好多了!现在我正在更新我的系统,我仍然想使用 libdecodeqr 0.9.4,但我得到一个编译错误:

galois.cpp: In member function ‘Galois::Polynomial* Galois::Polynomial::_lu(Galois::Polynomial)’:
galois.cpp:400:48: error: taking address of temporary [-fpermissive]
galois.cpp:403:65: error: taking address of temporary [-fpermissive]
galois.cpp: In member function ‘Galois::Polynomial Galois::Polynomial::solve(Galois::Polynomial)’:
galois.cpp:458:69: error: taking address of temporary [-fpermissive]
galois.cpp:464:56: error: taking address of temporary [-fpermissive]
galois.cpp:466:54: error: taking address of temporary [-fpermissive]
galois.cpp: In member function ‘int Galois::BCH::decode(int)’:
galois.cpp:565:56: error: taking address of temporary [-fpermissive]
galois.cpp:567:59: error: taking address of temporary [-fpermissive]
galois.cpp: In member function ‘Galois::Nomial Galois::BCH::_error_syndrome(int)’:
galois.cpp:592:44: error: taking address of temporary [-fpermissive]
make[1]: *** [galois.lo] Error 1
make[1]: Leaving directory `/home/xxx/Downloads/libdecodeqr-0.9.4/libdecodeqr'
make: *** [all-recursive] Error 1

我在 Ubuntu 12.04 和 OpenCV 2.4 上。我像 ./configure make make install 一样进行了 src 安装。我能做些什么来编译这个?

谢谢

4

1 回答 1

0

我想到了。问题是新的 gcc 编译器“将临时地址变为错误”而不是警告。

按照以下方式构建 libdecodeqr 以使其编译:

sudo make CXXFLAGS+=-fpermissive

在那之后,显然:

sudo make install
sudo ldconfig
于 2012-05-30T09:00:02.153 回答