[racket] Racket on Centos 5
Most of those aren't used at all, and the others turn out to be easy to
work around.
I've pushed changes to our source repo that make DrRacket start under a
CentOS 5.5 virtual-machine installation.
At Tue, 29 Mar 2011 11:22:53 +0200, "keydana at gmx.de" wrote:
> Thanks a lot for your reply! Unfortunately, continuing the same procedure and
> ending up having made unavailable the following functions:
>
> in cairo.rkt:
>
> cairo_clip_extents
> cairo_pattern_get_color_stop_count
> cairo_pattern_get_color_stop_rgba
> cairo_pattern_get_rgba
> cairo_pattern_get_surface (
> cairo_pattern_get_linear_points
> cairo_pattern_get_radial_circles
>
> in pango.rkt:
>
> pango_layout_iter_get_run_readonly
> pango_language_get_default
> pango_layout_get_unknown_glyphs_count
>
> drracket tries to start, but the pango stuff seems to be really needed (see
> detailed stack trace below).
> So I assume that for drracket there's nothing to be done, is it?
> The one executable I got to start without errors (that is to say, I tried mred
> too, it started but with errors) was mred-text - would it be possible to work
> with this one (I didn't even know it existed before...) if one doesn't need
> any graphics?
>
> Thanks again,
> Sigrid
>
> $ drracket
> pango_layout_get_unknown_glyphs_count: implementation not found; arguments:
> #<cpointer:PangoLayout>
>
> === context ===
> /home/oracle/racket/collects/racket/draw/private/font.rkt:87:0:
> has-screen-glyph?
> /home/oracle/racket/collects/racket/private/map.rkt:72:11: andmap
> /home/oracle/racket/collects/drracket/tool-lib.rkt: [running body]
> /home/oracle/racket/collects/drracket/private/drracket-normal.rkt: [running
> body]
> /home/oracle/racket/collects/drracket/drracket.rkt: [running body]
>
> pango_layout_iter_get_run_readonly: implementation not found; arguments:
> #<cpointer:PangoLayoutIter>
>
> === context ===
> /home/oracle/racket/collects/racket/draw/private/dc.rkt:1435:4:
> extract-only-run method in dc%
> /home/oracle/racket/collects/racket/draw/private/dc.rkt:1167:4: do-text method
> in dc%
> /home/oracle/racket/collects/racket/draw/private/dc.rkt:1128:4: core
> /home/oracle/racket/collects/racket/snip/private/style.rkt:885:2:
> reset-text-metrics method in style%
> /home/oracle/racket/collects/racket/snip/private/style.rkt:900:2:
> get-text-height method in style%
> /home/oracle/racket/collects/racket/snip/private/snip.rkt:429:2: core
> /home/oracle/racket/collects/mred/private/wxme/mline.rkt:1082:7: loop
> /home/oracle/racket/collects/mred/private/wxme/mline.rkt:1077:2: update-here
> /home/oracle/racket/collects/mred/private/wxme/mline.rkt:1072:0:
> update-graphics
> /home/oracle/racket/collects/mred/private/wxme/text.rkt:4692:2: core
> /home/oracle/racket/collects/mred/private/wxme/text.rkt:4845:2: redraw method
> in text%
> /home/oracle/racket/collects/mred/private/wxme/editor-canvas.rkt:968:2: core
> /home/oracle/racket/collects/racket/private/more-scheme.rkt:149:2:
> call-with-break-parameterization
> /home/oracle/racket/collects/racket/private/more-scheme.rkt:265:2:
> call-with-exception-handler
> /home/oracle/racket/collects/racket/private/class-internal.rkt:3511:0:
> continue-make-object
> /home/oracle/racket/collects/racket/private/class-internal.rkt:3433:2:
> make-object
> ...
>
> about to suspend in atomic mode
> Aborted
>
>
>
>
>
> Am 28.03.2011 um 22:37 schrieb Matthew Flatt:
>
> > Sorry, I'd lost track of this one.
> >
> > The cairo_clip_extents() function is used to implement the `is-empty?
> > method of region%, for which I can find no uses anywhere in the Racket
> > source tree.
> >
> > So, if you change "collects/draw/unsafe/cairo.rkt" around line 124 to
> >
> > (define-cairo cairo_clip_extents (_fun _cairo_t
> > (x1 : (_ptr o _double))
> > (y1 : (_ptr o _double))
> > (x2 : (_ptr o _double))
> > (y2 : (_ptr o _double))
> > -> _void
> > -> (values x1 y1 x2 y2))
> > ;; Adding this part:
> > #:make-fail make-not-available)
> >
> > does that fix the problem, or are there other missing functions?
> >
> >
> > At Mon, 28 Mar 2011 22:05:09 +0200, "keydana at gmx.de" wrote:
> >> Hi,
> >>
> >> I've encountered the exactly same problem today, running on Oracle Linux (=
> >> Red Hat 5.5, approximately)...
> >> Would anyone know a workaround for this, or if any not-too-outdated racket
> >> version would run with the old libcairo version?
> >>
> >> Unfortunately I have no alternative to installing racket on some
> RedHat-like
> >> system in a VM, for the present purpose...
> >>
> >> Many thanks for any ideas,
> >> Sigrid
> >>
> >>
> >>
> >>
> >>>
> >>>
> >>> ------------------------------
> >>>
> >>> Message: 3
> >>> Date: Tue, 01 Mar 2011 22:48:20 -0500
> >>> From: Neil Van Dyke <neil at neilvandyke.org>
> >>> To: Ritchie Cai <ritchiecai at gmail.com>
> >>> Cc: users at racket-lang.org
> >>> Subject: Re: [racket] Racket on Centos 5
> >>> Message-ID: <4D6DBE04.3070806 at neilvandyke.org>
> >>> Content-Type: text/plain; charset=ISO-8859-1; format=flowed
> >>>
> >>> Apparently CentOS 5.5 packages Cairo version 1.2.4.
> >>>
> >>> Looks like "cairo_clip_extents" was introduced in Cairo snapshot version
> >>> 1.3.2.
> >>>
> >>> So, "cairo_clip_extents" was introduced in the development stream in
> >>> November 15th, 2006, four years ago, but the RHEL distro (and therefore,
> >>> CentOS) has not picked it up. Seems like RHEL/CentOS are as bad for
> >>> recent-era libraries as Debian Stable. (Matthew Flatt graciously added
> >>> compatibility with the old GTK-related library versions on the Debian
> >>> Stable distros that I tend to use.)
> >>>
> >>> Looks like the recently released RHEL 6 has Cairo 1.8.8 or later (which
> >>> should be fine for DrRacket), but CentOS 6 is not yet available. I
> >>> don't know what Cairo version CentOS 5.6 will have.
> >>>
> >>> Ritchie Cai wrote at 03/01/2011 10:09 PM:
> >>>> Centos 5.5, [...] ffi-obj: couldn't get "cairo_clip_extents" from
> >> "libcairo.so.2" (/usr/lib64/libcairo.so.2: undefined symbol:
> >> cairo_clip_extents)
> >>>>
> >>>
> >>> --
> >>> http://www.neilvandyke.org/
> >>>
> >>
> >>
> >> _________________________________________________
> >> For list-related administrative tasks:
> >> http://lists.racket-lang.org/listinfo/users