Re: Using X11 for an older program

2020-12-25 Thread Michael

On 2020-12-25, at 7:27 PM, Peter West  wrote:

> Thanks for that, Michael.
> 
> God bless you.

I do my best to bring humor wherever I can, no matter how silly it may seem.

> --
> Peter West
> p...@pbw.id.au
> “The Word was made flesh, he lived among us…”
> 
>> On 26 Dec 2020, at 12:47 pm, Michael  wrote:
>> 
>> 
>> On 2020-12-25, at 5:10 PM, Ken Cunningham  
>> wrote:
>>> 
>>> Oh, you have nothing to lose trying it.
>>> 
>>> If it doesn’t work, just set it back.
>>> 
>>> you can’t break anything. It’s just a computer, and it does what you tell 
>>> it to do.
>> 
>> You'd be amazed at how that's no longer true. My iPhone refuses to do what I 
>> tell it, it insists that it knows more than me.

---
This message was composed with the aid of a laptop cat, and no mouse



Re: Using X11 for an older program

2020-12-25 Thread Peter West
Thanks for that, Michael.

God bless you.
--
Peter West
p...@pbw.id.au
“The Word was made flesh, he lived among us…”

> On 26 Dec 2020, at 12:47 pm, Michael  wrote:
> 
> 
> On 2020-12-25, at 5:10 PM, Ken Cunningham  
> wrote:
>> 
>> Oh, you have nothing to lose trying it.
>> 
>> If it doesn’t work, just set it back.
>> 
>> you can’t break anything. It’s just a computer, and it does what you tell it 
>> to do.
> 
> You'd be amazed at how that's no longer true. My iPhone refuses to do what I 
> tell it, it insists that it knows more than me.
> 
> ---
> This message was composed with the aid of a laptop cat, and no mouse
> 



Re: Using X11 for an older program

2020-12-25 Thread Michael


On 2020-12-25, at 5:10 PM, Ken Cunningham  
wrote:
> 
> Oh, you have nothing to lose trying it.
> 
> If it doesn’t work, just set it back.
> 
> you can’t break anything. It’s just a computer, and it does what you tell it 
> to do.

You'd be amazed at how that's no longer true. My iPhone refuses to do what I 
tell it, it insists that it knows more than me.

---
This message was composed with the aid of a laptop cat, and no mouse



Re: Using X11 for an older program

2020-12-25 Thread Ken Cunningham



> On Dec 25, 2020, at 2:05 PM, Ryan Schmidt  wrote:
> 
> 
> 
> On Dec 21, 2020, at 20:55, Ken Cunningham wrote:
> 
>> There are likely to be more libraries missing after you fix this one, but 
>> you can try.
>> 
>> EIther symlink a real library that is the same or as similar as you have 
>> into the position being looked for:
>> 
>> sudo ln -s /opt/local/lib/libpng16.16.dylib /opt/X11/lib/libpng15.15.dylib
>> 
>> or
>> 
>> use install_name_tool to change /opt/local/lib/libpng16.16.dylib to 
>> /opt/X11/lib/libpng15.15.dylib in your binary.
>> 
>> install_name_tool -change  /opt/local/lib/libpng16.16.dylib 
>> /opt/X11/lib/libpng15.15.dylib /path/to/my/binary
> 
> Definitely do not do that. The filename has changed because version 15 and 
> version 16 are not meant to be interchangeable.
> 

Oh, you have nothing to lose trying it.

If it doesn’t work, just set it back.

you can’t break anything. It’s just a computer, and it does what you tell it to 
do.

K

Re: Using X11 for an older program

2020-12-25 Thread Ryan Schmidt



On Dec 21, 2020, at 21:01, Michael wrote:

> OK. Next question: Is there any reason I cannot install libpng version 15 at 
> the sametime?
> 
> I am aware that there is a non-versioned link file, that the latest version 
> of the dynamic library installs. That can stay at 16 where it belongs. I mean 
> specifically having both the libpng15 and the libpng16 files.
> 
> I am very surprised at linking to a specific version of a dynamic library. 
> This is actually commercial software, and it did not link to generic 
> "libpng", nor to generic "libpng15" -- linking to a specific version of a 
> dynamic library? Isn't the whole point of dynamic libraries that you don't 
> get a single specific buggy version, but the latest non-buggy version?

The developer of the library decides the granularity at which the library is 
versioned and decides what constitutes a backward incompatible change.

The developer of libpng has decided that all libpng 1.5.x versions are 
compatible with one another; they all use library name libpng15.15.dylib; and 
that all libpng 1.6.x versions are compatible with one another; they all use 
library name libpng16.16.dylib. You can install a newer version of libpng 1.6.x 
and all older programs linked with an older libpng 1.6.x will benefit from the 
improvements in libpng. But any old programs linking with libpng 1.5.x cannot 
automatically use libpng16.16.dylib because there have been backward 
incompatible changes in the library. The program must be recompiled / relinked 
and the source code of the program might need to be updated in order to use 
libpng16.16.dylib.



Re: Using X11 for an older program

2020-12-25 Thread Ryan Schmidt



On Dec 21, 2020, at 20:55, Ken Cunningham wrote:

> There are likely to be more libraries missing after you fix this one, but you 
> can try.
> 
> EIther symlink a real library that is the same or as similar as you have into 
> the position being looked for:
> 
> sudo ln -s /opt/local/lib/libpng16.16.dylib /opt/X11/lib/libpng15.15.dylib
> 
> or
> 
> use install_name_tool to change /opt/local/lib/libpng16.16.dylib to 
> /opt/X11/lib/libpng15.15.dylib in your binary.
> 
> install_name_tool -change  /opt/local/lib/libpng16.16.dylib 
> /opt/X11/lib/libpng15.15.dylib /path/to/my/binary

Definitely do not do that. The filename has changed because version 15 and 
version 16 are not meant to be interchangeable.



Re: Using X11 for an older program

2020-12-25 Thread Ryan Schmidt



On Dec 21, 2020, at 12:55, Michael wrote:

> This should be a simple one. I hope.
> 
> I just installed a program that was compiled against the release version of 
> mac's X11. Crashes on startup with this:
> 
> dyld: launch, loading dependent libraries
> 
> Dyld Error Message:
> Library not loaded: /opt/X11/lib/libpng15.15.dylib
> 
> What symbolic links do I need? /opt has no X11 directory.

You can make symlinks at /opt/X11/lib/libpng15.15.dylib pointing to wherever 
libpng15.15.dylib is on your system, or better yet, use install_name_tool to 
change the library references in that program to refer to wherever 
libpng15.15.dylib is on your system.

Don't try to symlink libpng15.15.dylib to libpng16.16.dylib or use 
install_name_tool to make that change. The library name has changed because 
they are not interchangeable. If they had been meant to be interchangeable, the 
library name would not have changed.


On Dec 21, 2020, at 13:34, Michael wrote:

> Ok, another question. I found this:
> 
> /opt/local/lib/libpng16.16.dylib
> 
> I cannot find the older version. What do I need to do to install both the 
> current and the older version of this library at the same time?

MacPorts provides only one version of libpng: the latest, currently version 
1.6.x, which has a library name libpng16.16.dylib. libpng15.15.dylib was 
probably libpng 1.5.x. You could manually compile the last libpng 1.5.x in some 
other prefix and then use install_name_tool to make the program you downloaded 
refer to it.

Ideally, of course, you'd recompile the other program so that it links with the 
current libpng16.16.dylib, if you have access to its source code.



Re: Using X11 for an older program

2020-12-22 Thread Bill Cole

On 21 Dec 2020, at 22:01, Michael wrote:

OK. Next question: Is there any reason I cannot install libpng version 
15 at the sametime?


Not really. Better to update the software that wants it to use a current 
version.


But the 1.5.x source is in the libpng site at Sourceforge, so you can 
still get it, build it, and install the libraries where you need them 
(/opt/X11/lib/)without affecting the v1.6.x version that MacPorts 
installs.




I am aware that there is a non-versioned link file, that the latest 
version of the dynamic library installs. That can stay at 16 where it 
belongs. I mean specifically having both the libpng15 and the libpng16 
files.


I am very surprised at linking to a specific version of a dynamic 
library. This is actually commercial software, and it did not link to 
generic "libpng", nor to generic "libpng15" -- linking to a specific 
version of a dynamic library? Isn't the whole point of dynamic 
libraries that you don't get a single specific buggy version, but the 
latest non-buggy version?


Yes and no. Versioned libraries exist because sometimes you really don't 
want to link to anything but the version that you built against. 
Sometimes interfaces change between versions, particularly "major" 
version changes such as in this case, and software using the library may 
be known to not be forward-compatible.


Also see below...


On 2020-12-21, at 6:55 PM, Ken Cunningham 
 wrote:


On 2020-12-21, at 10:55 AM, Michael  wrote: 
> This should be a simple one. I hope.


I just installed a program that was compiled against the release 
version of mac's X11. Crashes on startup with this:


dyld: launch, loading dependent libraries

Dyld Error Message:
Library not loaded: /opt/X11/lib/libpng15.15.dylib

What symbolic links do I need? /opt has no X11 directory.


That's a bad sign, and a hint that you need to do more than just install 
the right version of libpng.


The /opt/X11/ tree is where the "XQuartz" implementation of X11 installs 
itself, along with a whole universe of its own required libraries. It 
includes (in the last version, 2.7.11) 4 versions of libpng, with a 
symlink for the unversioned name to libpng16.16.dylib. This implies 
something of a mess in how the various binaries in the XQuartz package 
were built, but you cannot fix that. You have a pre-built commercial 
package that specifies at least one older version of a library as 
installed by XQuartz so you can expect that it will also be dependent on 
the whole collection of libraries installed by XQuartz.


If you lack /opt/X11/, you do not have XQuartz installed. Apple has not 
included ANY X implementation in recent macOS versions, so you will need 
to install XQuartz if you can't get a version of the failing software 
built to use the X implementation that is installed by MacPorts.



--
Bill Cole
b...@scconsult.com or billc...@apache.org
(AKA @grumpybozo and many *@billmail.scconsult.com addresses)
Not Currently Available For Hire


Re: Using X11 for an older program

2020-12-22 Thread Dominik Reichardt
Hi,

download and install xquartz from https://www.xquartz.org 
. This is the semi-official X11.app replacement. Did 
not get an update for four years now but it brings the needed libraries and 
installs in /opt/x11.

Good luck! :)

Dominik

> On 22. Dec 2020, at 08:50, Michael  wrote:
> 
> 
> On 2020-12-21, at 8:38 PM, Ken Cunningham  
> wrote:
> 
>> A thought — perhaps you might just take the easy road, and install the 
>> libraries it is looking for, in /opt/X11
>> 
>> what is that, XQuartz? 
> 
> Except that the current version of XQuartz is, as I understand it, what 
> Macports provides.
> 
> i.e. -- my choice is either an 8 year old apple build, or a current Macport 
> build.
> 
> (If I'm wrong here, please tell me.)
> 
>> 
>> K
>> 
>>> On Dec 21, 2020, at 7:01 PM, Michael  wrote:
>>> 
>>> OK. Next question: Is there any reason I cannot install libpng version 15 
>>> at the sametime?
>>> 
>>> I am aware that there is a non-versioned link file, that the latest version 
>>> of the dynamic library installs. That can stay at 16 where it belongs. I 
>>> mean specifically having both the libpng15 and the libpng16 files.
>>> 
>>> I am very surprised at linking to a specific version of a dynamic library. 
>>> This is actually commercial software, and it did not link to generic 
>>> "libpng", nor to generic "libpng15" -- linking to a specific version of a 
>>> dynamic library? Isn't the whole point of dynamic libraries that you don't 
>>> get a single specific buggy version, but the latest non-buggy version?
>>> 
>>> On 2020-12-21, at 6:55 PM, Ken Cunningham  
>>> wrote:
>>> 
> On 2020-12-21, at 10:55 AM, Michael  wrote: > 
> This should be a simple one. I hope. 
>> 
>> I just installed a program that was compiled against the release version 
>> of mac's X11. Crashes on startup with this: 
>> 
>> dyld: launch, loading dependent libraries 
>> 
>> Dyld Error Message: 
>> Library not loaded: /opt/X11/lib/libpng15.15.dylib 
>> 
>> What symbolic links do I need? /opt has no X11 directory. 
> Ok, another question. I found this: /opt/local/lib/libpng16.16.dylib I 
> cannot find the older version. What do I need to do to install both the 
> current and the older version of this library at the same time? 
 
 There are likely to be more libraries missing after you fix this one, but 
 you can try.
 
 EIther symlink a real library that is the same or as similar as you have 
 into the position being looked for:
 
 sudo ln -s /opt/local/lib/libpng16.16.dylib /opt/X11/lib/libpng15.15.dylib
 
 or
 
 use install_name_tool to change /opt/local/lib/libpng16.16.dylib to 
 /opt/X11/lib/libpng15.15.dylib in your binary.
 
 install_name_tool -change  /opt/local/lib/libpng16.16.dylib 
 /opt/X11/lib/libpng15.15.dylib /path/to/my/binary
 
 
 You can see that there are many many ways this could break / not work at 
 all. 
 
 But it sometimes works, if you’re lucky, and the libraries are very close 
 to what is being looked for.
 
 K
>>> 
>>> ---
>>> This message was composed with the aid of a laptop cat, and no mouse
>>> 
>> 
> 
> ---
> Entertaining minecraft videos
> http://YouTube.com/keybounce
> 



Re: Using X11 for an older program

2020-12-21 Thread Michael


On 2020-12-21, at 8:38 PM, Ken Cunningham  
wrote:

> A thought — perhaps you might just take the easy road, and install the 
> libraries it is looking for, in /opt/X11
> 
> what is that, XQuartz? 

Except that the current version of XQuartz is, as I understand it, what 
Macports provides.

i.e. -- my choice is either an 8 year old apple build, or a current Macport 
build.

(If I'm wrong here, please tell me.)

> 
> K
> 
>> On Dec 21, 2020, at 7:01 PM, Michael  wrote:
>> 
>> OK. Next question: Is there any reason I cannot install libpng version 15 at 
>> the sametime?
>> 
>> I am aware that there is a non-versioned link file, that the latest version 
>> of the dynamic library installs. That can stay at 16 where it belongs. I 
>> mean specifically having both the libpng15 and the libpng16 files.
>> 
>> I am very surprised at linking to a specific version of a dynamic library. 
>> This is actually commercial software, and it did not link to generic 
>> "libpng", nor to generic "libpng15" -- linking to a specific version of a 
>> dynamic library? Isn't the whole point of dynamic libraries that you don't 
>> get a single specific buggy version, but the latest non-buggy version?
>> 
>> On 2020-12-21, at 6:55 PM, Ken Cunningham  
>> wrote:
>> 
 On 2020-12-21, at 10:55 AM, Michael  wrote: > This 
 should be a simple one. I hope. 
> 
> I just installed a program that was compiled against the release version 
> of mac's X11. Crashes on startup with this: 
> 
> dyld: launch, loading dependent libraries 
> 
> Dyld Error Message: 
> Library not loaded: /opt/X11/lib/libpng15.15.dylib 
> 
> What symbolic links do I need? /opt has no X11 directory. 
 Ok, another question. I found this: /opt/local/lib/libpng16.16.dylib I 
 cannot find the older version. What do I need to do to install both the 
 current and the older version of this library at the same time? 
>>> 
>>> There are likely to be more libraries missing after you fix this one, but 
>>> you can try.
>>> 
>>> EIther symlink a real library that is the same or as similar as you have 
>>> into the position being looked for:
>>> 
>>> sudo ln -s /opt/local/lib/libpng16.16.dylib /opt/X11/lib/libpng15.15.dylib
>>> 
>>> or
>>> 
>>> use install_name_tool to change /opt/local/lib/libpng16.16.dylib to 
>>> /opt/X11/lib/libpng15.15.dylib in your binary.
>>> 
>>> install_name_tool -change  /opt/local/lib/libpng16.16.dylib 
>>> /opt/X11/lib/libpng15.15.dylib /path/to/my/binary
>>> 
>>> 
>>> You can see that there are many many ways this could break / not work at 
>>> all. 
>>> 
>>> But it sometimes works, if you’re lucky, and the libraries are very close 
>>> to what is being looked for.
>>> 
>>> K
>> 
>> ---
>> This message was composed with the aid of a laptop cat, and no mouse
>> 
> 

---
Entertaining minecraft videos
http://YouTube.com/keybounce



Re: Using X11 for an older program

2020-12-21 Thread Ken Cunningham
A thought — perhaps you might just take the easy road, and install the 
libraries it is looking for, in /opt/X11

what is that, XQuartz? 

K

> On Dec 21, 2020, at 7:01 PM, Michael  wrote:
> 
> OK. Next question: Is there any reason I cannot install libpng version 15 at 
> the sametime?
> 
> I am aware that there is a non-versioned link file, that the latest version 
> of the dynamic library installs. That can stay at 16 where it belongs. I mean 
> specifically having both the libpng15 and the libpng16 files.
> 
> I am very surprised at linking to a specific version of a dynamic library. 
> This is actually commercial software, and it did not link to generic 
> "libpng", nor to generic "libpng15" -- linking to a specific version of a 
> dynamic library? Isn't the whole point of dynamic libraries that you don't 
> get a single specific buggy version, but the latest non-buggy version?
> 
> On 2020-12-21, at 6:55 PM, Ken Cunningham  
> wrote:
> 
>>> On 2020-12-21, at 10:55 AM, Michael  wrote: > This 
>>> should be a simple one. I hope. 
 
 I just installed a program that was compiled against the release version 
 of mac's X11. Crashes on startup with this: 
 
 dyld: launch, loading dependent libraries 
 
 Dyld Error Message: 
 Library not loaded: /opt/X11/lib/libpng15.15.dylib 
 
 What symbolic links do I need? /opt has no X11 directory. 
>>> Ok, another question. I found this: /opt/local/lib/libpng16.16.dylib I 
>>> cannot find the older version. What do I need to do to install both the 
>>> current and the older version of this library at the same time? 
>> 
>> There are likely to be more libraries missing after you fix this one, but 
>> you can try.
>> 
>> EIther symlink a real library that is the same or as similar as you have 
>> into the position being looked for:
>> 
>> sudo ln -s /opt/local/lib/libpng16.16.dylib /opt/X11/lib/libpng15.15.dylib
>> 
>> or
>> 
>> use install_name_tool to change /opt/local/lib/libpng16.16.dylib to 
>> /opt/X11/lib/libpng15.15.dylib in your binary.
>> 
>> install_name_tool -change  /opt/local/lib/libpng16.16.dylib 
>> /opt/X11/lib/libpng15.15.dylib /path/to/my/binary
>> 
>> 
>> You can see that there are many many ways this could break / not work at 
>> all. 
>> 
>> But it sometimes works, if you’re lucky, and the libraries are very close to 
>> what is being looked for.
>> 
>> K
> 
> ---
> This message was composed with the aid of a laptop cat, and no mouse
> 



Re: Using X11 for an older program

2020-12-21 Thread Michael
OK. Next question: Is there any reason I cannot install libpng version 15 at 
the sametime?

I am aware that there is a non-versioned link file, that the latest version of 
the dynamic library installs. That can stay at 16 where it belongs. I mean 
specifically having both the libpng15 and the libpng16 files.

I am very surprised at linking to a specific version of a dynamic library. This 
is actually commercial software, and it did not link to generic "libpng", nor 
to generic "libpng15" -- linking to a specific version of a dynamic library? 
Isn't the whole point of dynamic libraries that you don't get a single specific 
buggy version, but the latest non-buggy version?

On 2020-12-21, at 6:55 PM, Ken Cunningham  
wrote:

>> On 2020-12-21, at 10:55 AM, Michael  wrote: > This 
>> should be a simple one. I hope. 
>>> 
>>> I just installed a program that was compiled against the release version of 
>>> mac's X11. Crashes on startup with this: 
>>> 
>>> dyld: launch, loading dependent libraries 
>>> 
>>> Dyld Error Message: 
>>> Library not loaded: /opt/X11/lib/libpng15.15.dylib 
>>> 
>>> What symbolic links do I need? /opt has no X11 directory. 
>> Ok, another question. I found this: /opt/local/lib/libpng16.16.dylib I 
>> cannot find the older version. What do I need to do to install both the 
>> current and the older version of this library at the same time? 
> 
> There are likely to be more libraries missing after you fix this one, but you 
> can try.
> 
> EIther symlink a real library that is the same or as similar as you have into 
> the position being looked for:
> 
> sudo ln -s /opt/local/lib/libpng16.16.dylib /opt/X11/lib/libpng15.15.dylib
> 
> or
> 
> use install_name_tool to change /opt/local/lib/libpng16.16.dylib to 
> /opt/X11/lib/libpng15.15.dylib in your binary.
> 
> install_name_tool -change  /opt/local/lib/libpng16.16.dylib 
> /opt/X11/lib/libpng15.15.dylib /path/to/my/binary
> 
> 
> You can see that there are many many ways this could break / not work at all. 
> 
> But it sometimes works, if you’re lucky, and the libraries are very close to 
> what is being looked for.
> 
> K

---
This message was composed with the aid of a laptop cat, and no mouse



Re: Using X11 for an older program

2020-12-21 Thread Ken Cunningham
> On 2020-12-21, at 10:55 AM, Michael  wrote: > This 
> should be a simple one. I hope. 
> > 
> > I just installed a program that was compiled against the release version of 
> > mac's X11. Crashes on startup with this: 
> > 
> > dyld: launch, loading dependent libraries 
> > 
> > Dyld Error Message: 
> > Library not loaded: /opt/X11/lib/libpng15.15.dylib 
> > 
> > What symbolic links do I need? /opt has no X11 directory. 
> Ok, another question. I found this: /opt/local/lib/libpng16.16.dylib I cannot 
> find the older version. What do I need to do to install both the current and 
> the older version of this library at the same time? 

There are likely to be more libraries missing after you fix this one, but you 
can try.

EIther symlink a real library that is the same or as similar as you have into 
the position being looked for:

sudo ln -s /opt/local/lib/libpng16.16.dylib /opt/X11/lib/libpng15.15.dylib

or

use install_name_tool to change /opt/local/lib/libpng16.16.dylib to 
/opt/X11/lib/libpng15.15.dylib in your binary.

install_name_tool -change  /opt/local/lib/libpng16.16.dylib 
/opt/X11/lib/libpng15.15.dylib /path/to/my/binary


You can see that there are many many ways this could break / not work at all. 

But it sometimes works, if you’re lucky, and the libraries are very close to 
what is being looked for.

K

Re: Using X11 for an older program

2020-12-21 Thread Michael


On 2020-12-21, at 10:55 AM, Michael  wrote:

> This should be a simple one. I hope.
> 
> I just installed a program that was compiled against the release version of 
> mac's X11. Crashes on startup with this:
> 
> dyld: launch, loading dependent libraries
> 
> Dyld Error Message:
> Library not loaded: /opt/X11/lib/libpng15.15.dylib
> 
> What symbolic links do I need? /opt has no X11 directory.

Ok, another question. I found this:

/opt/local/lib/libpng16.16.dylib

I cannot find the older version. What do I need to do to install both the 
current and the older version of this library at the same time?