Hello all,
(Opened thread here on this as well http://www.linuxquestions.org/questions/slackware-14/how-to-install-pushpoold-and-dependencies-slackware-14-0-a-4175471244/)
I've been trying just about ever single version that I can think of (thinking it was a version problem) of libmemcached to get the configure script for pushpool to detect that it's installed. I'm almost about to give up but decided to post here first.
I am on Slackware 14.0 (so please no apt-get or yum install libmemcached answers lol - those are not on slackware or I'd have fixed this days ago with a simple yum install libmemcached-dev or something :-\ )
~/poolproject/pushpool-tenebrix
# ./configure --verbose [23:45:56]
checking for a BSD-compatible install... /usr/bin/ginstall -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for gcc... gcc
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 gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking whether gcc needs -traditional... no
checking whether gcc and cc understand -c and -o together... yes
checking for ranlib... ranlib
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking endian.h usability... yes
checking endian.h presence... yes
checking for endian.h... yes
checking sys/endian.h usability... no
checking sys/endian.h presence... no
checking for sys/endian.h... no
checking for event_base_new in -levent... yes
checking for pthread_create in -lpthread... yes
checking for uncompress in -lz... yes
checking for json_loads in -ljansson... yes
checking for MD5_Init in -lcrypto... yes
checking for memcached_get in -lmemcached... no
configure: error: Missing required libmemcached library
My libmemcached is in /usr/local/lib
/usr/local/lib
# ll | grep memcache [23:50:58]
-rw-r--r-- 1 root root 1451406 Jul 27 23:45 libmemcached.a
-rwxr-xr-x 1 root root 1021 Jul 27 23:45 libmemcached.la
lrwxrwxrwx 1 root root 21 Jul 27 23:45 libmemcached.so -> libmemcached.so.8.0.0
lrwxrwxrwx 1 root root 21 Jul 27 22:24 libmemcached.so.0 -> libmemcached.so.0.0.0
-rwxr-xr-x 1 root root 82662 Jul 27 22:24 libmemcached.so.0.0.0
lrwxrwxrwx 1 root root 22 Jul 27 23:16 libmemcached.so.11 -> libmemcached.so.11.0.0
-rwxr-xr-x 1 root root 1234633 Jul 27 23:16 libmemcached.so.11.0.0
lrwxrwxrwx 1 root root 21 Jul 27 17:08 libmemcached.so.6 -> libmemcached.so.6.0.0
-rwxr-xr-x 1 root root 504174 Jul 27 17:08 libmemcached.so.6.0.0
lrwxrwxrwx 1 root root 21 Jul 27 23:45 libmemcached.so.8 -> libmemcached.so.8.0.0
-rwxr-xr-x 1 root root 835703 Jul 27 23:45 libmemcached.so.8.0.0
lrwxrwxrwx 1 root root 21 Jul 27 22:41 libmemcached.so.9 -> libmemcached.so.9.0.0
-rwxr-xr-x 1 root root 912601 Jul 27 22:41 libmemcached.so.9.0.0
-rw-r--r-- 1 root root 144056 Jul 27 23:45 libmemcachedprotocol.a
-rwxr-xr-x 1 root root 1042 Jul 27 23:45 libmemcachedprotocol.la
lrwxrwxrwx 1 root root 29 Jul 27 23:45 libmemcachedprotocol.so -> libmemcachedprotocol.so.0.0.0
lrwxrwxrwx 1 root root 29 Jul 27 23:45 libmemcachedprotocol.so.0 -> libmemcachedprotocol.so.0.0.0
-rwxr-xr-x 1 root root 113966 Jul 27 23:45 libmemcachedprotocol.so.0.0.0
-rw-r--r-- 1 root root 163322 Jul 27 23:45 libmemcachedutil.a
-rwxr-xr-x 1 root root 1080 Jul 27 23:45 libmemcachedutil.la
lrwxrwxrwx 1 root root 25 Jul 27 23:45 libmemcachedutil.so -> libmemcachedutil.so.2.0.0
lrwxrwxrwx 1 root root 25 Jul 27 17:08 libmemcachedutil.so.1 -> libmemcachedutil.so.1.0.0
-rwxr-xr-x 1 root root 41328 Jul 27 17:08 libmemcachedutil.so.1.0.0
lrwxrwxrwx 1 root root 25 Jul 27 23:45 libmemcachedutil.so.2 -> libmemcachedutil.so.2.0.0
-rwxr-xr-x 1 root root 105467 Jul 27 23:45 libmemcachedutil.so.2.0.0
I have /usr/local/lib in my /etc/ld.so.conf as well - I've ran ldconfig and rebooted the server even ???
Also - if it matters - I can run memcached:
# ps aux | grep memcached
root 22758 0.0 0.0 47232 604 ? Ssl Jul27 0:00 memcached -d -m 1024 -u root -l 127.0.0.1 -p 11211
But doesn't seem to make a difference here :(
I'm out of ideas at this point. I really want to avoid having to run it on Centos or Ubuntu because I have a lot of other things already setup on this box that I wish to multipurpose for a pool server :)
Any help is
GREATLY appreciated.
I suppose my goal should be stated as well - I want to run a pool with a front end. The best I've found is https://github.com/TheSerapher/php-mmcfe-ng
This apparently requires pushpool (https://github.com/ArtForz/pushpool) and this stratum server (https://github.com/viperaus/stratum-mining). I have the stratum server installed already.
If anyone has an alternative idea - I'm not much of a coder unfortunately...But I have installed a plethora of linux apps from source and am not a complete n00b ;) I work with Linux every day, but the solution to this eludes me at this point :(
Thank you ;D
:( I hope someone here can help! I'll try to provide some additional info in hopes it may help you help me ;D
If I need to provide any additional info - or anything please let me know.
# whereis libmemcached
libmemcached: /usr/lib/libmemcached.so /usr/lib/libmemcached.la /usr/local/lib/libmemcached.a /usr/local/lib/libmemcached.so /usr/local/lib/libmemcached.la /usr/include/libmemcached /usr/man/man3p/libmemcached.3.gz /usr/man/man3/libmemcached.3.gz /usr/share/man/man3p/libmemcached.3.gz /usr/share/man/man3/libmemcached.3.gz /usr/X11/man/man3p/libmemcached.3.gz /usr/X11/man/man3/libmemcached.3.gz
Suggestions such as what versions of libmemcached, and memcached you are using might be helpful. I'm not sure if there is a version conflict between THOSE two apps.
Maybe there is a way to define the path in the configure script for pushpool? I've done these also to no avail:
./configure --includedir=/usr/local/lib
./configure --libdir=/usr/local/lib
./configure --includedir=/usr/local/lib --libdir=/usr/local/lib
Maybe I should install libmemcached in another folder where pushpool might look? Where are your working installs putting the files?
The whole version suspicion comes in that pushpool hasn't been updated in about 2+ years. Since then there have been newer versions of libmemcached, and some implementations (memcached_get) might have changed.
i.e. checking for memcached_get in -lmemcached... no
I've tried quite a few versions you can see here:
drwxr-xr-x 2 1016 users 4096 Jul 23 01:04 libmemcached
drwxrwxrwx 8 axmore 500 4096 Jul 27 22:24 libmemcached-0.2
-rw-r--r-- 1 root root 319402 Oct 8 2009 libmemcached-0.2.tar.gz
drwxrwxr-x 15 axmore 500 4096 Jul 27 22:22 libmemcached-0.50
-rw-r--r-- 1 root root 884272 Jun 20 2011 libmemcached-0.50.tar.gz
drwxrwxr-x 24 axmore 500 4096 Jul 27 23:14 libmemcached-1.0.17
-rw-r--r-- 1 root root 229 Jul 6 01:53 libmemcached-1.0.17-i686-1cf.txt
-rw-r--r-- 1 root root 312640 Jul 6 01:29 libmemcached-1.0.17-i686-1cf.txz
-rw-r--r-- 1 root root 1023177 Apr 2 22:04 libmemcached-1.0.17.tar.gz
drwxrwxr-x 23 axmore 500 4096 Jul 27 16:58 libmemcached-1.0.2
-rw-r--r-- 1 root root 942891 Oct 26 2011 libmemcached-1.0.2.tar.gz
drwxrwxr-x 25 axmore 500 4096 Jul 27 22:37 libmemcached-1.0.4
-rw-r--r-- 1 root root 951310 Jan 27 2012 libmemcached-1.0.4.tar.gz
drwxrwxr-x 26 axmore 500 4096 Jul 26 18:44 libmemcached-1.0.8
-rw-r--r-- 1 root root 1084343 May 23 2012 libmemcached-1.0.8.tar.gz
-rw-r--r-- 1 root root 2329 Dec 24 2012 libmemcached.tar.gz
drwxr-xr-x 7 root root 4096 Jul 26 22:35 memcache-3.0.6
-rw-r--r-- 1 root root 54717 Apr 10 2011 memcache-3.0.6.tgz
drwxr-xr-x 8 root root 4096 Jul 26 23:02 memcache-3.0.8
-rw-r--r-- 1 root root 70523 Apr 7 19:14 memcache.tar.gz
drwxr-xr-x 2 root root 4096 Jul 26 23:11 memcached
drwxrwxrwx 6 irc 1000 4096 Jul 26 23:09 memcached-1.2.8
-rw-r--r-- 1 root root 221285 Apr 11 2009 memcached-1.2.8.tar.gz
drwxr-xr-x 7 irc 1000 4096 Jul 27 23:12 memcached-1.4.10
-rw-r--r-- 1 root root 311926 Nov 9 2011 memcached-1.4.10.tar.gz
drwxr-xr-x 7 irc 1000 4096 Jul 27 17:02 memcached-1.4.15
-rw-r--r-- 1 root root 324451 Sep 3 2012 memcached-1.4.15.tar.gz
drwxrwxrwx 8 irc 1000 4096 Jul 27 23:11 memcached-1.4.5
-rw-r--r-- 1 root root 302516 Apr 3 2010 memcached-1.4.5.tar.gz
drwxr-xr-x 7 irc 1000 4096 Jul 27 17:02 memcached-1.4.7
-rw-r--r-- 1 root root 307741 Aug 16 2011 memcached-1.4.7.tar.gz
-rw-r--r-- 1 root root 2342 Jun 3 22:05 memcached.tar.gz
drwxr-xr-x 3 root root 4096 Jul 27 23:42 memcachetest
I've also tried to "phpize" an install thinking that would help to no avail.
Looking in to trying to compile it via PECL right now - but hoping some Linux guru might see this and point out where I'm fumbling things :D
Installed also with PECL successfully - and still nothing.
# php -i | grep -i memcached Additional .ini files parsed => /etc/php/memcached.ini
memcached
memcached support => enabled
libmemcached version => 1.0.15
memcached.compression_factor => 1.3 => 1.3
memcached.compression_threshold => 2000 => 2000
memcached.compression_type => fastlz => fastlz
memcached.serializer => php => php
memcached.sess_binary => 0 => 0
memcached.sess_lock_wait => 150000 => 150000
memcached.sess_locking => 1 => 1
memcached.sess_prefix => memc.sess.key. => memc.sess.key.
Registered save handlers => files user memcached memcache
Well the simplest answer would have been DO NOT use pushpool. Just use stratum ;)
Of course that means no pushpool support for your mining pool - but who cares!
Stratum is the way to do - and using that as the backend for mmcfe-ng works great...at least on my Ubuntu server.
Will try on this after some testing and let you all know :)
But for now - you don't need to be held up at trying to install pushpool if you have problems - skip it and just go stratum and mmcfe-ng :)