2016-01-25 50 views
0

我正嘗試使用this package連接到Go中的Oracle數據庫。我爲Oracle 11.2和12.1都安裝了服務器和instantclient,我正在按照有關oci8.pc文件的說明進行操作。我的操作系統是Windows。Golang oci8:添加符號時出錯:文件格式錯誤

然而,當我跑「去把github.com/mattn/go-oci8」(或嘗試安裝已經得到了直接的包的源代碼後在程序包程序)我得到這個錯誤:

# github.com/mattn/go-oci8 
C:/oraclexe/app/oracle/product/11.2.0/server/oci/lib/MSVC/oci.lib: error adding symbols: File in wrong format 
collect2.exe: error: ld returned 1 exit status 

有誰知道這個問題是什麼,以及如何解決它?

+0

你是否已經完成安裝完全像在自述文件中? https://github.com/mattn/go-oci8它說下面的'你需要把oci8.pc放入你的$ PKG_CONFIG_PATH中。 oci8.pc應該如下所示。這是一個windows的例子.' – FZE

+0

我將示例文件內容複製到我的文件中,並進行了以下更改: 1)「includedir」字段使用「include」目錄兩次,因此我刪除了一個。否則,它與如何設置我的oracle目錄相匹配。 2)我在「Description」行後面添加了一個包含「Version:11.2」的行,因爲我收到一個錯誤,指出我需要這樣一行。 3)我不確定要在第一行放置什麼(「前綴」),所以我只是在該字段中輸入「/ bmc」。 否則它完全一樣。我確實把它的目錄路徑放在了PKG_CONFIG_PATH變量中。 – Tuy

+0

你在混合32位和64位嗎?一切都需要匹配。 –

回答

1

看起來是我試圖安裝oci8的同樣的問題。你在使用TDM_GCC嗎?對我而言,問題在於TDM_GCC有一個編譯器/鏈接器錯誤,它可以防止編譯某些文件。我用ming64代替,它工作。你可以在這裏看到我的詳細帖子:

https://github.com/mattn/go-oci8/issues/75

相關問題