2011-01-10 66 views
1

我是exiflib的新手。我已經下載了exiflib源文件(libexif-0.6.20.zip),幷包含在我的VC++項目中。當我試圖打造,它會產生一些鏈接錯誤,exiflib with MSVC++

解析外部符號_exif_entry_get_value,符號_exif_format_get_name ..

任何幫助將不勝感激..

回答

1

要獲得libexif在MSVC++編譯是有點的黑客工作。它使用MSVC選擇不執行的功能。見我的工作例如VS2010以下項目(如果你不喜歡下載文件,然後跳到我的什麼需要改變,以得到它的解釋如下工作):

https://www.dropbox.com/s/l6wowl8pouux01a/libexif-0.6.21_CompiledInVS2010%2BExample.7z?dl=0

要闡述的問題是需要「黑客」(作爲LibExif自述-win32.txt文檔中暗示)有:

  • Libexif使用直列在其未在VS定義C,是僅含有C幾個地方++(見this

  • Libexif使用不是在VS中定義的snprintf(見here

  • 你需要自己創建config.h中沒有的./configure命令來幫助你。您可以通讀該腳本,但其中大部分對於Windows VS2010來說都沒有意義。

  • 您將需要定義GETTEXT_PACKAGE,因爲它可能是在配置文件中設置的。我只是選擇UTF-8,不管這是否正確,我都不確定。

  • 隨機有一個無符號靜態*需要從.c文件移動到.h文件,因爲VS中的C不允許您以特定方式在函數內創建新變量試圖去做。

一旦你解決了上述問題,你的未解決的外部符號問題應該消失。