I am trying to install FreeSurfer: ftp://
I am following these steps to install FreeSurfer:
When I run following commands:
freeview -v \ bert/mri/T1.mgz \ bert/mri/wm.mgz \ bert/mri/brainmask.mgz \ bert/mri/aseg.mgz:colormap=lut:opacity=0.2 \ -f \ bert/surf/lh.white:edgecolor=blue \ bert/surf/lh.pial:edgecolor=red \ bert/surf/rh.white:edgecolor=blue \ bert/surf/rh.pial:edgecolor=redI get this error:
freeview.bin: error while loading shared libraries: libpng12.so.0: cannot open shared object file: No such file or directoryAnd when I am trying to install this package:
sudo apt-get install libpng12.so.0I am getting this error:
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package libpng12.0-0:i386
E: Couldn't find any package by glob 'libpng12.0-0'
E: Couldn't find any package by regex 'libpng12.0-0'I am totally new to Linux, please help!
211 Answers
you can either
install the supplied .deb file available from
sudo dpkg -i libpng12-0_1.2.54-1ubuntu1.1_amd64.debor compile and install :
download source code
wget
tar xvf libpng_1.2.54.orig.tar.xz
cd libpng-1.2.54
./autogen.sh
./configure
make -j8
sudo make installthen update the links with:
sudo ldconfigprior to any of this assure you machine has these preliminary packages installed ... baseline for any dev kit
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install libtool autoconf build-essential pkg-config automake tcsh4good news is freesurfer 7 on Ubuntu 20.04 runs fine out of the box
The software you are trying to run requires version 12 of libpng, which is no longer available in Ubuntu 16.10+. The best thing to do would be to install Ubuntu 16.04, or maybe let the developers of the software know about this problem so they can provide a version compatible with Ubuntu 16.10.
Download the shared library from and then run sudo dpkg -i
My attempt to follow other suggestions (notably Scott Stensland's) on Ubuntu 20.04 failed, with the following output:
user@machine:~$ sudo dpkg -i libpng12-0_1.2.54-1ubuntu1.1_amd64.deb
Selecting previously unselected package libpng12-0:amd64.
(Reading database ... 69136 files and directories currently installed.)
Preparing to unpack libpng12-0_1.2.54-1ubuntu1.1_amd64.deb ...
Unpacking libpng12-0:amd64 (1.2.54-1ubuntu1.1) ...
dpkg: error processing archive libpng12-0_1.2.54-1ubuntu1.1_amd64.deb (--install): unable to install new version of '/lib/x86_64-linux-gnu/libpng12.so.0': No such file or directory
Processing triggers for libc-bin (2.31-0ubuntu9) ...
Errors were encountered while processing: libpng12-0_1.2.54-1ubuntu1.1_amd64.debPer Linux Uprising, the previous answers do not work on Ubuntu 19/20 because /lib is now a symlink to /usr/lib, and since the libpng12-0 installation tries to link from /lib/x86_64-linux-gnu/libpng12.so.0 to /usr/lib, the installation will fail.
They offered the following fix, which involves a repacked DEB. With the standard caveats about trusting code from unofficial sources, the following will enable libpng12 to run on Ubuntu 20.
sudo add-apt-repository ppa:linuxuprising/libpng12
sudo apt update
sudo apt install libpng12-0 1 You can find this package at
64b
32b
1I was having problems installing SAS on Ubuntu 18.04. Some instructions following will only apply to those installing SAS.
The first problem was that the installation would hang on hot fix W83001. Solution is to move hot fix W83001pt.zip out of the <depot>/hot_fix directory so it is not installed.
The second problem was that the following package was needed and not installed by default on Ubuntu: libjpeg.s0.62. Installation was done as follows:
sudo apt install libjpeg62The third problem was the missing package discussed on this page, libpng12.so.0. It was downloaded from this link and installed as follows:
sudo apt install ./libpng12-0_1.2.54-1ubuntu1.1_amd64.debAfter this, I was able to run the SAS software. Thanks everyone for posting the tips.
Another alternative is to create symbolic links to both PNG and JPEG libraries
sudo ln -s -T /usr/lib/x86_64-linux-gnu/libjpeg.so /usr/lib/x86_64-linux-gnu/libjpeg.so.62
sudo ln -s -T /usr/lib/x86_64-linux-gnu/libpng16.so /usr/lib/x86_64-linux-gnu/libpng12.so.0It will generate some warnings (libpng warning: Application built with libpng-1.2.7 but running with 1.6.28) when running. However, Freeview works ok.
1You don't need to install or compile anything. You just need the .so.* files for runtime.
So just grab the libpng12 .deb from the links provided by people above, download the libpng12.deb, uncompress it like an archive (right click and choose extract instead of install with your file application, e.g nautilus if you use the default gnome desktop), go to the 'data' subfolder, in it you will find another folder, inside you will find a lib folder. Grab the two .so files (libpng12.so.0.*) and put them somewhere in your LD_LIBRARY_PATH so that your application can find them at run time, that's it.
e.g create a folder called libpng in your home and start you application with a script like
#!/bin/bash
export LD_LIBRARY_PATH=$HOME/libpng:$LD_LIBRARY_PATH
<command to start your application>make the script executable, give it a name, say, my_app, put it in your $PATH like $HOME/bin (create it if it doesn't exist, then logout and login) or /usr/local/bin (this requires sudo) then invoke your application in the terminal by typing my_app or put Exec=my_app in your .desktop file.
You can use:
wget
sudo dpkg -i libpng12.deb I'm using 16.04 64bit, and the following worked for me.
64bit
sudo apt-get install libpng12-032bit
sudo apt-get install libpng12-0:i386 This fix also works for CANView Log Viewer, used by Yacht Devices for configuring their NMEA 2000 marine devices.
I don't want to turn this thread into an inventory of all the legacy apps using this library, but Yacht Devices hasn't updated their distribution, and I haven't found their sources (there are many apps with this name).