2011-09-19 110 views
0

我有兩個共享extern變量的庫。 在利巴我已經變量在頭聲明爲這樣:extern在Microsoft Visual Studio中鏈接問題

extern int Gbl; 

然後我在源再次將其定義爲:

int Gbl; 

下一然後我設置GBL = 1;

在libB中,我包含了libA的頭文件。和printf Gbl,期待在這裏得到1。

但不幸的是我甚至不能編譯這一點,因爲我得到的錯誤:

undefined symbol '_Gbl' referenced in .... 

有人告訴我,這是一個連接錯誤,但我不知道該怎麼從這裏

+0

這是一個鏈接器錯誤,您需要鏈接libA以及libB。鏈接器,輸入,附加相關性設置。 –

+0

@HansPassant我不知道如何去做到這一點。我正在通過labwindows使用視覺工作室編譯器 – mugetsu

+0

使用供應商的支持渠道:http://sine.ni.com/psp/app/doc/p/id/psp-272 –

回答

0

您需要編譯包含libA的libB。這通過在編譯行中添加-llibA來完成。如果沒有正確設置磁帶庫選項,則需要添加-lpath_to_library

+0

我剛剛嘗試了相當於labwindows它仍然給了我同樣的錯誤 – mugetsu