問題
OpenCVでQRコードを読み取ろうとした際に、
Library QUIRC is not linked.
というエラーが発生し、文字列が取得できない。
(矩形は正常に取れているので、検出は出来ているらしい)
原因
インストールされているOpenCVのパッケージに、QRコード読取り(デコード)に必要なライブラリが含まれていない。
(バージョン依存ではありません。あくまでパッケージに含まれるライブラリの問題になります。)
対策
① 別のパッケージをインストールする。
apt で、opencv や opencv-devel などのパッケージを直接インストールした場合に発生することが多いようです。
pipからPhytyon用のパッケージ(opencv-python)をインストールしてみましょう。
② ソースコードからビルドする。
自分でソースコードからライブラリを作成すれば問題は解決します。
(ビルドについては既に多くの記事がありますのでソチラを参考に。)
重要なのは cmake で Makefile を作成する際にWITH_QUIRCオプションを指定することです。このオプションはデフォルトではOFFになっているので、指定しないと使用できません。
cmake .. -DWITH_QUIRC=ON
(要するに、インストールしたビルド済みパッケージが、このオプションを使用せずにビルドされているという事です。)