[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Denemo-devel] Static Linking (was Re: tablature status (August 2012

From: Richard Shann
Subject: Re: [Denemo-devel] Static Linking (was Re: tablature status (August 2012))
Date: Sat, 25 Aug 2012 09:01:36 +0100

On Fri, 2012-08-24 at 23:35 -0500, Jeremiah Benham wrote:
> On 08/24/2012 06:18 AM, Richard Shann wrote:
> > This looks like excellent progress.
> > I think you just need to include the relevant glibc library. What may
> > have you confused is there are two completely different libraries, glib
> > and glibc. The first is part of gtk, it gives us g_list_new() and such
> > like stuff. The second is part of gcc, it gives us printf and so on
> > (that is, it is the standard C library). I am guessing that the old
> > version of Ubuntu had an old (<2.15) version of glibc installed
> > system-wide, but this couldn't be used. So what you have created might
> > execute on some linux distros. Well, once the GUILE_LOAD_PATH is set...
> Unfortunately I am not getting a segfault. I do know what to do now. It 
> segfaults after I added the libglib libraries. When the libglib libs are 
> not there I get this error:
> ./bin/denemo: symbol lookup error: lib/ undefined 
> symbol: g_date_time_unref
> I looked up that this is located in libglib. 
The segfault would indicate that you have a mixture of library versions
being picked up - you said you copied libraries into your packaged lib
directory until it had everything resolved, but this could still leave
it resolving some symbols with a library in the system-wide directory.
You would hope it would check a version number before using it, but
perhaps it doesn't in some circumstances. I guess it is also possible
that the libraries (especially glibc) would be built for a specific
kernel version. In that case, it is too ambitious to test against an old
version of Ubuntu. The best we could hope for is for it to work with
reasonably modern versions. It may be that you always have to use the
glibc library from the system-wide directory as that may be closely tied
to the kernel version.

>  I have not set the 
> GUILE_LOAD_PATH yet. I am not sure if that would cause the segfault. 
No, it won't cause a segfault, it will just complain as it starts to
execute denemo.scm (or rather fail to find it).
> The 
> GUILE_LOAD_PATH is supposed to be share/actions then?
I am not sure, but it will be fairly easy to sort out. At the moment it
seems that $prefix/share/denemo is added to GUILE_LOAD_PATH for
non-windows build.  I would have thought that should have /actions
> If this actually works, I could use the similar process to create a Mac 
> os X version.

As it stands it looks like knowing the linux kernel version that osx is
built on will help with that.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]