======OS - Linux - PCLinuxOS - Notes - libs32 symlinks for wine compile======
// This was used with ia32-libs package version ia32-libs-2021-16pclos2021. //
This is a script to create symlinks under /opt/libs32/ so the './configure' for wine compilation can find the 32-bit libraries with the names it expects to find.
First install the 'ia32-libs' package.
- Copy and past the below code to a new text file and save it as fix.sh.
- Mark the file as executable:chmod +x fix.sh
- Execute the file:./fix.sh
#!/bin/bash
# Location of the 32-bit file.so.NUMBER files.
libs32=/opt/libs32
# Gather all file.so.NUMBER and strip the directoryname.
# Exclude the file-VERSION.so.NUMBER files this round.
libs=`ls $libs32/*.so.[0-9]* | sed 's/\/opt\/libs32\///' | /bin/grep -v "\-[0-9]\.[0-9]\.so\.[0-9]"`
# For each file.so.NUMBER that was found...
for lib in $libs; do
# Split the filename on the period (.).
my_array=($(echo $lib | /usr/bin/tr "." "\n"))
# If the base filename with .so without number suffix does not exist, then...
if [ ! -x $libs32/${my_array[0]}.so ]; then
# Link the the filename to a .so without number suffix.
/bin/ln -s $lib $libs32/${my_array[0]}.so
fi
done
libs=`ls $libs32/*-[0-9]\.[0-9]*.so.[0-9]* | sed 's/\/opt\/libs32\///'`
# For each file-VERSION.so.NUMBER that was found...
for lib in $libs; do
# Split the filename on the dash (-).
my_array=($(echo $lib | /usr/bin/tr "-" "\n"))
# If the base filename with .so without version and number suffix does not exist, then...
if [ ! -x $libs32/${my_array[0]}.so ]; then
# Link the the filename to a .so without number suffix.
/bin/ln -s $lib $libs32/${my_array[0]}.so
fi
done
#
# Exceptions
#
if [ ! -x $libs32/libgstreamer-1.0.so ]; then
/bin/ln -s libgstreamer-1.0.so.0 $libs32/libgstreamer-1.0.so
fi
if [ ! -x $libs32/libusb-1.0.so ]; then
/bin/ln -s libusb-1.0.so.0 $libs32/libusb-1.0.so
fi