首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >clozure cl: cl-freetype2在windows 7上

clozure cl: cl-freetype2在windows 7上
EN

Stack Overflow用户
提问于 2013-06-16 06:56:09
回答 1查看 386关注 0票数 2

我正在使用clozure (版本1.8-r15286m)运行windows 7 64位系统,并安装了quicklisp。

我需要一些普通lisp的freetype2绑定。(将字符映射到符号+ kerning信息)

我尝试过使用

代码语言:javascript
复制
(ql:quickload "cl-freetype")

我遇到了几个问题。

  1. "grovel.lisp“(位于quicklisp/software/cffi_0.11.1/grovel/grovel.lisp中)假设gcc安装在"c:/msys/1.0/bin/gcc.exe”(我在path中有交融-gcc,但没有)。修正了在"grovel.lisp“中将"c:/msys/1.0/bin/gcc.exe”改为"gcc“。
  2. 当试图为freetype2编译cffi绑定时,同一个文件在将包含目录传递给编译器时不包含驱动器号(即,它将-i"/somedir"传递给gcc``而不是-i"d:/somedir" )。
  3. "grovel.lisp“试图包含unix包含目录。

我自己也修不了2号。我找到了这一讨论,尝试了两个列出的补丁,但它们都不起作用。(第一个中断cffi,因为ccl既找不到“名称-前缀”函数,也找不到“路径名称-前缀”函数),第二个没有解决问题。

在这种情况下我能做什么?我倾向于避免自己修复"groveller“,我只需要一些freetype2的绑定。基本上,我需要能够

  1. 加载真实字体。
  2. 将unicode字符映射为字形。
  3. 获取对字形的角化信息。
  4. 加载字形位图。

有什么想法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-06-16 15:15:19

弄明白了。

通过quicklisp安装cl-freetype2需要完全功能的MinGW安装。

  1. 确保安装了混合gmp。(mingw-get install gmp)
  2. 确保mingw/bin目录位于系统路径内(右击“我的计算机”->Properties->Advanced->Environment变量)。已经设定好了。应该类似于"D:/development/ MinGW /bin“(假设MinGW安装在”d:/development“中)。
  3. 在您的ccl安装中找到"grovel.lisp“,并将”c:/msys/1.0/bin/gcc.exe“替换为" gcc”。
  4. 发射混合炮弹。
  5. 下载解压缩并安装最新的Freetype2 tarball,使用".configure && make && make“,类似于unix环境。
  6. 找到freetype-6.dll,将其复制到freetype.dll中,并将freetype.dll移动到系统路径中的位置。
  7. (假设MinGW安装在“d:/development/MinGW”中),使用以下上下文创建CPATH用户环境变量:D:\development\MinGW\msys\1.0\local\include\freetype2;D:\development\MinGW\msys\1.0\local\include。也就是说,如果您在/usr编译期间没有指定“freetype2”前缀。
  8. 在mingw中,启动wx86cl并尝试(ql:quickload "cl-freetype2")。它应该能正常工作。
  9. 如果它仍然不能工作,那么在所有根目录驱动器中创建目录连接到安装了mingw的目录。(即"c:/development“链接到"d:/development”等)。

我必须承认,这很麻烦,所以我仍然认为,最好是创建一个小dll,在内部使用自由类型时提供我所需的最小功能集,然后使用cffi加载这个dll。这应该容易多了。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17130953

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档