[cello-devel] Compiling

Kenneth Tilton kentilton at gmail.com
Sat May 29 23:59:55 UTC 2010



Seth Burleigh wrote:
> OK, so heres my notes on compiling. I haven't yet got the example
> working, because of some missing functions. Any inputs on these missing
> functions, where are they? Also, while reading the install-notes, i came
> across this. Do i really need to do what it says? (ok , probably so, but
> im hoping)
> 
> ----------- BIG PROBLEM
> --------------------------------------------------------
> Libraries. For win32, the PC4 release includes the DLLs I use (well,
> except those you should find in /windows/system32). Linux/Mac OS X
> really have their work cut out for them. Building Freeglut and
> ImageMagick (and FreeType) may just work for you as typical Linux
> installs, but FTGL as I have done it requires to build with the included
> FTGLFromC.cpp and a modified FTGLExtrdFont.h built into the
> library .SO. 

FTGL now has a C interface. I think the effort of converting to that is 
where I stopped to rethink the wisdon of resuscitating Cello and decided 
against.

> -----------------------
> FUNCTIONS MISSING!!!:
> compiling cello:
> 
> ; compilation unit finished
> ;   Undefined functions:
> ;     CELLO::KEYSYM-SYM CELTK:MK-ARC CELTK:MK-BITMAP CELTK:MK-CANVAS
> CELTK:MK-CHECKBUTTON CELTK:MK-ENTRY CELTK:MK-FRAME-STACK CELTK:MK-LABEL
> CELTK:MK-LINE CELTK::MK-LISTBOX CELTK:MK-MENU
> CELTK:MK-MENU-ENTRY-CASCADE CELTK:MK-MENU-ENTRY-CHECKBUTTON
> CELTK:MK-MENU-ENTRY-COMMAND CELTK:MK-MENU-ENTRY-RADIOBUTTON
> CELTK:MK-MENU-ENTRY-SEPARATOR CELTK:MK-OVAL CELTK:MK-PANEDWINDOW
> CELTK:MK-POLYGON CELTK:MK-POPUP-MENUBUTTON CELTK:MK-RECTANGLE
> CELTK:MK-SCALE CELTK::MK-SCROLLBAR CELTK:MK-SCROLLED-LIST
> CELTK:MK-SPINBOX CELTK:MK-TEXT-ITEM CELTK:MK-TEXT-WIDGET
> GUI-GEOMETRY:PX-MAINTAIN-PL GUI-GEOMETRY:PX-MAINTAIN-PR
> GUI-GEOMETRY:PY-MAINTAIN-PB GUI-GEOMETRY:PY-MAINTAIN-PT
> CELTK::TOGL-CREATE-FUNC CELTK::TOGL-DESTROY-FUNC
> CELTK::TOGL-DISPLAY-FUNC CELTK:TOGL-RESHAPE-FUNC CELTK::TOGL-TIMER-FUNC
> GUI-GEOMETRY:^LR-WIDTH GUI-GEOMETRY:^OFFSET-WITHIN CELTK::|cb-CREATE|
> CELTK::|cb-DESTROY| CELTK::|cb-DISPLAY| CELTK::|cb-RESHAPE| CELTK::|
> cb-TIMER|
> ;   printed 63 notes
> 
> 
> compiling cellodemo:
> 
> ; compilation unit finished
> ;   Undefined functions:
> ;     PX-MAINTAIN-PL PY-MAINTAIN-PT ^FILL-PARENT-DOWN ^LB-HEIGHT
> ^LR-WIDTH
> ;   Undefined variable:
> ;     SELF
> ;   caught 2 WARNING conditions

My stuff compiles without warnings under the acl IDE, but asdf sucks so 
who knows? You'll find out at runtime.

> 
> 
> ----------------------------------
> celltk - in celtk.asd, some dependency isn't capitalized when it should
> be (linux is case sensitive) . Also, i had to do
> slime-restart-inferior-lisp multiple times and then (require 'celltk)
> again because of some bug in asd (i think its a bug anyways).
> 
> utils-kt in detritus.lisp - use closer-mop instead of mop
> 
> cl-rsrc.asd isn't another library, located in cl-freetype directory
> 
> cl-ftgl.asd doesn't specify dependency on cl-freetype
> cello.asd doesn't specify dependency on cl-ftgl
> 
> -----------------------------
> cl-freetype - add unix 
> 
> (defparameter *freetype-dynamic-lib-path* 
>   #+(or mswindows win32)
>   #p"/windows/system32/freetype6.dll"
> 
>   #+unix
>   #p"libfreetype.so"
> 
>   #+(or darwin macosx)
>   #p"/usr/X11R6/lib/libfreetype.dylib"
> )
> 
> (defparameter *default-face* :courier)
> 
> (defparameter *face-registry*
> 
>   #+unix
>   
> '((:helvetica :file
> #p"/usr/share/fonts/truetype/msttcorefonts/arial.ttf")
>     (:helvetica-bold :file
> #p"/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf")
>     (:helvetica-italic :file
> #p"/usr/share/fonts/truetype/msttcorefonts/ariali.ttf")
>     (:helvetica-bold-italic :file
> #p"/usr/share/fonts/truetype/msttcorefonts/arialbi.ttf")
>     (:courier :file
> #p"/usr/share/fonts/truetype/msttcorefonts/cour.ttf")
>     (:courier-bold :file
> #p"/usr/share/fonts/truetype/msttcorefonts/courbd.ttf")
>     (:courier-italic :file
> #p"/usr/share/fonts/truetype/msttcorefonts/couri.ttf")
>     (:courier-bold-italic :file
> #p"/usr/share/fonts/truetype/msttcorefonts/courbi.ttf")
>     (:times :file #p"/usr/share/fonts/truetype/msttcorefonts/times.ttf")
>     (:times-bold :file
> #p"/usr/share/fonts/truetype/msttcorefonts/timesbd.ttf")
>     (:times-italic :file
> #p"/usr/share/fonts/truetype/msttcorefonts/timesi.ttf")
>     (:times-bold-italic :file
> #p"/usr/share/fonts/truetype/msttcorefonts/timesbi.ttf")
>     (:symbol :file
> #p"/usr/share/fonts/truetype/ttf-symbol-replacement/symbol-replacement.ttf")
>     )
> 
> -----------------------------
> cffi-extender - change dft macro to add the deftype form
> 
> (defmacro dft (ctype ffi-type ffi-cast)
>   `(progn
>      (setf (get ',ctype 'ffi-cast) ',ffi-cast)
>      (defctype ,ctype ,ffi-type)
>      (deftype ,ctype () ',ffi-cast)
>      (eval-when (compile eval load)
>        (export ',ctype))))
> 
> 
> 

Yeah, that's the kind of crud you have to slog through. Until Cello 
builds reaches ten I do not think things will get much better.

kt




More information about the cello-devel mailing list