/* The complete definition of png_struct has, as of libpng-1.5.0,
* been moved into a separate header file that is not accessible to
* applications. Read libpng-manual.txt or libpng.3 for more info.
*/

I think this is the cause of the error. I believe this error must be trivial to fix, but I don't really know C

Well figured out png functionality; don't comment out your FileControlWriteFile ; instead use below and you should be able to scan to png now . Clean compile ; I'm on my Sabayon install, so I can't test fully right now as I have trouble getting the scanner to actually detect .

Recently upgraded kernel from 2.6.39 to 3.0.6 and now 3.1.10
Pixma 5250 was printing under 2.6.39 (did a lot of copying files the source code directories, but did get it working well)
Now it does not work.
I have downloaded the recent ebuild for cnijfilter-3.40 referred to in this thread. Compile fails every time with incompatible libraries.
At my wit's end here.

The final errors in the build refer to each of the *374 libraries and ld post(they are the ones for the MG5250 printer) to say that they are incompatible. I will try to post the exact error when I get home (at work now). It looks like the linker is trying to link the x86 libraries whereas the rest of the compile is using x86_64. I have ensured both sets of libraries are in both the real system AND the overlay.

I gave up on cnijfilter altogether. Currently the printer is on the network running the lpd protocol and using the gutenprint driver I somehow got it working. It's talking to my main machine without any wires where at first that was impossible. I don't know what changed but it's working at last.

Cnijfilter is one big mess which I will not be using any time soon again. Weird though, on my Ubuntu netbook it works without trouble._________________It doesn't matter what's right, it's only wrong if you get caught.

Someone really should go through that bug and remove a lot of those ebuilds, because there's a lot of overlap and a lot that are broken (will not work with current portage tree). I had to manually modify the ebuilds I tried, to match the new path for ghostscript, and the new libxml.

Here's the complete build.log from Portage. Hopefully the cause of the error is in there.

From what I've found, it seems to have something to do with libxml, which I recall being a cause of problems beforehand. The ebuild was looking for libxml-1.8 - which portage doesn't have in its tree anymore - so I had to edit the ebuild to look for libxml2 instead.

Please add the files
codeset.m4 gettext.m4 glibc21.m4 iconv.m4 isc-posix.m4 lcmessage.m4
progtest.m4
from the /usr/share/aclocal directory to your autoconf macro directory
or directly to your aclocal.m4 file.
You will also need config.guess and config.sub, which you can get from
ftp://ftp.gnu.org/pub/gnu/config/.

Please add the files
codeset.m4 gettext.m4 glibc21.m4 iconv.m4 isc-posix.m4 lcmessage.m4
progtest.m4
from the /usr/share/aclocal directory to your autoconf macro directory
or directly to your aclocal.m4 file.
You will also need config.guess and config.sub, which you can get from
ftp://ftp.gnu.org/pub/gnu/config/.