oVPN
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 22, 2011, 04:02:12 AM Last edit: May 22, 2011, 04:18:31 AM by oVPN |
|
thanks did not solve the problem, something is stupid with centos but i compiled it with opensuse 11.4 x86_64 (openvz) some notes, bit mixed up with centOS, but i think this should help others, im going to sleep now # http://ivan.kartik.sk/static/48/ # How to install and setup Yum in OpenSUSE 11 #yum groupinstall "Development Tools" -y zypper install -t pattern devel_C_C++ #yum install -y openssl-devel.x86_64 mysql-devel.x86_64 curl-devel.x86_64 sqlite-devel.x86_64 postgresql-devel.x86_64 zlib-devel.x86_64 libevent-devel.x86_64 wget http://www.digip.org/jansson/releases/jansson-2.0.1.tar.gz; tar xfvz jansson-2.0.1.tar.gz; cd jansson-2.0.1/; ./configure && make && make install; cd ~ #wget http://centos.alt.ru/repository/centos/5/x86_64/libmemcached-0.40-1.el5.x86_64.rpm; rpm -i libmemcached-0.40-1.el5.x86_64.rpm; cd ~ #wget http://centos.alt.ru/repository/centos/5/x86_64/libmemcached-devel-0.40-1.el5.x86_64.rpm; rpm -i libmemcached-devel-0.40-1.el5.x86_64.rpm; cd ~ yum install libmemcached.x86_64 libmemcached-devel.x86_64 libcurl-devel.x86_64
useradd -m pushpool cd /home/pushpool wget http://yyz.us/bitcoin/pushpool-0.4.1.tar.gz; tar xfvz pushpool-0.4.1.tar.gz; cd pushpool-0.4.1/; ./configure --prefix=/home/pushpool/ && make make install chown pushpool /home/pushpool -R; cd /home/pushpool
|
oVPN.to Anonymous Services
|
|
|
timmmay
Member
![*](https://bitcointalk.org/Themes/custom1/images/star.gif)
Offline
Activity: 84
Merit: 10
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 22, 2011, 04:30:44 AM Last edit: May 22, 2011, 06:13:42 AM by timmmay |
|
I have the same problem. I installed sqlite-devel but didn't fix. I'll keep researching! EDIT: In db-sqlite.c, SQLITE_OPEN_READWRITE is not defined, nor is it defined in any of the includes, which is why Make is throwing a hissy fit. I wonder why this isn't causing a problem on other Distro's? EDIT 2: It seems this is a common problem with sqlite dependant apps on CentOS. I'm running up OpenSUSE 11.4 now to try my luck with that!
|
|
|
|
oVPN
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 22, 2011, 02:26:28 PM |
|
seems like pushpool will NOT run on bsd, debian or centos, but opensuse 11.4 compiled fine for me.
but anyhow there is a lack of documentation, isnt it?
|
oVPN.to Anonymous Services
|
|
|
Jine
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 22, 2011, 02:48:56 PM |
|
You're wrong. I'm running (and compiling) Pushpool successfully on Debian 6 (32bit) For all others, i added a template mysql-database and some stuff at my fork @ github: https://github.com/jine/pushpoolAlso requested a pull to original author, we'll see if he merges. Until then, a .sql file can be found above. Also modified example-cfg.json file.
|
Previous founder of Bit LC Inc. | I've always loved the idea of bitcoin.
|
|
|
oVPN
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 22, 2011, 03:03:41 PM |
|
ok i tried on debian 5 lenny 32bit and that did not work for me, because libevent was not found, but it was installed but i did not try deb6, maybe thats another hook.
|
oVPN.to Anonymous Services
|
|
|
Jine
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 22, 2011, 03:39:03 PM |
|
This is my setup:
jine@bitcoins:~$ dpkg -l | grep libevent ii libevent-1.4-2 1.4.13-stable-1 An asynchronous event notification library ii libevent-core-1.4-2 1.4.13-stable-1 An asynchronous event notification library (core) ii libevent-dev 1.4.13-stable-1 Development libraries, header files and docs for libevent ii libevent-extra-1.4-2 1.4.13-stable-1 An asynchronous event notification library (extra)
jine@bitcoins:~$ dpkg -l | grep crypto ii libcrypto++-dev 5.6.0-6 General purpose cryptographic library - C++ development ii libcrypto++8 5.6.0-6 General purpose cryptographic library - shared library ii libk5crypto3 1.8.3+dfsg-4 MIT Kerberos runtime libraries - Crypto Library ii openssl 0.9.8o-4squeeze1 Secure Socket Layer (SSL) binary and related cryptographic tools ii python-crypto 2.1.0-2 cryptographic algorithms and protocols for Python
jine@bitcoins:~$ dpkg -l | grep curl ii curl 7.21.0-1 Get a file from an HTTP, HTTPS or FTP server ii libcurl3 7.21.0-1 Multi-protocol file transfer library (OpenSSL) ii libcurl3-gnutls 7.21.0-1 Multi-protocol file transfer library (GnuTLS) ii libcurl4-openssl-dev 7.21.0-1 Development files and documentation for libcurl (OpenSSL) ii python-pycurl 7.19.0-3+b1 Python bindings to libcurl
Are you sure you got the -dev packages installed?
|
Previous founder of Bit LC Inc. | I've always loved the idea of bitcoin.
|
|
|
oVPN
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 22, 2011, 05:21:29 PM |
|
yes i`m sure that i installed dev packages on debian lenny 5 but there was a silly error on make. but compiling works finde with opensuse 11.4 (64bit), i will try debian 6 later
|
oVPN.to Anonymous Services
|
|
|
Jine
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 22, 2011, 05:23:49 PM |
|
Could you please provide the makeerror you got? I can try to find a fix for it & push it to my fork of pushpool.
Gonna setup a deb 5 later today/tomorrow and try it out by my self.
|
Previous founder of Bit LC Inc. | I've always loved the idea of bitcoin.
|
|
|
Dusty
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 22, 2011, 06:34:31 PM |
|
I'm sorry to ask something just only vaguely related but I'm unable to find any documentation about it and I need to understand better.
The miner programs connects to the pool server using an HTTP request but I'm unable to understand which kind of request it is. Is it a standard http web request? If yes, how are the json parameters passed?
In other words, how to decode the request using for example PHP, JSP or a similar scripting language?
Thanks in advance for any help on the subject.
|
|
|
|
Remember remember the 5th of November
Legendary
Offline
Activity: 1862
Merit: 1011
Reverse engineer from time to time
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 22, 2011, 07:23:43 PM |
|
The pool uses cURL to send it's data to Bitcoin. I think it should be through the HTTP protocol.
|
BTC:1AiCRMxgf1ptVQwx6hDuKMu4f7F27QmJC2
|
|
|
Dusty
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 22, 2011, 07:33:35 PM |
|
The pool uses cURL to send it's data to Bitcoin. I think it should be through the HTTP protocol. Thanks for the reply, mcfe. I've problems on the server side, not client side, I know the request is being made with curl. Anyway I think I'm understanding how to do it, I just need to access the request body, in java there is the method ServletRequest.getInputStream() and that should do it (still testing).
|
|
|
|
oVPN
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 22, 2011, 10:02:18 PM |
|
Could you please provide the makeerror you got? ...
i think it was this one http://nopaste.me/raw/18499477874dd849c76e47e.txtif i added a ./configure --without-sqlite , it ran into another error with `htole32`, i found no solution for that on deb5lenny32
|
oVPN.to Anonymous Services
|
|
|
Jine
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 22, 2011, 10:07:31 PM |
|
The pool uses cURL to send it's data to Bitcoin. I think it should be through the HTTP protocol. Thanks for the reply, mcfe. I've problems on the server side, not client side, I know the request is being made with curl. Anyway I think I'm understanding how to do it, I just need to access the request body, in java there is the method ServletRequest.getInputStream() and that should do it (still testing). I think the serverside uses CURL & JSON-RPC to. You can see the API-ref here, https://en.bitcoin.it/wiki/API_reference_%28JSON-RPC%29
|
Previous founder of Bit LC Inc. | I've always loved the idea of bitcoin.
|
|
|
Jine
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 22, 2011, 10:13:42 PM |
|
The pool uses cURL to send it's data to Bitcoin. I think it should be through the HTTP protocol. Thanks for the reply, mcfe. I've problems on the server side, not client side, I know the request is being made with curl. Anyway I think I'm understanding how to do it, I just need to access the request body, in java there is the method ServletRequest.getInputStream() and that should do it (still testing). I think the serverside uses CURL & JSON-RPC to. You can see the API-ref here, https://en.bitcoin.it/wiki/API_reference_%28JSON-RPC%29Could be some error with --no-sqlite flag to configure. I'll look into it tomorrow. Regards, Jim
|
Previous founder of Bit LC Inc. | I've always loved the idea of bitcoin.
|
|
|
kjj
Legendary
Offline
Activity: 1302
Merit: 1026
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 23, 2011, 03:02:46 AM |
|
Could you please provide the makeerror you got? ...
i think it was this one http://nopaste.me/raw/18499477874dd849c76e47e.txtif i added a ./configure --without-sqlite , it ran into another error with `htole32`, i found no solution for that on deb5lenny32 htole32 and friends are the newfangled way of changing byte orders. They are only in glibc 2.9 or higher. To get around this, open up server.c and msg.c, and paste this in below the long block of #includes #include <byteswap.h> #define htole32(x) (bswap_32(htonl(x))) #define le32toh(x) (ntohl(bswap_32(x)))
Note that I haven't tested it beyond getting pushpool to compile. I'm only about 90% sure I got the ordering right.
|
17Np17BSrpnHCZ2pgtiMNnhjnsWJ2TMqq8 I routinely ignore posters with paid advertising in their sigs. You should too.
|
|
|
oVPN
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 23, 2011, 11:23:23 AM |
|
.... htole32 and friends are the newfangled way of changing byte orders. They are only in glibc 2.9 or higher. ...
thanks for information, now we know why compile fails on deb5lenny and centos5.6. they have much older glibc
|
oVPN.to Anonymous Services
|
|
|
redhatzero
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 23, 2011, 10:14:03 PM |
|
Heya, I'm also thinking about building a pool with pushpool. Here are some questions from my side (maybe not all so much pushpool related): About the shares table: * our_result - If pushpool accepts the hash from the miner, this is Y... else N * reason - If pushpool doesn't accept the hash, this is the reason (so.. mostly 'stale' I guess) * upstream_result - If pushpool accepted the hash, it gets forwarded to bitcoind, if it's not accepted it's N, if it's a success it's Y (and a new block is born?)... I've got a couple of "our_result=Y; upstream_result=N" what does that mean? (Is it related to rpc.target.rewrite?) About pool speed: Look at your share log, for the rate of incoming solutions. How can I calculate the speed from that? Sometimes I'm sending a hash every 2 seconds, sometimes it takes minutes? Thanks ![Smiley](https://bitcointalk.org/Smileys/default/smiley.gif)
|
|
|
|
grue
Legendary
Offline
Activity: 2058
Merit: 1434
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 23, 2011, 10:15:16 PM |
|
super noob question from windows user: Can this be compiled on windows? by using cygwin or something?
|
|
|
|
error
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 23, 2011, 10:40:28 PM |
|
super noob question from windows user: Can this be compiled on windows? by using cygwin or something?
Probably, but you aren't going to run a pool on Windows.
|
3KzNGwzRZ6SimWuFAgh4TnXzHpruHMZmV8
|
|
|
xf2_org (OP)
Member
![*](https://bitcointalk.org/Themes/custom1/images/star.gif)
Offline
Activity: 98
Merit: 13
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
May 23, 2011, 10:42:55 PM |
|
About the shares table: * our_result - If pushpool accepts the hash from the miner, this is Y... else N * reason - If pushpool doesn't accept the hash, this is the reason (so.. mostly 'stale' I guess) * upstream_result - If pushpool accepted the hash, it gets forwarded to bitcoind, if it's not accepted it's N, if it's a success it's Y (and a new block is born?)...
I've got a couple of "our_result=Y; upstream_result=N" what does that mean? (Is it related to rpc.target.rewrite?)
For easy-target pools, pushpool does not submit all H==0 solutions to upstream bitcoind. That would be a lot of solutions with zero chance of being a valid mainnet block hash. pushpool requires 8 additional zero bits, before it submits to upstream. Therefore, you will see (Y, NULL) for most shares, (Y, N) for uncommon shares that are just a bit closer to the target, and (Y, Y) for valid, full-target mainnet block hash accepted by upstream. Only the latter (Y, Y) pays you 50 BTC, and generates a block w/ transactions. About pool speed: Look at your share log, for the rate of incoming solutions. How can I calculate the speed from that? Sometimes I'm sending a hash every 2 seconds, sometimes it takes minutes? If you are difficulty 1 pool, then each share represents 2**32 hashes. Divide over time to get hashes/second.
|
|
|
|
|