|
Hello Phil. I had not tried doing that but, Yes, on investigating, the way that the package has built the PNG.so does seem strange, with that path. You can fix it like this:
1. since your PNG.so is in a public dir, first make sure no-one is using that lib:
as root
slibclean
genkld | fgrep PNG.so
make sure it does not appear in that output - if it does - ask users to stop and repeat!
(Yes I know unix is supposed to be able to handle this but in my experience this is a worthwhile
+step to avoid confusion)
2. rm -f /usr/opt/perl5/lib64/site_perl/5.8.2/aix-thread-multi-64all/auto/Tk/PNG
/PNG.so
3. cd to <your Tk build directory>/PNG
(i.e. the dir in which you see files such as PNG.o and libpng subdir)
4. ld -bhalt:4 -bexpall -G -bnoentry -lpthreads -lc PNG.o imgPNG.o -o /usr/opt/perl5/lib64/site_
+perl/5.8.2/aix-thread-multi-64all/auto/Tk/PNG/PNG.so -L$PWD/libpng -lpng -L$PWD/zlib -lz -lm
Now, one other thing - I see you are on perl 5.8.2. I could not get Tk to work on that version and have read elsewhere that 5.8.3 is a minimum for Tk. I installed 5.10.0 and it works fine. I installed into my own local dir, not into /usr, and people who use my TK programs set my dir in their PATH, to avoid hassles with whoever else may be relaying on 5.8.2. Just mentioning it but if you find everything ok on 5.8.2 then that's fine. |