LinuxQuestions.org
Share your knowledge at the LQ Wiki.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Software
User Name
Password
Linux - Software This forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum.

Notices


Reply
  Search this Thread
Old 11-24-2003, 12:42 PM   #1
murray_linux
Member
 
Registered: Nov 2003
Distribution: Slackware Current
Posts: 210

Rep: Reputation: 30
libpng missing


Hello all,

When installing snes9express, I get an error saying that libpng is missing. Libpng is a fairly common set of files right? I think this may just be a path issue of some sort. Do i just need to add the path to it in the ldconfig.conf file? How do I find out if I have it installed? I did a full install of Slackware 9.1.

Thank you kindly,

Murray
 
Old 11-24-2003, 04:59 PM   #2
Mara
Moderator
 
Registered: Feb 2002
Location: Grenoble
Distribution: Debian
Posts: 9,696

Rep: Reputation: 232Reputation: 232Reputation: 232
It's very common library. To find it in your system run
locate libpng.so
If you think the path may be not in LD_LIBRARY_PATH or ld.so.conf, put it there.
 
Old 11-24-2003, 09:36 PM   #3
murray_linux
Member
 
Registered: Nov 2003
Distribution: Slackware Current
Posts: 210

Original Poster
Rep: Reputation: 30
thanks! i used locate to find the files in /usr/lib

so i added the line: /usr/lib
to /etc/ld.so.conf

but I still get the same issue when installing:

PNG library not found
libpng >= 1.0.6 is required for skins.
You can either install the libpng development files,
or configure with --disable-skins

any ideas? i'm probably not doing something.

Thanks,

murray
 
Old 11-28-2003, 04:35 PM   #4
Mara
Moderator
 
Registered: Feb 2002
Location: Grenoble
Distribution: Debian
Posts: 9,696

Rep: Reputation: 232Reputation: 232Reputation: 232
After you add a line to ld.so.conf, run ldconfig. Only then the change takes place.
 
Old 12-06-2003, 08:55 PM   #5
murray_linux
Member
 
Registered: Nov 2003
Distribution: Slackware Current
Posts: 210

Original Poster
Rep: Reputation: 30
i get the same error after running ldconfig as root. (i cannot run ldconfig as normal user, get an error /sbin/ldconfig: Can't create temporary cache file /etc/ld.so.cache~: Permission denied)

PNG library not found
libpng >= 1.0.6 is required for skins.
You can either install the libpng development files,
or configure with --disable-skins

Your thoughts?

Thanks again,

Murray
 
Old 12-07-2003, 03:43 PM   #6
Mara
Moderator
 
Registered: Feb 2002
Location: Grenoble
Distribution: Debian
Posts: 9,696

Rep: Reputation: 232Reputation: 232Reputation: 232
Check also another thing. Do you have libpng headers? When I run 'locate libpng' I get (among other things):
Code:
/usr/include/libpng
/usr/include/libpng12
/usr/include/libpng12/pngconf.h
/usr/include/libpng12/png.h
Do you have something similar?
 
Old 12-08-2003, 11:42 AM   #7
murray_linux
Member
 
Registered: Nov 2003
Distribution: Slackware Current
Posts: 210

Original Poster
Rep: Reputation: 30
Yeah I think so :S Here's my output:

murray@godzillax:~$ locate libpng
/mnt/hdb1/cube_2002_10_20/bin/libpng1.dll
/var/log/packages/libpng-1.2.5-i386-1
/var/log/scripts/libpng-1.2.5-i386-1
/usr/bin/libpng12-config
/usr/bin/libpng-config
/usr/doc/libpng-1.2.5
/usr/doc/libpng-1.2.5/TODO
/usr/doc/libpng-1.2.5/example.c
/usr/doc/libpng-1.2.5/LICENSE
/usr/doc/libpng-1.2.5/README
/usr/doc/libpng-1.2.5/libpng.txt
/usr/doc/libpng-1.2.5/KNOWNBUG
/usr/doc/libpng-1.2.5/ANNOUNCE
/usr/doc/libpng-1.2.5/Y2KINFO
/usr/doc/libpng-1.2.5/INSTALL
/usr/doc/libpng-1.2.5/CHANGES
/usr/lib/libpng12.so.0.1.2.5
/usr/lib/libpng.so
/usr/lib/pkgconfig/libpng.pc
/usr/lib/pkgconfig/libpng12.pc
/usr/lib/gthumb/modules/libpngexporter.la
/usr/lib/gthumb/modules/libpngexporter.so
/usr/lib/libpng12.a
/usr/lib/libpng12.so
/usr/lib/libpng.so.3
/usr/lib/libpng12.so.0
/usr/lib/libpng.a
/usr/lib/libpng.so.3.1.2.5
/usr/man/man3/libpngpf.3.gz
/usr/man/man3/libpng.3.gz
/usr/include/libpng
/usr/include/libpng12
/usr/include/libpng12/pngconf.h
/usr/include/libpng12/png.h


Thanks a million,

Murray
 
Old 12-08-2003, 12:34 PM   #8
murray_linux
Member
 
Registered: Nov 2003
Distribution: Slackware Current
Posts: 210

Original Poster
Rep: Reputation: 30
I've also reinstalled zlib and libpng successfully too.

Here's the output of ./configure too:

/snes9express-1.39-beta1# ./configure
checking for a BSD-compatible install... /usr/bin/ginstall -c
checking whether build environment is sane... yes
checking whether make sets ${MAKE}... yes
checking for working aclocal... found
checking for working autoconf... found
checking for working automake... found
checking for working autoheader... found
checking for working makeinfo... found
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for gcc... gcc
checking for C compiler default output... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking for a BSD-compatible install... /usr/bin/ginstall -c
checking whether make sets ${MAKE}... (cached) yes
checking for gzopen in -lz... yes
checking for dirent.h that defines DIR... yes
checking for library containing opendir... none required
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/wait.h that is POSIX.1 compatible... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking sys/ioctl.h usability... yes
checking sys/ioctl.h presence... yes
checking for sys/ioctl.h... yes
checking for unistd.h... (cached) yes
checking sys/joystick.h usability... no
checking sys/joystick.h presence... no
checking for sys/joystick.h... no
checking linux/joystick.h usability... yes
checking linux/joystick.h presence... yes
checking for linux/joystick.h... yes
checking zlib.h usability... yes
checking zlib.h presence... yes
checking for zlib.h... yes
checking for gcc option to accept ANSI C... none needed
checking for an ANSI C-conforming const... yes
checking for mode_t... yes
checking for pid_t... yes
checking whether gcc needs -traditional... no
checking for working memcmp... yes
checking for getcwd... yes
checking for mkdir... yes
checking for putenv... yes
checking for rmdir... yes
checking for strerror... yes
checking for strstr... yes
checking for strtol... yes
checking for pkg-config... /usr/bin/pkg-config
checking for gtk+-2.0 >= 2.0.0... yes
checking GTK_CFLAGS... -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/X11R6/include -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
checking GTK_LIBS... -Wl,--export-dynamic -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0
checking for png_read_png in -lpng... no
checking png.h usability... yes
checking png.h presence... yes
checking for png.h... yes

PNG library not found
libpng >= 1.0.6 is required for skins.
You can either install the libpng development files,
or configure with --disable-skins


Any thoughts?

Thank you kindly,

Murray
 
Old 12-09-2003, 04:31 AM   #9
Mara
Moderator
 
Registered: Feb 2002
Location: Grenoble
Distribution: Debian
Posts: 9,696

Rep: Reputation: 232Reputation: 232Reputation: 232
It looks OK. Is it possible to try with another version of the program? To fix the cirrent one I don't have other idea than to dig into the configure script...
 
Old 12-09-2003, 10:16 AM   #10
murray_linux
Member
 
Registered: Nov 2003
Distribution: Slackware Current
Posts: 210

Original Poster
Rep: Reputation: 30
Mara (or anyone), could you try the installer for me? See if you get the same results? You wouldn't have to completely install, just run ./configure and see if you can get past the error.

http://www.linuxgames.com/snes9express/

Thanks a bunch,

Murray
 
Old 12-09-2003, 04:06 PM   #11
Mara
Moderator
 
Registered: Feb 2002
Location: Grenoble
Distribution: Debian
Posts: 9,696

Rep: Reputation: 232Reputation: 232Reputation: 232
Which version you have? I downloaded tar.gz and there's no configure, you run 'make' and 'make install' only...
 
Old 12-09-2003, 08:19 PM   #12
murray_linux
Member
 
Registered: Nov 2003
Distribution: Slackware Current
Posts: 210

Original Poster
Rep: Reputation: 30
snes9express-1.39-beta1

hmmm let me try the rpm
 
Old 12-09-2003, 08:41 PM   #13
murray_linux
Member
 
Registered: Nov 2003
Distribution: Slackware Current
Posts: 210

Original Poster
Rep: Reputation: 30
get an error with that too..

when i try version snes9express-1.26-2.src.tar.gz,

i get this during make:

# make
g++ -Wall -g -O2 -c `sh frend-config --cflags` frend.cc -o frend.o
In file included from frend.cc:26:
frend.h:102: friend declaration requires class-key, i.e. `friend struct
fr_Style'
frend.h:103: friend declaration requires class-key, i.e. `friend struct
fr_Element'
frend.h:104: friend declaration requires class-key, i.e. `friend struct
fr_Button'
frend.h:105: friend declaration requires class-key, i.e. `friend struct
fr_DataTable'
frend.h:106: friend declaration requires class-key, i.e. `friend struct
fr_Window'
frend.h:117: friend declaration requires class-key, i.e. `friend class fr_Image
'
frend.h:118: friend declaration requires class-key, i.e. `friend struct
fr_Element'
frend.h:119: friend declaration requires class-key, i.e. `friend struct
fr_Window'
frend.h:120: friend declaration requires class-key, i.e. `friend struct
fr_PulldownMenu'
frend.h:128: friend declaration requires class-key, i.e. `friend class fr_Image
'
frend.h:129: friend declaration requires class-key, i.e. `friend class fr_Style
'
frend.h:130: friend declaration requires class-key, i.e. `friend struct fr_Box'
frend.h:131: friend declaration requires class-key, i.e. `friend struct fr_File
'
frend.h:132: friend declaration requires class-key, i.e. `friend struct
fr_Window'
frend.h:133: friend declaration requires class-key, i.e. `friend struct
fr_Event'
frend.h:138: syntax error before `*' token
frend.h:184: friend declaration requires class-key, i.e. `friend class
fr_Element'
frend.h:185: friend declaration requires class-key, i.e. `friend struct
fr_Button'
frend.h:186: friend declaration requires class-key, i.e. `friend struct
fr_Notebook'
frend.h:216: friend declaration requires class-key, i.e. `friend class
fr_Element'
frend.h:217: friend declaration requires class-key, i.e. `friend struct
fr_Notebook'
frend.h:291: friend declaration requires class-key, i.e. `friend struct
fr_GroupHolder'
frend.h:292: friend declaration requires class-key, i.e. `friend struct
fr_RadioGroup'
frend.h:293: friend declaration requires class-key, i.e. `friend struct
fr_PulldownMenu'
frend.h:320: friend declaration requires class-key, i.e. `friend struct
fr_RadioGroup'
frend.h:326: friend declaration requires class-key, i.e. `friend class
fr_RadioButton'
frend.h:335: friend declaration requires class-key, i.e. `friend struct
fr_PulldownMenu'
frend.h:343: friend declaration requires class-key, i.e. `friend class
fr_MenuItem'
frend.h:413: 'set' is used as a type, but is not defined as a type.
frend.cc: In constructor `fr_Element::fr_Element()':
frend.cc:337: `Listeners' undeclared (first use this function)
frend.cc:337: (Each undeclared identifier is reported only once for each
function it appears in.)
frend.cc: In constructor `fr_Event::fr_Event(fr_Element*, int, int, void*)':
frend.cc:500: `class fr_Element' has no member named `Listeners'
frend.cc:502: `class fr_Element' has no member named `Listeners'
frend.cc:502: `class fr_Element' has no member named `Listeners'
frend.cc: At global scope:
frend.cc:784: default argument given for parameter 2 of `void
fr_ButtonBox::AddButton(fr_Button&, bool = false)'
frend.h:244: after previous specification in `virtual void
fr_ButtonBox::AddButton(fr_Button&, bool = false)'
frend.cc: In member function `fr_Image* fr_DataTable::GetCellPic(int, int)':
frend.cc:1463: `ImageCollection' undeclared (first use this function)
make: *** [frend.o] Error 1


Jeez!
 
Old 12-09-2003, 10:34 PM   #14
daven
LQ Newbie
 
Registered: Dec 2003
Location: Nova Scotia
Distribution: Mandrake
Posts: 4

Rep: Reputation: 0
Hi, I'm the author of snes9express... so hopefully I can be of some help.

First of all, don't worry about putting /usr/lib into ld.so.conf. /usr/lib is searched for libraries anyway, and if somehow it wasn't, you'd have a lot bigger problems than snes9express not compiling.

Here's the culprit in your configure output:
Code:
checking for png_read_png in -lpng... no
checking png.h usability... yes
checking png.h presence... yes
checking for png.h... yes
png_read_png is a function of the libpng API(since 1.0.6). As perhaps is evident by its name, it comes in very handy for reading png images(needed for skins). It appears that configure does not think that function is available in your libpng, and concludes(incorrectly, it seems) that your version is less than 1.0.6. It is possible for libpng to be compiled with png_read_png excluded, but to my knowledge that's a rather rare situation.

The only thing I can think of in trying to diagnose the problem is trying a simple test compilation.

create a file called pngtest.c and put this in it:
Code:
#include <png.h>

int main()
{
        png_read_png(0,0,0,0);
        return 0;
}
then run this command:
Code:
gcc -c /path/to/pngtest.c -o /dev/null
If that doesn't give any errors, then the configure script (which is generated by autoconf) is somehow mistaken(in which case we'll try to short-circuit it). On the other hand, if that gives any error messages, they should* be helpful to us in determining how to fix the problem.

* but we all know error messages can sometimes be a little vague.

Dave

PS: prior to 1.39, snes9express had its own custom build system, whereas 1.39 uses autoconf. Also, versions older than 1.39 only work with gtk 1.x, and might not want to compile with newer(more strict) versions of gcc.
 
Old 12-10-2003, 10:46 PM   #15
murray_linux
Member
 
Registered: Nov 2003
Distribution: Slackware Current
Posts: 210

Original Poster
Rep: Reputation: 30
Thanks Dave,

I created the pngtest.c file, and ran the command, but I didn't get any errors.

Regards,

Murray
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
libpng and libpng-devel missing in mplayer configure mmarkvillanueva Linux - Software 2 11-29-2005 10:40 PM
"libpng missing" on xvidcap compilation ( Slack 10.2 ) Enjo Linux - Software 2 11-15-2005 12:13 PM
missing file libpng.so.2 SurfCHimp Linux - Software 11 02-26-2005 04:17 PM
Missing libpng.so.2 when installing Canoni250 print driver rayza Linux - Hardware 1 12-22-2004 04:25 AM
MPlayer install problems with libpng & libpng-devel Trey2501 Linux - Newbie 18 03-05-2004 11:24 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Software

All times are GMT -5. The time now is 06:49 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration