0
我想使用libjpeg將包含在內存塊中的jpeg解壓縮爲其RGB值。我原來在我的系統上有6.2版本,但我需要函數jpeg_mem_src,所以我升級到8d。我用的是後續的命令來安裝/配置:libjpeg錯誤的版本錯誤
./configure
sudo make clean
sudo make
sudo make uninstall
sudo make install
,並編制我的程序我用(貼現刪除.o文件並重新編譯他們的命令):這段代碼運行時
g++ main.o googlestreetview.o -lopencv_core -lopencv_highgui -lcurl -ltinyxml2 -ljpeg -o example
然而:
struct jpeg_decompress_struct cinfo;
struct jpeg_error_mgr jerr;
cinfo.err = jpeg_std_error(&jerr);
jpeg_create_decompress(&cinfo);
我只是得到: 「錯誤的JPEG庫版本:庫爲62,來電預計80」
這看起來很奇怪,因爲我不僅手動從系統中刪除了libjpeg,而且我重新編譯了8d並安裝了很多次。我可以採取哪些措施來解決這個問題?
這通常是由不匹配的libjpeg頭文件和庫引起的。你在任何地方都有libjpeg頭文件的*舊*副本嗎?如果是這樣,請刪除它們。 –
我的猜測是我的頭文件是正確的版本(80),而我的庫是錯誤的版本(62),但是我已經掃描了我的機器以供libjpeg庫清除,重新編譯並重新安裝它們,但仍然沒有任何更改。我不知道它藏在哪裏。 – user293895
如果有任何內容加載了動態庫,它們將保留在RAM中。重啓會解決這個問題。 – stark