D编译完全开源了,于是忍不住下载了最新的dmd编译源码(dmd.2.029),然后在Redhat AS3上进行编译,但是还是遇到了一些小问题。下面将详细过程介绍一下:
1) 先解压
unzip dmd.2.029.zip
便生成目录 dmd, 该目录下有:src/, linux/, windows/samples/ 等目录
2) 编译dmd编译器
cd dmd/src/dmd/
make
# 便会报错
backend/dwarf.c:54:26: ../mars/mars.h: No such file or directory
# 于是创建目录同时要拷贝两个文件至新建目录:
make mars
cp mars.h mars/
cp complex_t.h mars/
# OK,编译器完毕,将以下几个可执行文件拷贝至 dmd/linux/bin/ 目录下:
cp dmd idgen optabgen impcnvgen ../../linux/bin/
3) 编译运行时库
cd dmd/src/druntime/src
chmod 755 build-dmd.sh
./build-dmd.sh
# 于是报错
: No such file or directory
# 为找到各种原因,本人花了好久,终于搞明白是因为 build-dmd.sh 的原始格式为DOS格式,
# 所以需要转换为 unix 格式
# 于是乎用工具将 build-dmd.sh 由DOS格式转换为UNIX格式, 再运行:
./build-dmd.sh
# Ok
4) 编译 phobos 库,里面包含常用的函数库
cd dmd/src/phobos
make -f linux.mak
# 于是报错
make: *** No rule to make target `../druntime/lib/libdruntime.a', needed by `obj/posix/release/libphobos2.a'. Stop.
# 解决方法如下:
cd dmd/src/druntime/lib/
ln -s release/libdruntime.a libdruntime.a
# 然后
cd dmd/src/phobos
make -f linux.mak
# ok, 编译 phobos 成功,同时会自动将库 libphobos2.a 拷贝至 dmd/linux/lib/ 目录
5) 最后将 dmd/src/druntime/lib/release/ 目录下的所有库拷贝至 dmd/linux/lib/ 目录,
同时修改环境变量设置,将 xxx/dmd/linux/bin, xxx/dmd/linux/lib 放入个人环境变量中
不知即将发布的 dmd.2.030 会不会将这些小问题都给解决了:)
另外,本人在编译 dmd/samples/ 下的例子时,发现基本上是编译不过去,查看了源码,原来里面用的库基本都是 dmd.1.0 的库,希望 Walter Bright 等人将此类问题都解决了,呵呵
注:以上仅是将DMD.2.029 在Redhat AS4的编译过程,如果想要在AS3上编译通过,还需要将附件的 linux.mak 替换 src/phobos/ 目录下的 linux.mak;
补充:如果你用的DMD.2.030在 AS3上编译,则需要将 linux.2.030.rar 替换 src/phobos/ 下的 linux.mak;
个人微博:http://weibo.com/zsxxsz
分享到:
相关推荐
编译器源代码之:DMD(D语言)dmd.2.026。vc6编译通过
用于控制sim显微镜中的dmd部分。 此代码可以控制dmd产生规则的图形。以控制显微镜光源形状
D语言是结合了C#、Java和 C++以及PHP、Python等动态语言的特性于一身,且不依赖于虚拟机, 而是作为可执行程序单独来运行的,这样它的效率非常高。
Hi3798CV200硬件HDK 海思网络机顶盒方案硬件开发资料 硬件版本号:CV2DMD 包含原理图和PCB(PCB包含PADS和ALLEGRO两个版本)
快照数据的动态模态分解,获得基模态和对应的特征值,包括频率和增长率,以及数据后处理。
动态模式分解的matlab 代码,有注释
Arduino dmd library for matrix display
数字微镜DMD编程,包括设置帧频、画面大小和积分时间等参数
dmd.js 简单的基于 html 画布的 JavaScript 点阵显示库
NULL 博文链接:https://godspeedhu.iteye.com/blog/423419
D语言编译器DMD 2.065已经发布了,D语言经过近年来的努力终于取得不错的成绩!这个版本包含了大量问题修复和改进,真是值得敬佩
Schematic-FLD3 DMD Board DLP TI
Dynamic Mode Decomposition (DMD).zip
DMD2-master_DMD_源码.zip
DMD Matrix source code
DMD回归模型PPT课件.pptx
用于了解DMD的文档。 dmd可以用于结构光超分辨显微镜。
3. 支持所有主流DMD. 0.55” XGA, SVGA, 0.7” XGA DDR DMD;支持0.55” 480p, 576p DMD; 4. 全新DMD本征分辨率为4:3的1024 X 768。(注意不同于其他系统的16:9的DMD,与电脑输出图像不是点对点的关系,有压缩或扩大...
DMD606使用手册pdf,DMD606使用手册
DMD芯片显示原理详解.doc