在Ubuntu10.04上设置工作D2.x工具链(带gtkd)
我已经和D玩了几天了,对此我非常兴奋,直到,也就是说,我试图让gtkd工作。我现在已经浪费了三天的大部分时间来尝试一个工作设置,我开始(阅读;很久以前)有点泄气。在我放弃之前,我想知道是否有人能帮我。我能在网上找到的很多信息都过时了,所以我不确定我是否认为这是可能的 这篇文章的其余部分就是我到目前为止所尝试的内容,如果您有快速的解决方案,您可能不需要阅读它,所以请随时跳到。。。[跳到这里] 所以,首先我需要知道,tango是否真的可以与D2.0一起使用,我相信它最初不是,但现在D2.x可以让tango和phobos一起使用。如果这不是真的,那么我想我在第一个跨栏时摔倒了,这是一个非首发 到目前为止我所采取的步骤在Ubuntu10.04上设置工作D2.x工具链(带gtkd),d,gtkd,D,Gtkd,我已经和D玩了几天了,对此我非常兴奋,直到,也就是说,我试图让gtkd工作。我现在已经浪费了三天的大部分时间来尝试一个工作设置,我开始(阅读;很久以前)有点泄气。在我放弃之前,我想知道是否有人能帮我。我能在网上找到的很多信息都过时了,所以我不确定我是否认为这是可能的 这篇文章的其余部分就是我到目前为止所尝试的内容,如果您有快速的解决方案,您可能不需要阅读它,所以请随时跳到。。。[跳到这里] 所以,首先我需要知道,tango是否真的可以与D2.0一起使用,我相信它最初不是,但现在D2.x可以让ta
dsss net install tango
,该软件警告我,我将无法回到phobos(正如我所提到的,这让我感到困惑,我认为两者可以一起使用),我继续,它完全破坏了我的设置。我现在无法编译任何D
对不起,我不能更明确地说明我在最后一节中犯了什么错误,我真的不记得了
无论如何,我删除了我安装的所有东西。重新开始
volatile
语句被弃用的错误。D2.x中的某些东西显然是正确的,这让我回到了“tango甚至得到了支持”
天哪,我糊涂了
[跳到这里]
如果有人能一步一步地指导我如何设置工作装置,我将永远感激
谢谢,T
更新:“我们到了!”
因此,我从我的主目录下载了dmd.2.049.zip,并将其解压缩到主目录,然后执行了一个导出路径=$PATH:~/dmd2/linux/bin
(多亏了dsimcha)
忘记了dsss
。按照上的说明获得了gtkd的svn版本。编辑GNUmakefile
将前缀更改为/home/me/dmd2/linux
,并执行进行安装
编辑了~/dmd2/linux/bin/dmd.conf
,因此包含的包含路径。/include
(gtkD库放在。/lib
中,因此我不需要编辑库路径)
现在终于要用gtkD编译了,我需要链接libgtkd和libdl,这是由,dmd mydprog.d-L-lgtkd-L-ldl
(感谢jpf)完成的
Tango不适用于D2。很久以前就有人试图移植它,但这种做法遇到了麻烦,目前还不清楚这是否真的会完成。D2的奥托火卫一要比D1的火卫一好得多,所以缺少探戈并不像听起来那么糟糕
GDC支持D2的一个古老版本。绝对没有机会用它编译gtkD。您应该使用参考DMD编译器
通常,在Linux上设置DMD的正确方法是将DMD.2.0xx.zip解压到主目录中,然后执行导出路径=$PATH:~/dmd2/Linux/bin
,以确保DMD可执行文件位于您的路径中。然后一切都应该正常(使用DMD2和火卫一)
如果希望dmd将参数传递给链接器,则必须在参数前面加上-L。
我认为对于gtkd,您需要链接到gtkd库和libdl
-L-lgtkd -L-ldl
谢谢,这让我明白了很多。我现在感觉好多了:)。你知道如何让gtkd工作吗。我现在就用Phobos编译了dsss
,并按照您的建议设置了dmd
。我尝试将它(gtkd)安装到prefix=~/dmd2/linux/
中,并编辑dmd.conf
以更改包含目录,但没有成功。好吧,幸运的是,我在帖子中添加了一个编辑来解释当前情况;现在我发现了链接器错误。太棒了,谢谢。我曾见过-L标志,并尝试过-Lgtkd
和-Llgtkd
,但从未想过-L-L…
。现在一切都好了,太棒了!我也有同样的问题,正在尝试我能想到的-Lgtkd的所有变体。我从来没有想过要尝试-L-L。。。(而且文档很难找到!)