http://www.perlmonks.org?node_id=821080

jbakshi has asked for the wisdom of the Perl Monks concerning the following question:

Dear list,

Hello to all of you. I am a newbie in cpan and come here to discuss with Geo::IP installation problem through cpan.

For awstats Geo-location report I need Geo::IP in my system. This is a opensuse 11.1 ( x86_64) box with perl v5.10.0 built for x86_64-linux-thread-multi.

I have already downloaded the required the MaxMind GeoIP C API from http://geolite.maxmind.com/download/geoip/api/c/GeoIP-1.4.6.tar.gz and and install it by

````````````````
./configure make make check ( all test are passed) make install
`````````````````````


During "make install" I can see that

``````````
Libraries have been installed in:
/usr/local/lib
`````````````

and to confirm

````````````````````````````````````
# ls /usr/local/lib
libGeoIP.a libGeoIP.so libGeoIPUpdate.a libGeoIPUpdate.so libGeoIPUpdate.so.0.0.0 libGeoIP.la libGeoIP.so.1 libGeoIP.so.1.4.6 libGeoIPUpdate.la libGeoIPUpdate.so.0
````````````````````````

/etc/ld.so.conf has also the above path included.

.........
/usr/x86_64-suse-linux/lib /usr/local/lib /opt/kde3/lib /lib64
.............

Now if I try to install Geo::IP through cpan it reports error as

...............
The GeoIP CAPI is not installed you should do that. Otherwise try
perl Makefile.PL PP=1

to install this module anyway. It uses a slower pure perl version and you can rebuid it later.

GeoIP must be installed prior to building Geo::IP and I can't find it in the standard library directories. You can download GeoIP C API from:

http://www.maxmind.com/app/c

If GeoIP is installed, but in a non-standard directory, then use the following options to Makefile.PL:

perl Makefile.PL LIBS='-L/home/me/lib' INC='-I/home/me/include'

Note that if you build against a shareable library in a non-standard location you may (on some platforms) also have to set your LD_LIBRARY_PATH environment variable at run time for perl to find the library.

If you installed the GeoIP C libraries to the /usr/local/lib directory, then you may need to add /usr/local/lib to /etc/ld.so.conf then run /sbin/ldconfig /etc/ld.so.conf

..................

I am really confused why it is missing the GeoIP C API . I have even done " /sbin/ldconfig /etc/ld.so.conf " and tried to intall the module again but no luck at all :-( could any one kindly provide me a clue ?

with regards,