kuno / GeoIP

GeoIP binding for nodejs(>=0.10) and iojs
GNU Lesser General Public License v2.1
414 stars 129 forks source link

npm install fails #14

Closed eliaskg closed 13 years ago

eliaskg commented 13 years ago

Hi,

I am on ubuntu and have the geoip native package installed and running.

When I run "npm install geoip" I get the following error log:

> geoip@0.4.1 preinstall /home/ubuntu/local/node/lib/node_modules/geoip
> node-waf clean || true; node-waf configure build

Nothing to clean (project not configured)
Checking for program g++ or c++          : /usr/bin/g++ 
Checking for program cpp                 : /usr/bin/cpp 
Checking for program ar                  : /usr/bin/ar 
Checking for program ranlib              : /usr/bin/ranlib 
Checking for g++                         : ok  
Checking for node path                   : not found 
Checking for node prefix                 : ok /home/ubuntu/local/node 
'configure' finished successfully (0.025s)
Waf: Entering directory `/home/ubuntu/local/node/lib/node_modules/geoip/build'
[1/9] cxx: src/init.cc -> build/default/src/init_1.o
In file included from ../src/netspeed.h:12,
                 from ../src/init.cc:7:
../src/node_geoip.h:7:19: error: GeoIP.h: No such file or directory
../src/node_geoip.h:8:23: error: GeoIPCity.h: No such file or directory
In file included from ../src/netspeed.h:12,
                 from ../src/init.cc:7:
../src/node_geoip.h:20: error: expected constructor, destructor, or type conversion before ‘unsigned’
../src/node_geoip.h:21: error: expected constructor, destructor, or type conversion before ‘unsigned’
../src/node_geoip.h:23: error: expected constructor, destructor, or type conversion before ‘unsigned’
../src/node_geoip.h:24: error: ‘GEOIP_API’ does not name a type
../src/node_geoip.h:25: error: ‘GEOIP_API’ does not name a type
../src/node_geoip.h:27: error: expected constructor, destructor, or type conversion before ‘unsigned’
../src/node_geoip.h:28: error: ‘GEOIP_API’ does not name a type
../src/node_geoip.h:29: error: expected constructor, destructor, or type conversion before ‘int’
../src/node_geoip.h:31: error: expected constructor, destructor, or type conversion before ‘void’
../src/node_geoip.h:32: error: expected constructor, destructor, or type conversion before ‘char’
../src/node_geoip.h:38: error: expected constructor, destructor, or type conversion before ‘void’
../src/node_geoip.h:39: error: ‘GEOIP_API’ does not name a type
../src/node_geoip.h:40: error: ‘GEOIP_API’ does not name a type
../src/node_geoip.h:41: error: ‘GEOIP_API’ does not name a type
../src/node_geoip.h:42: error: expected constructor, destructor, or type conversion before ‘int’
../src/node_geoip.h:43: error: expected constructor, destructor, or type conversion before ‘void’
../src/node_geoip.h:44: error: expected constructor, destructor, or type conversion before ‘const’
../src/node_geoip.h:45: error: expected constructor, destructor, or type conversion before ‘const’
../src/node_geoip.h:46: error: expected constructor, destructor, or type conversion before ‘const’
../src/node_geoip.h:47: error: expected constructor, destructor, or type conversion before ‘const’
../src/node_geoip.h:48: error: expected constructor, destructor, or type conversion before ‘const’
../src/node_geoip.h:49: error: expected constructor, destructor, or type conversion before ‘const’
../src/node_geoip.h:50: error: expected constructor, destructor, or type conversion before ‘const’
../src/node_geoip.h:51: error: expected constructor, destructor, or type conversion before ‘const’
../src/node_geoip.h:52: error: expected constructor, destructor, or type conversion before ‘const’
../src/node_geoip.h:55: error: expected constructor, destructor, or type conversion before ‘const’
../src/node_geoip.h:56: error: expected constructor, destructor, or type conversion before ‘const’
../src/node_geoip.h:57: error: expected constructor, destructor, or type conversion before ‘const’
../src/node_geoip.h:59: error: expected constructor, destructor, or type conversion before ‘const’
../src/node_geoip.h:60: error: expected constructor, destructor, or type conversion before ‘const’
../src/node_geoip.h:61: error: expected constructor, destructor, or type conversion before ‘const’
../src/node_geoip.h:62: error: expected constructor, destructor, or type conversion before ‘const’
../src/node_geoip.h:63: error: expected constructor, destructor, or type conversion before ‘const’
../src/node_geoip.h:64: error: expected constructor, destructor, or type conversion before ‘const’
../src/node_geoip.h:67: error: expected constructor, destructor, or type conversion before ‘char’
../src/node_geoip.h:68: error: expected constructor, destructor, or type conversion before ‘char’
../src/node_geoip.h:69: error: expected constructor, destructor, or type conversion before ‘char’
../src/node_geoip.h:73: error: expected constructor, destructor, or type conversion before ‘int’
../src/node_geoip.h:74: error: expected constructor, destructor, or type conversion before ‘int’
../src/node_geoip.h:75: error: expected constructor, destructor, or type conversion before ‘int’
../src/node_geoip.h:77: error: expected constructor, destructor, or type conversion before ‘int’
../src/node_geoip.h:78: error: expected constructor, destructor, or type conversion before ‘int’
../src/node_geoip.h:79: error: expected constructor, destructor, or type conversion before ‘int’
../src/node_geoip.h:81: error: ‘GEOIP_API’ does not name a type
../src/node_geoip.h:82: error: ‘GEOIP_API’ does not name a type
../src/node_geoip.h:83: error: ‘GEOIP_API’ does not name a type
../src/node_geoip.h:85: error: ‘GEOIP_API’ does not name a type
../src/node_geoip.h:86: error: ‘GEOIP_API’ does not name a type
../src/node_geoip.h:87: error: ‘GEOIP_API’ does not name a type
../src/node_geoip.h:90: error: expected constructor, destructor, or type conversion before ‘void’
../src/node_geoip.h:92: error: expected constructor, destructor, or type conversion before ‘void’
../src/node_geoip.h:94: error: expected constructor, destructor, or type conversion before ‘void’
../src/node_geoip.h:97: error: expected constructor, destructor, or type conversion before ‘char’
../src/node_geoip.h:98: error: expected constructor, destructor, or type conversion before ‘char’
../src/node_geoip.h:99: error: expected constructor, destructor, or type conversion before ‘char’
../src/node_geoip.h:101: error: expected constructor, destructor, or type conversion before ‘char’
../src/node_geoip.h:102: error: expected constructor, destructor, or type conversion before ‘char’
../src/node_geoip.h:103: error: expected constructor, destructor, or type conversion before ‘char’
../src/node_geoip.h:106: error: expected constructor, destructor, or type conversion before ‘const’
../src/node_geoip.h:109: error: expected constructor, destructor, or type conversion before ‘const’
../src/node_geoip.h:112: error: expected constructor, destructor, or type conversion before ‘const’
../src/node_geoip.h:115: error: expected constructor, destructor, or type conversion before ‘const’
../src/node_geoip.h:118: error: expected constructor, destructor, or type conversion before ‘const’
../src/node_geoip.h:121: error: expected constructor, destructor, or type conversion before ‘int’
../src/node_geoip.h:124: error: expected constructor, destructor, or type conversion before ‘unsigned’
../src/node_geoip.h:126: error: expected constructor, destructor, or type conversion before ‘char’
../src/node_geoip.h:127: error: expected constructor, destructor, or type conversion before ‘unsigned’
../src/node_geoip.h:129: error: expected constructor, destructor, or type conversion before ‘int’
../src/node_geoip.h:130: error: expected constructor, destructor, or type conversion before ‘int’
../src/node_geoip.h:131: error: expected constructor, destructor, or type conversion before ‘int’
../src/node_geoip.h:132: error: expected constructor, destructor, or type conversion before ‘int’
../src/node_geoip.h:134: error: expected constructor, destructor, or type conversion before ‘int’
../src/node_geoip.h:135: error: expected constructor, destructor, or type conversion before ‘char’
../src/node_geoip.h:136: error: expected constructor, destructor, or type conversion before ‘void’
../src/node_geoip.h:139: error: expected constructor, destructor, or type conversion before ‘const’
../src/node_geoip.h:142: error: expected constructor, destructor, or type conversion before ‘const’
../src/node_geoip.h:145: error: expected constructor, destructor, or type conversion before ‘unsigned’
../src/node_geoip.h:146: error: expected constructor, destructor, or type conversion before ‘char’
../src/node_geoip.h:153: error: expected constructor, destructor, or type conversion before ‘int’
../src/node_geoip.h:159: error: expected constructor, destructor, or type conversion before ‘*’ token
../src/node_geoip.h:160: error: expected constructor, destructor, or type conversion before ‘*’ token
In file included from ../src/init.cc:7:
../src/netspeed.h:21: error: ISO C++ forbids declaration of ‘GeoIP’ with no type
../src/netspeed.h:21: error: expected ‘;’ before ‘*’ token
In file included from ../src/init.cc:8:
../src/country.h:21: error: ISO C++ forbids declaration of ‘GeoIP’ with no type
../src/country.h:21: error: expected ‘;’ before ‘*’ token
In file included from ../src/init.cc:9:
../src/region.h:21: error: ISO C++ forbids declaration of ‘GeoIP’ with no type
../src/region.h:21: error: expected ‘;’ before ‘*’ token
../src/region.h:46: error: ISO C++ forbids declaration of ‘GeoIPRegion’ with no type
../src/region.h:46: error: expected ‘;’ before ‘*’ token
In file included from ../src/init.cc:10:
../src/city.h:21: error: ISO C++ forbids declaration of ‘GeoIP’ with no type
../src/city.h:21: error: expected ‘;’ before ‘*’ token
../src/city.h:48: error: ISO C++ forbids declaration of ‘GeoIPRecord’ with no type
../src/city.h:48: error: expected ‘;’ before ‘*’ token
In file included from ../src/init.cc:11:
../src/org.h:21: error: ISO C++ forbids declaration of ‘GeoIP’ with no type
../src/org.h:21: error: expected ‘;’ before ‘*’ token
Waf: Leaving directory `/home/ubuntu/local/node/lib/node_modules/geoip/build'
Build failed:  -> task failed (err #1): 
    {task: cxx init.cc -> init_1.o}
npm ERR! error installing geoip@0.4.1 Error: geoip@0.4.1 preinstall: `node-waf clean || true; node-waf configure build`
npm ERR! error installing geoip@0.4.1 `sh "-c" "node-waf clean || true; node-waf configure build"` failed with 1
npm ERR! error installing geoip@0.4.1     at ChildProcess.<anonymous> (/home/ubuntu/local/node/lib/node_modules/npm/lib/utils/exec.js:49:20)
npm ERR! error installing geoip@0.4.1     at ChildProcess.emit (events.js:67:17)
npm ERR! error installing geoip@0.4.1     at ChildProcess.onexit (child_process.js:192:12)
npm ERR! geoip@0.4.1 preinstall: `node-waf clean || true; node-waf configure build`
npm ERR! `sh "-c" "node-waf clean || true; node-waf configure build"` failed with 1
npm ERR! 
npm ERR! Failed at the geoip@0.4.1 preinstall script.
npm ERR! This is most likely a problem with the geoip package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node-waf clean || true; node-waf configure build
npm ERR! You can get their info via:
npm ERR!     npm owner ls geoip
npm ERR! There is likely additional logging output above.
npm ERR! 
npm ERR! System Linux 2.6.32-316-ec2
npm ERR! command "node" "/home/ubuntu/local/node/bin/npm" "install" "geoip" "-g"
npm ERR! cwd /home/ubuntu/MyApp
npm ERR! node -v v0.4.10
npm ERR! npm -v 1.0.18
npm ERR! 
npm ERR! Additional logging details can be found in:
npm ERR!     /home/ubuntu/MyApp/npm-debug.log
npm not ok
kuno commented 13 years ago

Are you sure there are GeoIP.h and GeoIPCity.h inside your /usr/include/ folder?

eliaskg commented 13 years ago

Could fix it after installing GeoIP from source. Before I had it installed via apt.