2014-03-13 34 views
3

我在Windows 7上使用Visual Studio 2013,Visual D版本0.3.37,Gtk + 3.8,最新的GtkD和dmd-2.065.0。我跟着these instructions構建GtkD,並設置我的編譯器來編譯它。在Visual Studio中,我告訴VisualD使用編譯器開關,指令用於使用GtkD編譯項目。我試圖編譯使用Visual D的「編譯和運行」命令長時間編譯後的說明中給出的「Hello World」程序,我得到了以下錯誤:無法編譯Visual D中的GtkD項目

Compiling main.d... 

OPTLINK (R) for Win32 Release 8.00.15 
Copyright (C) Digital Mars 1989-2013 All rights reserved. 
http://www.digitalmars.com/ctg/optlink.html 
C:\D\dmd2\windows\bin\..\lib\gtkd.lib(Action) Offset 03B19H Record Type 0091 
Error 1: Previous Definition Different : _D3atk9ObjectAtk9ObjectAtk6__initZ 
C:\D\dmd2\windows\bin\..\lib\gtkd.lib(Action) Offset 03B42H Record Type 0091 
Error 1: Previous Definition Different : _D3atk9ObjectAtk9ObjectAtk7__ClassZ 
C:\D\dmd2\windows\bin\..\lib\gtkd.lib(Action) Offset 03B6AH Record Type 0091 
Error 1: Previous Definition Different : _D3atk9ObjectAtk9ObjectAtk6__vtblZ 
C:\D\dmd2\windows\bin\..\lib\gtkd.lib(Action) Offset FFE57H Record Type 0091 
Error 1: Previous Definition Different : _D3atk9ObjectAtk12__ModuleInfoZ 

//bunch more similar lines follow... 

--- errorlevel 14816 
Building Debug\main.exe failed! 

我不知道我是什麼做錯了;我完全按照指示操​​作,並且我知道我的編譯器工作。我錯過了什麼?

+0

你使用預編譯版本嗎?你也可以現在順便編譯64位。 – Trass3r

回答

0

我認爲發生錯誤是因爲Visual Studio再次編譯GtkD,而不是簡單地使用.d文件作爲參考,並使用.lib文件編譯實現。您可能需要從編譯中排除GtkD文件,或從項目中刪除.lib文件,以使Visual Studio將GtkD與您的應用程序一起編譯。