Installing a tar.gz package and how to "compile" with pkg

Hi all,

I would like to install geoaccess tool for parsing http log.

I know it's present on pkg source :

Code:
root@www-prod:~ # pkg search goaccess
goaccess-0.7.1

But I would like install the last version 0.8.1 with more feature from here : http://goaccess.io/download

The problem It's completely impossible to install/compile .

Code:
root@www-prod:~/goaccess-0.8.2 # ./configure --enable-geoip --enable-utf8
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... ./install-sh -c -d
checking for gawk... no
checking for mawk... no
checking for nawk... nawk
checking whether make sets $(MAKE)... yes
checking for gcc... no
checking for cc... cc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether cc accepts -g... yes
checking for cc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of cc... gcc3
checking for pthread_create in -lpthread... yes
checking for GeoIP_new in -lGeoIP... no
configure: error: *** Missing development files for the GeoIP library

I have triing whith pecl-geoip-1.0.8 but nothing to do ...

Documentation of goaccess say :

--enable-utf8
Compile with wide character support. Ncursesw is required.
--enable-geoip
Compile with GeoLocation support. MaxMind's GeoIP is required.

I have triing to follow this for the "MaxMind's GeoIP" :http://bin63.com/how-to-install-nginx-and-php-fpm-on-freebsd

But Failed ...
I have actually the same problem with Nginx if I would like to use "geoip_localization" (need compilation) module ... I need to install with port ?!

Code:
root@www-prod:~/goaccess-0.8.2 # ./configure --enable-utf8
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... ./install-sh -c -d
checking for gawk... no
checking for mawk... no
checking for nawk... nawk
checking whether make sets $(MAKE)... yes
checking for gcc... no
checking for cc... cc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether cc accepts -g... yes
checking for cc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of cc... gcc3
checking for pthread_create in -lpthread... yes
checking for mvaddwstr in -lncursesw... yes
checking for ncursesw/ncurses.h... no
checking for ncurses.h... yes
checking for pkg-config... no
checking for pkg-config... no
configure: error:
     *** pkg-config script could not be found. Make sure it is
     *** in your path, or set the PKG_CONFIG environment variable
     *** to the full path to pkg-config. Otherwise, reinstall glib2
     *** development files (libglib2.0-dev)

root@www-prod:~/goaccess-0.8.2 # pkg search libglib2.0-dev
root@www-prod:~/goaccess-0.8.2 # pkg search libglib

....

I used the "old" port method but problem is exactly the same ...

I don't really understand it's totally impossible to install software who is not in the repository ?!

Thanks in advance guy's.
 
Re: Installing a tar.gz packet and how to "compile" with pkg

oxyaxion said:
The problem It's completely impossible to install/compile.
That's why the ports system exists. Sometimes sources need specific FreeBSD patches to be able to compile them, this is what the ports system does.

I have actually the same problem with Nginx if I would like to use "geoip_localization" (need compilation) module ... I need to install with port ?!
Different problem. Yes, if you want options that aren't set by default you will have to build from ports.
 
Re: Installing a tar.gz package and how to "compile" with pk

Have you asked the listed maintainer to update the official package to the newest version? That's probably a good place to start. If you have some time to do it yourself and contribute your work back; sometimes it's as easy as editing the version number in the Makefile that is in that port's directory, running a make makesum to update the SHA hash, and finishing with a make install. Sometimes its not that easy as there are changes between versions or the FreeBSD specific patches that @SirDice mentioned may not apply anymore. If the easy way does work, you can send a patch to the maintainer or submit a bug report to get it updated.
 
Last edited by a moderator:
Back
Top