[HarfBuzz] How to uninstall harfbuzz?

Kelvin Ma kelvinsthirteen at gmail.com
Wed Aug 3 02:37:54 UTC 2016


i got it taken care of internally with this

import sys
from os import environ, execv
hb_lib_path                = environ['HOME'] + '/HB/lib'
environ['GI_TYPELIB_PATH'] = hb_lib_path + '/girepository-1.0'
if environ.get('LD_LIBRARY_PATH') != hb_lib_path:
    environ['LD_LIBRARY_PATH'] = hb_lib_path
    execv(sys.argv[0], sys.argv)

On Tue, Aug 2, 2016 at 10:04 PM, Behdad Esfahbod <behdad at behdad.org> wrote:

> On Tue, Aug 2, 2016 at 6:15 PM, Kelvin Ma <kelvinsthirteen at gmail.com>
> wrote:
> > Thank you that worked! I didn't know you could set LD_LIBRARY_PATH from
> the
> > terminal. But how do I make it so it automatically sets it in the script?
>
> Either create a small shell-script that calls your app, or put the
> envvars in your ~/.bash_profile and reboot.  Google around for your
> distro and "how to set environment variable".
>
> > LD_LIBRARY_PATH=$HOME/HB/lib ./app.py doesn’t seem very user-friendly.
> >
> > On Tue, Aug 2, 2016 at 8:05 PM, Behdad Esfahbod <behdad at behdad.org>
> wrote:
> >>
> >> Start with:
> >>
> >> LD_LIBRARY_PATH=$HOME/HB/lib python sample.py
> >>
> >> On Tue, Aug 2, 2016 at 4:20 PM, Kelvin Ma <kelvinsthirteen at gmail.com>
> >> wrote:
> >> > well what is the “right” way to do it then ?
> >> >
> >> > On Tue, Aug 2, 2016 at 7:05 PM, Behdad Esfahbod <behdad at behdad.org>
> >> > wrote:
> >> >>
> >> >> Whatever.
> >> >>
> >> >> On Tue, Aug 2, 2016 at 3:42 PM, Kelvin Ma <kelvinsthirteen at gmail.com
> >
> >> >> wrote:
> >> >> > No, environ['LD_LIBRARY_PATH'] = '/usr/local/lib/girepository-1.0'
> >> >> > with
> >> >> > harfbuzz installed in /usr/local works correctly, but
> >> >> > environ['LD_LIBRARY_PATH'] = '/home/kelvin/HB/lib/girepository-1.0'
> >> >> > with
> >> >> > harfbuzz installed in /home/kelvin/HB does not. That's the problem
> >> >> > i'm
> >> >> > having, harfbuzz in /usr/local works fine.
> >> >> >
> >> >> > On Tue, Aug 2, 2016 at 6:34 PM, Behdad Esfahbod <behdad at behdad.org
> >
> >> >> > wrote:
> >> >> >>
> >> >> >> On Tue, Aug 2, 2016 at 3:31 PM, Kelvin Ma
> >> >> >> <kelvinsthirteen at gmail.com>
> >> >> >> wrote:
> >> >> >> > environ['LD_LIBRARY_PATH'] = '/usr/local/lib/girepository-1.0'
> >> >> >>
> >> >> >> Try:
> >> >> >> environ['LD_LIBRARY_PATH'] = '/usr/local/lib'
> >> >> >>
> >> >> >> At any rate, I don't think setting LD_LIBRARY_PATH from current
> >> >> >> process affects the process itself.  You need to set this before
> >> >> >> calling python.  And that's all the help I can offer on this
> issue.
> >> >> >> Someone else told you exactly this before.
> >> >> >>
> >> >> >> > environ['GI_TYPELIB_PATH'] = '/usr/local/lib/girepository-1.0'
> >> >> >> >
> >> >> >> > from gi.repository import HarfBuzz as hb
> >> >> >> > from gi.repository import GLib
> >> >> >> >
> >> >> >> > fontdata = open(sys.argv[1], 'rb').read ()
> >> >> >> > text = sys.argv[2]
> >> >> >> > # Need to create GLib.Bytes explicitly until this bug is fixed:
> >> >> >> > # https://bugzilla.gnome.org/show_bug.cgi?id=729541
> >> >> >> > blob = hb.glib_blob_create (GLib.Bytes.new (fontdata))
> >> >> >> > face = hb.face_create (blob, 0)
> >> >> >> > del blob
> >> >> >> > font = hb.font_create (face)
> >> >> >> > upem = hb.face_get_upem (face)
> >> >> >> > del face
> >> >> >> > hb.font_set_scale (font, upem, upem)
> >> >> >> > hb.ot_font_set_funcs (font)
> >> >> >> >
> >> >> >> > buf = hb.buffer_create ()
> >> >> >> > class Debugger(object):
> >> >> >> >     def message (self, buf, font, msg, data, _x_what_is_this):
> >> >> >> >         print(msg)
> >> >> >> >         return True
> >> >> >> > debugger = Debugger()
> >> >> >> > hb.buffer_set_message_func (buf, debugger.message, 1, 0)
> >> >> >> >
> >> >> >> > hb.buffer_add_utf32 (buf, array.array('I',
> text.encode('utf-32')),
> >> >> >> > 0,
> >> >> >> > -1)
> >> >> >> >
> >> >> >> > hb.buffer_guess_segment_properties (buf)
> >> >> >> >
> >> >> >> > hb.shape (font, buf, [])
> >> >> >> > del font
> >> >> >> >
> >> >> >> > infos = hb.buffer_get_glyph_infos (buf)
> >> >> >> > positions = hb.buffer_get_glyph_positions (buf)
> >> >> >> >
> >> >> >> > for info,pos in zip(infos, positions):
> >> >> >> >     gid = info.codepoint
> >> >> >> >     cluster = info.cluster
> >> >> >> >     x_advance = pos.x_advance
> >> >> >> >     x_offset = pos.x_offset
> >> >> >> >     y_offset = pos.y_offset
> >> >> >> >
> >> >> >> >     print("gid%d=%d@%d,%d+%d" % (gid, cluster, x_advance,
> >> >> >> > x_offset,
> >> >> >> > y_offset))
> >> >> >> >
> >> >> >> > This works correctly when Harfbuzz is installed in usr/local/.
> >> >> >> >
> >> >> >> > However, if I sudo make uninstall, run ./configure
> --with-gobject
> >> >> >> > --enable-introspection --prefix=/home/kelvin/HB, and make
> install,
> >> >> >> > and
> >> >> >> > change the environment variables to
> >> >> >> >
> >> >> >> > environ['LD_LIBRARY_PATH'] =
> >> >> >> > '/home/kelvin/HB/lib/girepository-1.0'
> >> >> >> > environ['GI_TYPELIB_PATH'] =
> >> >> >> > '/home/kelvin/HB/lib/girepository-1.0'
> >> >> >> >
> >> >> >> > The script crashes like this:
> >> >> >> >
> >> >> >> > ~$ ./hbt.py NocturnoDisplay-Bk.otf effectiveness
> >> >> >> > ./hbt.py:11: PyGIWarning: HarfBuzz was imported without
> specifying
> >> >> >> > a
> >> >> >> > version
> >> >> >> > first. Use gi.require_version('HarfBuzz', '0.0') before import
> to
> >> >> >> > ensure
> >> >> >> > that the right version gets loaded.
> >> >> >> >   from gi.repository import HarfBuzz as hb
> >> >> >> >
> >> >> >> > ** (process:7354): WARNING **: Failed to load shared library
> >> >> >> > 'libharfbuzz-gobject.so.0' referenced by the typelib:
> >> >> >> > libharfbuzz-gobject.so.0: cannot open shared object file: No
> such
> >> >> >> > file
> >> >> >> > or
> >> >> >> > directory
> >> >> >> > Segmentation fault (core dumped)
> >> >> >> >
> >> >> >> > And yes, libharfbuzz-gobject.so.o is in the folder:
> >> >> >> >
> >> >> >> > ~/HB/lib$ ls
> >> >> >> > girepository-1.0                  libharfbuzz.la
> >> >> >> > libharfbuzz-gobject.la            libharfbuzz.so
> >> >> >> > libharfbuzz-gobject.so            libharfbuzz.so.0
> >> >> >> > libharfbuzz-gobject.so.0          libharfbuzz.so.0.10200.7
> >> >> >> > libharfbuzz-gobject.so.0.10200.7  pkgconfig
> >> >> >> >
> >> >> >> >
> >> >> >> > On Tue, Aug 2, 2016 at 5:52 PM, Behdad Esfahbod
> >> >> >> > <behdad at behdad.org>
> >> >> >> > wrote:
> >> >> >> >>
> >> >> >> >> On Tue, Aug 2, 2016 at 2:42 PM, Kelvin Ma
> >> >> >> >> <kelvinsthirteen at gmail.com>
> >> >> >> >> wrote:
> >> >> >> >> > ok thanks, but when I rebuild and install into ~/HB using
> >> >> >> >> > harfbuzz
> >> >> >> >> > (and
> >> >> >> >> > changing the environment variables to the new directory)
> >> >> >> >> > doesn't
> >> >> >> >> > work. I
> >> >> >> >> > get
> >> >> >> >>
> >> >> >> >> "doesn't work" is never enough.  It sure works for me.  Works
> for
> >> >> >> >> a
> >> >> >> >> thousand other people.  Only you can debug it.  For example, is
> >> >> >> >> libharfbuzz-gobject.so.o in ~/HB/lib?  If yes, is your
> >> >> >> >> LD_LIBRARY_PATH
> >> >> >> >> correctly set, try strace, does it look there, etc.
> >> >> >> >>
> >> >> >> >>
> >> >> >> >> > ** (kt.py:15896): WARNING **: Failed to load shared library
> >> >> >> >> > 'libharfbuzz-gobject.so.0' referenced by the typelib:
> >> >> >> >> > libharfbuzz-gobject.so.0: cannot open shared object file: No
> >> >> >> >> > such
> >> >> >> >> > file
> >> >> >> >> > or
> >> >> >> >> > directory
> >> >> >> >> >
> >> >> >> >> > and sometimes a bunch of other errors after it
> >> >> >> >> >
> >> >> >> >> > On Tue, Aug 2, 2016 at 5:31 PM, Behdad Esfahbod
> >> >> >> >> > <behdad at behdad.org>
> >> >> >> >> > wrote:
> >> >> >> >> >>
> >> >> >> >> >> "make uninstall"
> >> >> >> >> >>
> >> >> >> >> >> On Tue, Aug 2, 2016 at 2:28 PM, Kelvin Ma
> >> >> >> >> >> <kelvinsthirteen at gmail.com>
> >> >> >> >> >> wrote:
> >> >> >> >> >> > I want to move my harfbuzz installation out of root space
> >> >> >> >> >> > and
> >> >> >> >> >> > into
> >> >> >> >> >> > user
> >> >> >> >> >> > space, but I can't find uninstall info anywhere. How do I
> >> >> >> >> >> > uninstall
> >> >> >> >> >> > harfbuzz?
> >> >> >> >> >> >
> >> >> >> >> >> > _______________________________________________
> >> >> >> >> >> > HarfBuzz mailing list
> >> >> >> >> >> > HarfBuzz at lists.freedesktop.org
> >> >> >> >> >> > https://lists.freedesktop.org/mailman/listinfo/harfbuzz
> >> >> >> >> >> >
> >> >> >> >> >>
> >> >> >> >> >>
> >> >> >> >> >>
> >> >> >> >> >> --
> >> >> >> >> >> behdad
> >> >> >> >> >> http://behdad.org/
> >> >> >> >> >
> >> >> >> >> >
> >> >> >> >>
> >> >> >> >>
> >> >> >> >>
> >> >> >> >> --
> >> >> >> >> behdad
> >> >> >> >> http://behdad.org/
> >> >> >> >
> >> >> >> >
> >> >> >>
> >> >> >>
> >> >> >>
> >> >> >> --
> >> >> >> behdad
> >> >> >> http://behdad.org/
> >> >> >
> >> >> >
> >> >>
> >> >>
> >> >>
> >> >> --
> >> >> behdad
> >> >> http://behdad.org/
> >> >
> >> >
> >>
> >>
> >>
> >> --
> >> behdad
> >> http://behdad.org/
> >
> >
>
>
>
> --
> behdad
> http://behdad.org/
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/harfbuzz/attachments/20160802/841a5a65/attachment.html>


More information about the HarfBuzz mailing list