#3278 closed task (wontfix)
netpbm on BLFS SVN 2012 (with working PNG support)
Reported by: | Marko Madunic | Owned by: | |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | BOOK | Version: | SVN |
Severity: | normal | Keywords: | |
Cc: |
Description ¶
NETPBM & BLFS ¶
BLFS uses latest PNG lib and (if wanted) support for apng files. When building netpbm it complains about unsupported ZLIB etc. stuff from PNG library. (pbm2png ... breaks build)
netpbm super-stable and netpbm-stable will NOT WORK with latest PNG library. You must use netpbm-advanced ( bleeding edge) version.
Get netpbm advanced by running :
svn checkout http://netpbm.svn.sourceforge.net/svnroot/netpbm/advanced netpbm
Then after download , create tarball from it , so on repeated/failed builds You do not need to dload it again and again ...
tar -cjkpvf netpbm_svn_advanced_rev_1629.tar.bz2 netpbm
(Notice i use revision number SVN reported after checkout. Just to know what we have dloaded...)
Now move to your BUILD dir and extract the netpbm sources,
When in netpbm dir run configure :
./configure
Answer all the questions as needed ( i just pressed ENTER / answered YES / y when asked ) , it is safe to keep proposed defaults. (prefix=/usr/local etc ...)
Then build netpbm :
make
There is no test / check for this package so proceede with packaging it (prior to install) as it will ask You to do :
make package pkgdir=/usr/src/packages/BUILD/netpbm_svn_advanced_rev_1629_packaged
(NOTE: use any path You want , but it can NOT be an existing directory) Then install the package as root:
./installnetpbm
This will mostly fail with creating /usr/local/netpbm dir , which will be empty :(
To really install it "cd" to your "packaged" netpbm directory and simply copy all of it into /usr/local/netpbm :
cd /usr/src/packages/BUILD/netpbm_svn_advanced_rev_1629_packaged cp -axv * /usr/local/netpbm/
You shall end up with something like :
root [ ~ ]# ls /usr/local/netpbm/ README VERSION bin config_template include lib link man misc pkginfo
Now add this to your PATH environment variable, either in /etc/profile or local user login files.
# netpbm /etc/profile addendum if [ -d /usr/local/netpbm/bin ] then pathappend /usr/local/netpbm/bin fi
And update Your /etc/ld.so.conf to search for libs in /usr/local/netpbm/lib
As root user :
echo "/usr/local/netpbm/lib" >> /etc/ld.so.conf
And finaly link the stuff propperly (as root again) :
cd /usr/local/netpbm/lib && ln -svf libnetpbm.so.11.57 libnetpbm.so && ln -svf ../link/libnetpbm.a .
That shall be it for LIB's , now fix the HEADERS path :
cd /usr/local/netpbm/include && ln -svf netpbm/*.h .
(Netpbm creates /usr/local/netpbm/include/netpbm directory ... we want headers in /usr/local/netpbm/include withouth another subdir ...)
HUH. Quite a workarround to get it done but it works. Afterwards i could successfully build UTR (Utah Raster Toolkit) against netpbm by setting propper CPPFLAGS and LDFLAGS. But that is the next Book hint.
Enjoy NETPBM on BLFS! :)
Change History (3)
comment:1 by , 13 years ago
Milestone: | 6.7 → current |
---|
comment:2 by , 13 years ago
Resolution: | → wontfix |
---|---|
Status: | new → closed |
Package is not in the book.