我的代码:
import gtk.MainWindow;
import gtk.Main;
void main(string[] args)
{
Main.init(args);
auto win=new MainWindow("Hello World");
win.setDefaultSize(200,100);
win.showAll();
Main.run();
}当我尝试使用DMD (或gdc)进行编译时,我得到以下错误:
dmd ./test.d -L-L/usr/local/include/d/gtkd-2/lib
test.o:(.data+0x10): undefined reference to `_D3gtk10MainWindow12__ModuleInfoZ'
test.o:(.data+0x18): undefined reference to `_D3gtk4Main12__ModuleInfoZ'
test.o: In function `_Dmain':
./test.d:(.text._Dmain+0x15): undefined reference to `_D3gtk4Main4Main4initFKAAyaZv'
./test.d:(.text._Dmain+0x1b): undefined reference to `_D3gtk10MainWindow10MainWindow7__ClassZ'
./test.d:(.text._Dmain+0x3a): undefined reference to `_D3gtk10MainWindow10MainWindow6__ctorMFAyaZC3gtk10MainWindow10MainWindow'
./test.d:(.text._Dmain+0x68): undefined reference to `_D3gtk4Main4Main3runFZv'
test.o:(.data._D67TypeInfo_S3std8typecons35__T6scopedTC5cairo7Context7ContextZ6Scoped6__initZ+0x58): undefined reference to `_D3std8typecons35__T6scopedTC5cairo7Context7ContextZ6Scoped6__dtorMFZv'
collect2: error: ld returned 1 exit status
--- errorlevel 1在过去的两天里,我一直在尝试编译这个简单的hello world应用程序,并浏览了多个网站,包括这个网站。我已经尝试了其他人提出的链接技巧,但都没有成功。我已经安装了GtkD和gtk+ (我在C中使用过gtk,所以我知道这个部分可以正常工作),不管我使用的是dmd还是gdc (目前使用的是dmd,因为我找到了更多针对该编译器的在线解决方案)。
我还应该说,常规的、非gui代码可以很好地编译。当我尝试使用GtkD时,就会发生这种情况。
发布于 2014-05-27 11:29:11
我找到了答案。它是:
-lpq --libs gtkd-2 -I/usr/ -Wall /d/gtkd-2-L/usr/本地/lib-lpq
https://stackoverflow.com/questions/23863213
复制相似问题