Fix problems with missing libtiff versions

If you're coding on or porting to IRIX, this is the forum for discussion.
Post Reply
User avatar
LarBob
Posts: 62
Joined: Mon Dec 25, 2017 4:08 pm
Location: Kentucky, United States
Contact:

Fix problems with missing libtiff versions

Post by LarBob » Sun May 27, 2018 11:09 pm

So on my machine I seem to only have access to libtiff.so.6. Problematically, some things require different versions. For example, neko_wesnoth-0.9.5 requires libtiff.so.3, but you only get libtiff.so.6. Thankfully, there's a simple fix. You need a hex editor for this, I will use hexedit.
Many times, you can just get away with creating a symbolic link from libtiff.so.6 to libtiff.so.3, however, that will not work in many cases as the programs will actually look for a specific version within the library. For example, wesnoth looks for version 'sgi3.7'.
Run

Code: Select all

cp /usr/nekoware/lib/libtiff.so.6 /usr/nekoware/lib/libtiff.so.3
to create a copy that we will modify with hexedit.
Then, use hexedit to replace every occurrence of libtiff.so.6

Code: Select all

6c6962746966662e736f2e36
to libtiff.so.3

Code: Select all

6c6962746966662e736f2e33
by searching with Ctrl + S. (You should also just be able to switch to searching ASCII by pressing tab but on the nekoware version of hexedit that seems to do nothing.)
Do this same thing to change every occurrence of sgi6.0

Code: Select all

736769362e30
to sgi3.7

Code: Select all

736769332e37
.
Obviously in some cases you may need to change the strings mentioned here to whatever you need to fit your issue.
This procedure might also work for issues like this with some other libraries. Hope this helped. :)
:Octane: Aezora - Octane - 2xR10k 250 MHz - SI Graphics - 1 GB RAM - 6.5.30f
:O2: Kiki - O2 - R5k 180 MHz - 192 MB RAM - Currently dead
:O3x0-2: Calcifer - Origin 300 - 4xR14k 500 MHz - 2 GB RAM - 6.5.30m
:O3x0-2: Tohru - Origin 350 - 4xR16k 800 MHz - 4 GB RAM - 6.5.30m - on loan from Raion
Mirrors

necron2600
Posts: 21
Joined: Tue May 22, 2018 11:44 pm

Re: Fix problems with missing libtiff versions

Post by necron2600 » Tue May 29, 2018 2:29 pm

I have found many libs that were needed to make several nekoware apps work.. especially when working with beta packages that replace things such as libtiff. I always toyed with the idea of creating a nekoware package 'neko_legacysupport' (or something like that) that contained obsolete and older libs that may be needed.

Here is the approach I went with, basically stuffing older libs extracted from obsolete tardists into /opt/lib32/
libtiff.so.3 does exist in nekoware's obsolete packages.
Then set LD_LIBRARYN32_PATH to include /opt/lib32 when necessary (even in a wrapper script):

Code: Select all

[octane]:/opt/lib32 $ ls
libFLAC++.so.7.0    libdb-4.4.la      libdb_cxx.a           libldap-2.3.so.1.14  libpixops.so.1.0
libFLAC.so.5        libdb-4.4.so      libdb_cxx.so          libldap-2.4.so.3     libssl.so.0.9.8
libHalf.so.3        libdb-4.so        libgcc_s.so.1         liblualib.so.5.0     libstdc++.so.7
libIex.so.3         libdb.a           libgdk_pixbuf.so.3    liblzo2.a            libtheoradec.so.2
libIlmImf.so.3      libdb.so          libgdk_pixbuf.so.3.0  liblzo2.la           libtheoradec.so.2.4
libImath.so.3       libdb_cxx-4.4.a   libguile-ltdl.so.2.0  libpcre.so.1.1       libtiff.so.3
libcrypto.so.0.9.8  libdb_cxx-4.4.la  libguile.so.13.0      libpixops.la         libtiff.so.3.8
libcurl.so.4        libdb_cxx-4.4.so  liblber-2.3.so.1.14   libpixops.so         ligcc-and-libstdc++-are-for-sdlmame
libdb-4.4.a         libdb_cxx-4.so    liblber-2.4.so.3      libpixops.so.1
I am not saying this is the best way to do it.. just presenting another idea.

User avatar
LarBob
Posts: 62
Joined: Mon Dec 25, 2017 4:08 pm
Location: Kentucky, United States
Contact:

Re: Fix problems with missing libtiff versions

Post by LarBob » Tue May 29, 2018 5:38 pm

necron2600 wrote:
Tue May 29, 2018 2:29 pm
I have found many libs that were needed to make several nekoware apps work.. especially when working with beta packages that replace things such as libtiff. I always toyed with the idea of creating a nekoware package 'neko_legacysupport' (or something like that) that contained obsolete and older libs that may be needed.

Here is the approach I went with, basically stuffing older libs extracted from obsolete tardists into /opt/lib32/
libtiff.so.3 does exist in nekoware's obsolete packages.
Then set LD_LIBRARYN32_PATH to include /opt/lib32 when necessary (even in a wrapper script):

Code: Select all

[octane]:/opt/lib32 $ ls
libFLAC++.so.7.0    libdb-4.4.la      libdb_cxx.a           libldap-2.3.so.1.14  libpixops.so.1.0
libFLAC.so.5        libdb-4.4.so      libdb_cxx.so          libldap-2.4.so.3     libssl.so.0.9.8
libHalf.so.3        libdb-4.so        libgcc_s.so.1         liblualib.so.5.0     libstdc++.so.7
libIex.so.3         libdb.a           libgdk_pixbuf.so.3    liblzo2.a            libtheoradec.so.2
libIlmImf.so.3      libdb.so          libgdk_pixbuf.so.3.0  liblzo2.la           libtheoradec.so.2.4
libImath.so.3       libdb_cxx-4.4.a   libguile-ltdl.so.2.0  libpcre.so.1.1       libtiff.so.3
libcrypto.so.0.9.8  libdb_cxx-4.4.la  libguile.so.13.0      libpixops.la         libtiff.so.3.8
libcurl.so.4        libdb_cxx-4.4.so  liblber-2.3.so.1.14   libpixops.so         ligcc-and-libstdc++-are-for-sdlmame
libdb-4.4.a         libdb_cxx-4.so    liblber-2.4.so.3      libpixops.so.1
I am not saying this is the best way to do it.. just presenting another idea.
This is probably the better way. (any chance you'd upload a .tar.gz with all of those? ;) )
:Octane: Aezora - Octane - 2xR10k 250 MHz - SI Graphics - 1 GB RAM - 6.5.30f
:O2: Kiki - O2 - R5k 180 MHz - 192 MB RAM - Currently dead
:O3x0-2: Calcifer - Origin 300 - 4xR14k 500 MHz - 2 GB RAM - 6.5.30m
:O3x0-2: Tohru - Origin 350 - 4xR16k 800 MHz - 4 GB RAM - 6.5.30m - on loan from Raion
Mirrors

necron2600
Posts: 21
Joined: Tue May 22, 2018 11:44 pm

Re: Fix problems with missing libtiff versions

Post by necron2600 » Tue May 29, 2018 10:46 pm

I tried to upload a tarball (gzipped and zipped).. but had no luck attaching larger files here (even 4MB size seemed to have trouble)

In the meantime anyone can d/l the tarball from the following link until I can stash it somewhere here:

http://www.darklab.net/irix/opt-lib32.tgz

User avatar
LarBob
Posts: 62
Joined: Mon Dec 25, 2017 4:08 pm
Location: Kentucky, United States
Contact:

Re: Fix problems with missing libtiff versions

Post by LarBob » Wed May 30, 2018 12:54 am

necron2600 wrote:
Tue May 29, 2018 10:46 pm
I tried to upload a tarball (gzipped and zipped).. but had no luck attaching larger files here (even 4MB size seemed to have trouble)

In the meantime anyone can d/l the tarball from the following link until I can stash it somewhere here:

http://www.darklab.net/irix/opt-lib32.tgz
Thanks! Also, just letting you know in case you didn't realize, your site doesn't work properly if you neglect to include the www. when going to it. Maybe that's on purpose, but in the case it isn't, I wanted to let you know. ;)
:Octane: Aezora - Octane - 2xR10k 250 MHz - SI Graphics - 1 GB RAM - 6.5.30f
:O2: Kiki - O2 - R5k 180 MHz - 192 MB RAM - Currently dead
:O3x0-2: Calcifer - Origin 300 - 4xR14k 500 MHz - 2 GB RAM - 6.5.30m
:O3x0-2: Tohru - Origin 350 - 4xR16k 800 MHz - 4 GB RAM - 6.5.30m - on loan from Raion
Mirrors

Post Reply