Greetings,

Sorry for this late reply, but the last two weeks were quite busy for me.


On Thu, 22 Feb 2018 13:34:45 -0600, Nicky Perian wrote:

> I am in process of rebuilding all linux libraries.

So am I, since LL's new set of pre-built Linux libraries is totally broken
and unusable...

> I had in 2015 broken apart gtk-atk-pango-glib into individual autobuild 3p
> type repositories.

I'd recommend getting rid of the gtk-atk-pango dependencies... I mean, GTK2
is pretty much deprecated nowadays, with GTK3 out for a while and GTK4
arriving.

For the Cool VL Viewer, I rewrote the copy/paste code to use Xlib instead
of GTK+, and my code implements both the primary (mouse-select to copy and
middle mouse button to paste) and secondary (CTRL C/X/V) buffers.

I also got rid of the file selector (for all OSes) by implementing an
XUI-based one. Advantages:
- It is natively non-blocking (the GTK threading is a nightmare and does
  not play well with the viewer's own threading).
- Its code is MUCH simpler than LL's convoluted, OS-specific code and is
  largely OS-agnostic (but for a few #if LL_WINDOWS here and there to
  cope with the silly layout of the Windows file system).
- It provides an uniform experience to the user, whatever the OS they use,
  matching what they experience already with the rest of the viewer UI.

As for glib, do make sure to use the same version as the one linked to CEF
(libcef.so being built on Ubuntu 14.04 LTS, you should use the corresponding
glib version, namely v2.40.2).

One thing that you could get rid from as well is the old, deprecated and
broken (*) dbus-glib dependency: I rewrote dbus support using gdbus instead,
and it only takes 6 kB of sources (all inside llappviewerlinux.cpp) to do
what LL's dbus-glib implementation does with 18 kB (with 5 more files)...

As usual, feel free to LGPLize and reuse my code.

(*) "Recent" (post v0.92) dbus-glib versions got a server-side bug causing
    a timeout while the message was successfully passed...

> I have an issue with fontconfig. I cannot isolate freetype from the system
> version and have during configure 

You need to export FREETYPE_LIBS and list in that variable the full path
names of both your custom libfreetype.a and libz.a.

You can find the "sources" (often just a build script and patch(es), the
script taking care of downloading the upstream sources and patch them when
necessary) for the Linux libraries I rebuilt so far here:
http://sldev.free.fr/libraries/sources/

Note that I adopted Rosa 2014.1 for my (32 and 64 bits) build systems, with
Ubuntu 14.04 LTS also used, but only for Dullhan (so that the latter gets
the exact same dependencies as libcef.so: glib is one such dependency that
cannot be "forced" on CEF at Dullahan build time: CEF will keep using the
system glib version, no matter what, and since Rosa 2014.1 is using a newer
version, I'd better not build Dullahan on it if I want my viewer to run on
Ubuntu 14 and simlar systems...)
So to keep the lowest requirement on the libstdc++ library needed to run
the viewer, I also compiled and packaged gcc v4.8.5 for Rosa 2014.1 (Ubuntu
uses v4.8.4 and Rosa uses v4.9.4 as their system compiler) and use it to
build the libraries and the viewer; if you are interested, I could post the
Rosa 2014.1 RPM packages I built for gcc v4.8.5.


Henri.
_______________________________________________
Policies and (un)subscribe information available here:
http://wiki.secondlife.com/wiki/OpenSource-Dev
Please read the policies before posting to keep unmoderated posting privileges

Reply via email to