Received: from sog-mx-1.v43.ch3.sourceforge.com ([172.29.43.191] helo=mx.sourceforge.net) by sfs-ml-4.v29.ch3.sourceforge.com with esmtp (Exim 4.76) (envelope-from <thiagocmartinsc@gmail.com>) id 1SAfbm-0005Un-Hu for bitcoin-development@lists.sourceforge.net; Thu, 22 Mar 2012 10:51:06 +0000 Received-SPF: pass (sog-mx-1.v43.ch3.sourceforge.com: domain of gmail.com designates 209.85.220.175 as permitted sender) client-ip=209.85.220.175; envelope-from=thiagocmartinsc@gmail.com; helo=mail-vx0-f175.google.com; Received: from mail-vx0-f175.google.com ([209.85.220.175]) by sog-mx-1.v43.ch3.sourceforge.com with esmtps (TLSv1:RC4-SHA:128) (Exim 4.76) id 1SAfbg-0007GH-4S for bitcoin-development@lists.sourceforge.net; Thu, 22 Mar 2012 10:51:06 +0000 Received: by vcbfl13 with SMTP id fl13so2986288vcb.34 for <bitcoin-development@lists.sourceforge.net>; Thu, 22 Mar 2012 03:50:54 -0700 (PDT) Received: by 10.220.141.146 with SMTP id m18mr3537180vcu.47.1332413454094; Thu, 22 Mar 2012 03:50:54 -0700 (PDT) MIME-Version: 1.0 Received: by 10.220.224.199 with HTTP; Thu, 22 Mar 2012 03:50:23 -0700 (PDT) In-Reply-To: <07A82C1E-AE1D-44DC-AF02-38A3D755FA35@ceptacle.com> References: <D55C3D18-8286-44E9-B877-6FCE7C05E980@ceptacle.com> <CAJSM8J0zqF2=Poknzc8R7TrTJ0DWCMBw2-K9gGhUP_Qf+J6eFg@mail.gmail.com> <4FF4A408-F8C9-4A50-8B13-13D3686BEB09@ceptacle.com> <CAJSM8J3bZYfpE9EATcYe=79s_RxvGG9BrdRQR9ivwtZnuPsL0w@mail.gmail.com> <CAJSM8J2nhoKsOnAeF8qBW3zOfp=sJ25sd8gnw2dMJ3GgkohDjQ@mail.gmail.com> <C3C58158-0DED-41A1-B4D2-BF746AFE717A@ceptacle.com> <CAJSM8J3255LpXbHRF+zEi0QRoM0mwuRP3FSNbSwSyz-_ge=Few@mail.gmail.com> <3C518667-C2A6-4D1F-988D-888964925489@ceptacle.com> <CAJSM8J2-+uHKJg9xjqtz785HBNY8wXtJLnw70jP0_HgNspx4Tg@mail.gmail.com> <AB5AEA73-93BD-440E-89F0-F0951047D71A@ceptacle.com> <CAJSM8J2ytXR0RSL=3+Se6mggH+pDmnkSx+CUp-bcod4qmJ3ObA@mail.gmail.com> <07A82C1E-AE1D-44DC-AF02-38A3D755FA35@ceptacle.com> From: =?ISO-2022-JP?B?TWFydGlueCAtIBskQiU4JSchPCVgJTobKEI=?= <thiagocmartinsc@gmail.com> Date: Thu, 22 Mar 2012 07:50:23 -0300 Message-ID: <CAJSM8J2cjazkGn9vCdoqEKtDP0y1geftn7pJLcTmAGa4FH9BTA@mail.gmail.com> To: =?ISO-8859-1?Q?Michael_Gr=F8nager?= <gronager@ceptacle.com> Content-Type: multipart/alternative; boundary=f46d043bdfbaa00f5204bbd2aed1 X-Spam-Score: -0.6 (/) X-Spam-Report: Spam Filtering performed by mx.sourceforge.net. See http://spamassassin.org/tag/ for more details. -1.5 SPF_CHECK_PASS SPF reports sender host as permitted sender for sender-domain 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (thiagocmartinsc[at]gmail.com) -0.0 SPF_PASS SPF: sender matches SPF record 1.0 HTML_MESSAGE BODY: HTML included in message -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature X-Headers-End: 1SAfbg-0007GH-4S X-Mailman-Approved-At: Thu, 22 Mar 2012 17:04:51 +0000 Cc: Bitcoin Dev <bitcoin-development@lists.sourceforge.net> Subject: Re: [Bitcoin-development] Announcement: libcoin X-BeenThere: bitcoin-development@lists.sourceforge.net X-Mailman-Version: 2.1.9 Precedence: list List-Id: <bitcoin-development.lists.sourceforge.net> List-Unsubscribe: <https://lists.sourceforge.net/lists/listinfo/bitcoin-development>, <mailto:bitcoin-development-request@lists.sourceforge.net?subject=unsubscribe> List-Archive: <http://sourceforge.net/mailarchive/forum.php?forum_name=bitcoin-development> List-Post: <mailto:bitcoin-development@lists.sourceforge.net> List-Help: <mailto:bitcoin-development-request@lists.sourceforge.net?subject=help> List-Subscribe: <https://lists.sourceforge.net/lists/listinfo/bitcoin-development>, <mailto:bitcoin-development-request@lists.sourceforge.net?subject=subscribe> X-List-Received-Date: Thu, 22 Mar 2012 10:51:06 -0000 --f46d043bdfbaa00f5204bbd2aed1 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Michael, Since libcoin is "chain agnostic", I was wondering if the project can be used like this: When I install it with "make install", I would like to have something like this: Regular file: /usr/local/bin/libcoincore # or whatever you like Symlink -> Regular file /usr/local/bit/bitcoind -> /usr/local/bin/libcoincore # bitcoind is a symlink to libcoincore /usr/local/bit/litecoind -> /usr/local/bin/libcoincore # litecoind is a symlink to libcoincore /usr/local/bit/devcoind -> /usr/local/bin/libcoincore # devcoind is a symlink to libcoincore /usr/local/bit/namecoind -> /usr/local/bin/libcoincore # devcoind is a symlink to libcoincore ...and so on... So, libcoincore will interpret the ARGV[0] and, for each string, it will initiate the appropriate internal functions... I don't know if Libcoin already does something like that... I'm not a developer/code reader... Just a small nerd with big ideas... ^_^ Thanks! Thiago 2012/2/28 Michael Gr=C3=B8nager <gronager@ceptacle.com> > Hi again - and thanks for testing and finding this! > > I have fixed the bug you reported: > > The culprit was an implicit string constructor for the ChainAddress that > caused creation of a not fully initialized ChainAddress. The right way to > do it is using chain::getAddress(string) as the ChainAddress is chain > specific. > > A git pull will fix it ;) > > Cheers, > > Michael > > > On 27/02/2012, at 20:03, Martinx - =E3=82=B8=E3=82=A7=E3=83=BC=E3=83=A0= =E3=82=BA wrote: > > > AWESOME!! Thank you!! > > > > Anyway, I found a new problem... lol > > > > /usr/local/bin/bitcoind getinfo #okay > > { > > "version" : 40001, > > "blocks" : 168753, > > "connections" : 8, > > "difficulty" : 1376302.26788638, > > "testnet" : false > > } > > > > /usr/local/bin/bitcoind getaccountaddress "" # okay... > > 1J4vNcvEdeCuLH4yvyoC2gxFEF4zquoJ87 > > > > /usr/local/bin/bitcoind listaccounts # NOT okay... > > { > > } > > > > /usr/local/bin/bitcoind getaccountaddress "teste" # okay > > 1E6pGh6AAtuJdFXheZMp1zdYmvdqAQn9QT > > > > /usr/local/bin/bitcoind listaccounts # NOT okay... > > { > > "teste" : 0.00000000 > > } > > > > Where is my default account listed at "listaccounts" output?! > > > > Best, > > Thiago > > > > 2012/2/26 Michael Gr=C3=B8nager <gronager@ceptacle.com> > > And if you do an update now "help" is there too ;) > > > > /M > > > > On 25/02/2012, at 03:11, Martinx - =E3=82=B8=E3=82=A7=E3=83=BC=E3=83=A0= =E3=82=BA wrote: > > > >> Thank you!!! > >> > >> It is all working now! Except "help"... > >> > >> Nice work Michael!! > >> > >> Best, > >> Thiago > >> > >> 2012/2/24 Michael Gr=C3=B8nager <gronager@ceptacle.com> > >> OK - didn't took the weekend: > >> > >> support for "port" is on github now :) > >> > >> Only took two lines: > >> > >> ("port", value<unsigned short>(&port)->default_value(8333), > "Listen on specified port for the p2p protocol") > >> > >> and using the port option in the Node constructor (was there already): > >> > >> Node node(chain, data_dir, args.count("nolisten") ? "" : > "0.0.0.0", lexical_cast<string>(port)); // it is also here we specify the > use of a proxy! > >> > >> /M > >> > >> > >> > >> On 24/02/2012, at 19:49, Martinx - =E3=82=B8=E3=82=A7=E3=83=BC=E3=83= =A0=E3=82=BA wrote: > >> > >>> Hi Michael, > >>> > >>> Thank you for your attention! > >>> > >>> Now, I'm trying to start libcoin's bitcoind using high ports but, it > always try to listen at 8332, no matter what I "say"... > >>> > >>> Look: > >>> > >>> $ cat .bitcoin/bitcoin.conf > >>> server=3D1 > >>> daemon=3D1 > >>> rpcuser=3Dlibcoin > >>> rpcpassword=3DLibCoin13 > >>> rpcport=3D10332 > >>> port=3D10333 > >>> > >>> But: > >>> > >>> /usr/local/bin/bitcoind > >>> Error: Address already in use > >>> > >>> terminate called after throwing an instance of 'DbException' > >>> what(): DbEnv::close: Invalid argument > >>> Aborted > >>> > >>> When I "strace it", I can see: > >>> > >>> ... > >>> bind(12, {sa_family=3DAF_INET, sin_port=3Dhtons(8333), > sin_addr=3Dinet_addr("0.0.0.0")}, 16) =3D -1 EADDRINUSE (Address already = in use) > >>> ... > >>> > >>> I already tried: > >>> > >>> /usr/local/bin/bitcoind --rpcport 10332 > >>> /usr/local/bin/bitcoind --rpcport=3D10332 > >>> > >>> Without success... > >>> > >>> Thanks again! > >>> Thiago > >>> > >>> 2012/2/24 Michael Gr=C3=B8nager <gronager@ceptacle.com> > >>> Hi Thiago, > >>> > >>> Forgot to comment on the two latter: > >>> > >>>> $ bitcoind getaccountaddress "" > >>>> HTTP error code: 401 > >>>> Error: couldn't parse reply from server > >>>> > >>>> $ bitcoind listaccounts > >>>> HTTP error code: 401 > >>>> Error: couldn't parse reply from server > >>>> > >>> > >>> 401 =3D permission denied - you need to setup username / password eit= her > on the commandline or in the bicoin.conf file to access those commands... > >>> > >>> See in the bitcoind.cpp file for commands that you can use with and > without auth... > >>> > >>> Those that contains an "auth" requires auth: > >>> > >>> server.registerMethod(method_ptr(new GetBalance(wallet)), auth); > >>> > >>> As opposed to: > >>> > >>> server.registerMethod(method_ptr(new GetInfo(node))); > >>> > >>> auth is defined by: > >>> > >>> Auth auth(rpc_user, rpc_pass); // if rpc_user and rpc_pass are no= t > set, all authenticated methods becomes disallowed. > >>> > >>> so you just experience the case explained in the comment ;) I admit > that the output could be more readable, though! > >>> > >>> /M > >>> > >>> > >>>> > >>>> Any tips?! lol > >>>> > >>>> Thanks! > >>>> Thiago > >>>> > >>>> 2012/2/23 Martinx - =E3=82=B8=E3=82=A7=E3=83=BC=E3=83=A0=E3=82=BA <t= hiagocmartinsc@gmail.com> > >>>> AWESOME!!! > >>>> > >>>> I can compile libcoin at my Ubuntu 11.10... I just need to install: > >>>> > >>>> sudo aptitude install libboost1.46-all-dev > >>>> > >>>> ...alongside with another already installed dependencies, and now it > works!! > >>>> > >>>> Thank you! > >>>> Thiago > >>>> > >>>> 2012/2/23 Michael Gr=C3=B8nager <gronager@ceptacle.com> > >>>> Hi Martinx, > >>>> > >>>> Another note: > >>>> > >>>> boost 1.42 and openssl 1.0 has a conflict (you will see it when you > try to compile coinHTTP with that specific combination: sslv2 has been > removed from openssl, but boost still references it.) > >>>> > >>>> You should do a : > >>>> > >>>> sudo apt-get upgrade libboost-dev-all > >>>> > >>>> to get the 1.46.1 library > >>>> > >>>> /M > >>>> > >>>> > >>>> On 23/02/2012, at 18:31, Martinx - =E3=82=B8=E3=82=A7=E3=83=BC=E3=83= =A0=E3=82=BA wrote: > >>>> > >>>>> Hi Michael! > >>>>> > >>>>> Thank you for libcoin! It is a awesome evolution for Bitcoin and fo= r > the CryptoCurrencies as a hole... Thanks!!! > >>>>> > >>>>> Anyway, I am unable to compile libcoin under my Ubuntu 11.04. At > this machine, I have compiled and running Bitcoin (from sources), Namecoi= n, > Devcoin, Litecoin, IXcoin and I0coin, all from sources but, when I try to > compile libcoin, I got: > >>>>> > >>>>> ---- > >>>>> user@desk:~/libcoin$ ./configure > >>>>> -- The C compiler identification is GNU > >>>>> -- The CXX compiler identification is GNU > >>>>> -- Check for working C compiler: /usr/bin/gcc > >>>>> -- Check for working C compiler: /usr/bin/gcc -- works > >>>>> -- Detecting C compiler ABI info > >>>>> -- Detecting C compiler ABI info - done > >>>>> -- Check for working CXX compiler: /usr/bin/c++ > >>>>> -- Check for working CXX compiler: /usr/bin/c++ -- works > >>>>> -- Detecting CXX compiler ABI info > >>>>> -- Detecting CXX compiler ABI info - done > >>>>> -- Looking for include files CMAKE_HAVE_PTHREAD_H > >>>>> -- Looking for include files CMAKE_HAVE_PTHREAD_H - found > >>>>> -- Looking for pthread_create in pthreads > >>>>> -- Looking for pthread_create in pthreads - not found > >>>>> -- Looking for pthread_create in pthread > >>>>> -- Looking for pthread_create in pthread - found > >>>>> -- Found Threads: TRUE > >>>>> -- Looking for XOpenDisplay in > /usr/lib/i386-linux-gnu/libX11.so;/usr/lib/i386-linux-gnu/libXext.so > >>>>> -- Looking for XOpenDisplay in > /usr/lib/i386-linux-gnu/libX11.so;/usr/lib/i386-linux-gnu/libXext.so - fo= und > >>>>> -- Looking for gethostbyname > >>>>> -- Looking for gethostbyname - found > >>>>> -- Looking for connect > >>>>> -- Looking for connect - found > >>>>> -- Looking for remove > >>>>> -- Looking for remove - found > >>>>> -- Looking for shmat > >>>>> -- Looking for shmat - found > >>>>> -- Looking for IceConnectionNumber in ICE > >>>>> -- Looking for IceConnectionNumber in ICE - found > >>>>> -- Found X11: /usr/lib/i386-linux-gnu/libX11.so > >>>>> -- Boost version: 1.42.0 > >>>>> -- Found the following Boost libraries: > >>>>> -- date_time > >>>>> -- regex > >>>>> -- filesystem > >>>>> -- system > >>>>> -- program_options > >>>>> -- thread > >>>>> -- Found OpenSSL: /usr/lib/libssl.so;/usr/lib/libcrypto.so > >>>>> -- Looking for Q_WS_X11 > >>>>> -- Looking for Q_WS_X11 - found > >>>>> -- Looking for Q_WS_WIN > >>>>> -- Looking for Q_WS_WIN - not found. > >>>>> -- Looking for Q_WS_QWS > >>>>> -- Looking for Q_WS_QWS - not found. > >>>>> -- Looking for Q_WS_MAC > >>>>> -- Looking for Q_WS_MAC - not found. > >>>>> -- Found Qt-Version 4.7.2 (using /usr/bin/qmake) > >>>>> -- Found wxWidgets: TRUE > >>>>> > >>>>> The build system is configured to install libraries to /usr/local/l= ib > >>>>> Your applications may not be able to find your installed libraries > unless you: > >>>>> set your LD_LIBRARY_PATH (user specific) or > >>>>> update your ld.so configuration (system wide) > >>>>> You have an ld.so.conf.d directory on your system, so if you wish t= o > ensure that > >>>>> applications find the installed libcoin libraries, system wide, you > could install an > >>>>> libcoin specific ld.so configuration with: > >>>>> sudo make install_ld_conf > >>>>> > >>>>> -- Configuring done > >>>>> -- Generating done > >>>>> -- Build files have been written to: /home/user/libcoin > >>>>> ---- > >>>>> > >>>>> Now I tried make, without success: > >>>>> > >>>>> ---- > >>>>> ..... > >>>>> Script.cpp:(.text._ZngRK7CBigNum[operator-(CBigNum const&)]+0xf): > undefined reference to `BN_init' > >>>>> Script.cpp:(.text._ZngRK7CBigNum[operator-(CBigNum const&)]+0x1e): > undefined reference to `BN_copy' > >>>>> Script.cpp:(.text._ZngRK7CBigNum[operator-(CBigNum const&)]+0x38): > undefined reference to `BN_set_negative' > >>>>> Script.cpp:(.text._ZngRK7CBigNum[operator-(CBigNum const&)]+0x4f): > undefined reference to `BN_clear_free' > >>>>> Script.cpp:(.text._ZngRK7CBigNum[operator-(CBigNum const&)]+0xd3): > undefined reference to `BN_clear_free' > >>>>> ../../lib/libcoin.a(Script.o): In function `operator<<(CBigNum > const&, unsigned int)': > >>>>> Script.cpp:(.text._ZlsRK7CBigNumj[operator<<(CBigNum const&, > unsigned int)]+0x16): undefined reference to `BN_init' > >>>>> Script.cpp:(.text._ZlsRK7CBigNumj[operator<<(CBigNum const&, > unsigned int)]+0x2c): undefined reference to `BN_lshift' > >>>>> Script.cpp:(.text._ZlsRK7CBigNumj[operator<<(CBigNum const&, > unsigned int)]+0xad): undefined reference to `BN_clear_free' > >>>>> ../../lib/libcoin.a(Script.o): In function `operator>>(CBigNum > const&, unsigned int)': > >>>>> Script.cpp:(.text._ZrsRK7CBigNumj[operator>>(CBigNum const&, > unsigned int)]+0xf): undefined reference to `BN_init' > >>>>> Script.cpp:(.text._ZrsRK7CBigNumj[operator>>(CBigNum const&, > unsigned int)]+0x1e): undefined reference to `BN_copy' > >>>>> Script.cpp:(.text._ZrsRK7CBigNumj[operator>>(CBigNum const&, > unsigned int)]+0x47): undefined reference to `BN_clear_free' > >>>>> Script.cpp:(.text._ZrsRK7CBigNumj[operator>>(CBigNum const&, > unsigned int)]+0xcb): undefined reference to `BN_clear_free' > >>>>> ../../lib/libcoin.a(Script.o): In function `operator!=3D(CBigNum > const&, CBigNum const&)': > >>>>> Script.cpp:(.text._ZneRK7CBigNumS1_[operator!=3D(CBigNum const&, > CBigNum const&)]+0x14): undefined reference to `BN_cmp' > >>>>> ../../lib/libcoin.a(Script.o): In function `operator>(CBigNum > const&, CBigNum const&)': > >>>>> Script.cpp:(.text._ZgtRK7CBigNumS1_[operator>(CBigNum const&, > CBigNum const&)]+0x14): undefined reference to `BN_cmp' > >>>>> ../../lib/libcoin.a(Script.o): In function `uint256 > Hash<__gnu_cxx::__normal_iterator<unsigned char*, std::vector<unsigned > char, std::allocator<unsigned char> > > > >(__gnu_cxx::__normal_iterator<unsigned char*, std::vector<unsigned char, > std::allocator<unsigned char> > >, __gnu_cxx::__normal_iterator<unsigned > char*, std::vector<unsigned char, std::allocator<unsigned char> > >)': > >>>>> > Script.cpp:(.text._Z4HashIN9__gnu_cxx17__normal_iteratorIPhSt6vectorIhSaI= hEEEEE7uint256T_S8_[uint256 > Hash<__gnu_cxx::__normal_iterator<unsigned char*, std::vector<unsigned > char, std::allocator<unsigned char> > > > >(__gnu_cxx::__normal_iterator<unsigned char*, std::vector<unsigned char, > std::allocator<unsigned char> > >, __gnu_cxx::__normal_iterator<unsigned > char*, std::vector<unsigned char, std::allocator<unsigned char> > > >)]+0x6d): undefined reference to `SHA256' > >>>>> > Script.cpp:(.text._Z4HashIN9__gnu_cxx17__normal_iteratorIPhSt6vectorIhSaI= hEEEEE7uint256T_S8_[uint256 > Hash<__gnu_cxx::__normal_iterator<unsigned char*, std::vector<unsigned > char, std::allocator<unsigned char> > > > >(__gnu_cxx::__normal_iterator<unsigned char*, std::vector<unsigned char, > std::allocator<unsigned char> > >, __gnu_cxx::__normal_iterator<unsigned > char*, std::vector<unsigned char, std::allocator<unsigned char> > > >)]+0xb8): undefined reference to `SHA256' > >>>>> collect2: ld returned 1 exit status > >>>>> make[2]: *** [bin/bitcoind] Error 1 > >>>>> make[1]: *** [applications/bitcoind/CMakeFiles/app_bitcoind.dir/all= ] > Error 2 > >>>>> make: *** [all] Error 2 > >>>>> ----- > >>>>> > >>>>> What can I do?! > >>>>> > >>>>> Best, > >>>>> Thiago > >>>>> > >>>>> > >>>>> On 1 February 2012 12:18, Michael Gr=C3=B8nager <gronager@ceptacle.= com> > wrote: > >>>>> Dear Bitcoiners, > >>>>> > >>>>> libcoin is now in a state ready for its first release, which I woul= d > like to share with you! > >>>>> > >>>>> =3D=3D=3D libcoin is a crypto currency library based on the > bitcoin/bitcoin "Satoshi" client. =3D=3D=3D > >>>>> > >>>>> Copenhagen, Denmark - 1st February 2012 Ceptacle announces the > release of the first version of the crypto currency library "libcoin" bas= ed > on the bitcoin/bitcoin "Satoshi" client. > >>>>> > >>>>> libcoin also maintains a version of bitcoind that is a 100% > compatible drop-in replacement of the bitcoin/bitcoind client: You can us= e > it on the same computer on the same files and you can call it with the sa= me > scripts. And you can easily extend it without touching the basic bitcoin > source files. > >>>>> > >>>>> The libcoin/bitcoind client downloads the entire block chain 3.5 > times faster than the bitcoin/bitcoind client. This is less than 90 minut= es > on a modern laptop! > >>>>> > >>>>> In libcoin, the Satoshi client code has been completely refactored, > properly encapsulating classes, removing all globals, moving from threads > and mutexes to a pure asynchronous approach. Functionalities have been > divided into logical units and libraries, minimizing dependencies for e.g= . > thin clients. > >>>>> > >>>>> libcoin is chain agnostic, all chain (bitcoin, testnet, namecoin, > litecoin, ...) specific settings are maintained from a single class (Chai= n) > and hence experiments with chain settings, mining, security and digital > currencies for research and educational purposes are easily accessible. S= ee > the ponzicoin example for how you define your own chain. > >>>>> > >>>>> The build system of libcoin is based on CMake and supports builds o= f > static and dynamic libraries on Linux, Mac OS X, and Windows. > >>>>> > >>>>> The libcoin license is LGPL v. 3. This mean that you can use it in > open source as well as in commercial projects, but improvements should go > back into the libcoin library. > >>>>> > >>>>> =3D=3D=3D=3D=3D=3D > >>>>> > >>>>> Read more on libcoin on: http://github.com/ceptacle/libcoin/wiki > >>>>> > >>>>> Join libcoin on twitter: http://twitter.com/libcoin > >>>>> > >>>>> Download "libcoin Satoshi release": > http://github.com/ceptacle/libcoin/zipball/v0.4.0.1 > >>>>> > >>>>> Best regards, > >>>>> > >>>>> Michael Gronager, PhD > >>>>> Director, Ceptacle > >>>>> Jens Juels Gade 33 > >>>>> 2100 Copenhagen E > >>>>> Mobile: +45 31 45 14 01 > >>>>> E-mail: gronager@ceptacle.com > >>>>> Web: http://www.ceptacle.com/ > >>>>> > >>>>> > >>>>> > -------------------------------------------------------------------------= ----- > >>>>> Keep Your Developer Skills Current with LearnDevNow! > >>>>> The most comprehensive online learning library for Microsoft > developers > >>>>> is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, > MVC3, > >>>>> Metro Style Apps, more. Free future releases when you subscribe now= ! > >>>>> http://p.sf.net/sfu/learndevnow-d2d > >>>>> _______________________________________________ > >>>>> Bitcoin-development mailing list > >>>>> Bitcoin-development@lists.sourceforge.net > >>>>> https://lists.sourceforge.net/lists/listinfo/bitcoin-development > >>>>> > >>>> > >>>> Michael Gronager, PhD > >>>> Director, Ceptacle > >>>> Jens Juels Gade 33 > >>>> 2100 Copenhagen E > >>>> Mobile: +45 31 45 14 01 > >>>> E-mail: gronager@ceptacle.com > >>>> Web: http://www.ceptacle.com/ > >>>> > >>>> > >>>> > >>> > >>> > >> > >> Michael Gronager, PhD > >> Director, Ceptacle > >> Jens Juels Gade 33 > >> 2100 Copenhagen E > >> Mobile: +45 31 45 14 01 > >> E-mail: gronager@ceptacle.com > >> Web: http://www.ceptacle.com/ > >> > >> > > > > Michael Gronager, PhD > > Director, Ceptacle > > Jens Juels Gade 33 > > 2100 Copenhagen E > > Mobile: +45 31 45 14 01 > > E-mail: gronager@ceptacle.com > > Web: http://www.ceptacle.com/ > > > > > > Michael Gronager, PhD > Director, Ceptacle > Jens Juels Gade 33 > 2100 Copenhagen E > Mobile: +45 31 45 14 01 > E-mail: gronager@ceptacle.com > Web: http://www.ceptacle.com/ > > --f46d043bdfbaa00f5204bbd2aed1 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Michael,<div><br></div><div>=C2=A0Since libcoin is "chain agnostic&quo= t;, I was wondering if the project can be used like this:</div><div><br></d= iv><div>=C2=A0When I install it with "make install", I would like= to have something like this:</div> <div><br></div><div>=C2=A0Regular file: /usr/local/bin/libcoincore # or wha= tever you like</div><div><br></div><div>=C2=A0Symlink -> Regular file</d= iv><div><br></div><div>=C2=A0/usr/local/bit/bitcoind ->=C2=A0=C2=A0/usr/= local/bin/libcoincore =C2=A0# bitcoind is a symlink to libcoincore</div> <div><br></div><div>=C2=A0/usr/local/bit/litecoind ->=C2=A0=C2=A0/usr/lo= cal/bin/libcoincore =C2=A0# litecoind is a symlink to libcoincore</div><div= ><br><div> =C2=A0/usr/local/bit/devcoind ->=C2=A0=C2=A0/usr/local/bin/libcoincore = =C2=A0# devcoind is a symlink to libcoincore</div><div><br></div><div><div>= =C2=A0/usr/local/bit/namecoind ->=C2=A0=C2=A0/usr/local/bin/libcoincore = =C2=A0# devcoind is a symlink to libcoincore</div> </div> <div><br></div><div>=C2=A0...and so on...</div><div><br></div><div>=C2=A0So= , libcoincore will interpret the ARGV[0] and, for each string, it will init= iate the appropriate internal functions...</div><div><br></div><div>=C2=A0I= don't know if Libcoin already does something like that... I'm not = a developer/code reader... Just a small nerd with big ideas... =C2=A0^_^</d= iv> <div><br></div><div>Thanks!</div><div>Thiago</div><br><div class=3D"gmail_q= uote">2012/2/28 Michael Gr=C3=B8nager <span dir=3D"ltr"><<a href=3D"mail= to:gronager@ceptacle.com" target=3D"_blank">gronager@ceptacle.com</a>></= span><br> <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p= x #ccc solid;padding-left:1ex"> Hi again - and thanks for testing and finding this!<br> <br> I have fixed the bug you reported:<br> <br> The culprit was an implicit string constructor for the ChainAddress that ca= used creation of a not fully initialized ChainAddress. The right way to do = it is using chain::getAddress(string) as the ChainAddress is chain specific= .<br> <br> A git pull will fix it ;)<br> <br> Cheers,<br> <br> Michael<br> <div><br> <br> On 27/02/2012, at 20:03, Martinx - =E3=82=B8=E3=82=A7=E3=83=BC=E3=83=A0=E3= =82=BA wrote:<br> <br> </div><div><div>> AWESOME!! Thank you!!<br> ><br> > Anyway, I found a new problem... lol<br> ><br> > /usr/local/bin/bitcoind getinfo #okay<br> > {<br> > =C2=A0 =C2=A0"version" : 40001,<br> > =C2=A0 =C2=A0"blocks" : 168753,<br> > =C2=A0 =C2=A0"connections" : 8,<br> > =C2=A0 =C2=A0"difficulty" : 1376302.26788638,<br> > =C2=A0 =C2=A0"testnet" : false<br> > }<br> ><br> > /usr/local/bin/bitcoind getaccountaddress "" =C2=A0# okay...= <br> > 1J4vNcvEdeCuLH4yvyoC2gxFEF4zquoJ87<br> ><br> > /usr/local/bin/bitcoind listaccounts # NOT okay...<br> > {<br> > }<br> ><br> > /usr/local/bin/bitcoind getaccountaddress "teste" # okay<br> > 1E6pGh6AAtuJdFXheZMp1zdYmvdqAQn9QT<br> ><br> > /usr/local/bin/bitcoind listaccounts # NOT okay...<br> > {<br> > =C2=A0 =C2=A0"teste" : 0.00000000<br> > }<br> ><br> > Where is my default account listed at "listaccounts" output?= !<br> ><br> > Best,<br> > Thiago<br> ><br> > 2012/2/26 Michael Gr=C3=B8nager <<a href=3D"mailto:gronager@ceptacl= e.com" target=3D"_blank">gronager@ceptacle.com</a>><br> > And if you do an update now "help" is there too ;)<br> ><br> > /M<br> ><br> > On 25/02/2012, at 03:11, Martinx - =E3=82=B8=E3=82=A7=E3=83=BC=E3=83= =A0=E3=82=BA wrote:<br> ><br> >> Thank you!!!<br> >><br> >> It is all working now! Except "help"...<br> >><br> >> Nice work Michael!!<br> >><br> >> Best,<br> >> Thiago<br> >><br> >> 2012/2/24 Michael Gr=C3=B8nager <<a href=3D"mailto:gronager@cep= tacle.com" target=3D"_blank">gronager@ceptacle.com</a>><br> >> OK - didn't took the weekend:<br> >><br> >> support for "port" is on github now :)<br> >><br> >> Only took two lines:<br> >><br> >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0("port", value<unsi= gned short>(&port)->default_value(8333), "Listen on specifie= d port for the p2p protocol")<br> >><br> >> and using the port option in the Node constructor (was there alrea= dy):<br> >><br> >> =C2=A0 =C2=A0 =C2=A0Node node(chain, data_dir, args.count("no= listen") ? "" : "0.0.0.0", lexical_cast<string&= gt;(port)); // it is also here we specify the use of a proxy!<br> >><br> >> /M<br> >><br> >><br> >><br> >> On 24/02/2012, at 19:49, Martinx - =E3=82=B8=E3=82=A7=E3=83=BC=E3= =83=A0=E3=82=BA wrote:<br> >><br> >>> Hi Michael,<br> >>><br> >>> Thank you for your attention!<br> >>><br> >>> Now, I'm trying to start libcoin's bitcoind using high= ports but, it always try to listen at 8332, no matter what I "say&quo= t;...<br> >>><br> >>> Look:<br> >>><br> >>> $ cat .bitcoin/bitcoin.conf<br> >>> server=3D1<br> >>> daemon=3D1<br> >>> rpcuser=3Dlibcoin<br> >>> rpcpassword=3DLibCoin13<br> >>> rpcport=3D10332<br> >>> port=3D10333<br> >>><br> >>> But:<br> >>><br> >>> /usr/local/bin/bitcoind<br> >>> Error: Address already in use<br> >>><br> >>> terminate called after throwing an instance of 'DbExceptio= n'<br> >>> what(): =C2=A0DbEnv::close: Invalid argument<br> >>> Aborted<br> >>><br> >>> When I "strace it", I can see:<br> >>><br> >>> ...<br> >>> bind(12, {sa_family=3DAF_INET, sin_port=3Dhtons(8333), sin_add= r=3Dinet_addr("0.0.0.0")}, 16) =3D -1 EADDRINUSE (Address already= in use)<br> >>> ...<br> >>><br> >>> I already tried:<br> >>><br> >>> /usr/local/bin/bitcoind --rpcport 10332<br> >>> /usr/local/bin/bitcoind --rpcport=3D10332<br> >>><br> >>> Without success...<br> >>><br> >>> Thanks again!<br> >>> Thiago<br> >>><br> >>> 2012/2/24 Michael Gr=C3=B8nager <<a href=3D"mailto:gronager= @ceptacle.com" target=3D"_blank">gronager@ceptacle.com</a>><br> >>> Hi Thiago,<br> >>><br> >>> Forgot to comment on the two latter:<br> >>><br> >>>> $ bitcoind getaccountaddress ""<br> >>>> HTTP error code: 401<br> >>>> Error: couldn't parse reply from server<br> >>>><br> >>>> $ bitcoind listaccounts<br> >>>> HTTP error code: 401<br> >>>> Error: couldn't parse reply from server<br> >>>><br> >>><br> >>> 401 =3D permission denied - you need to setup username / passw= ord either on the commandline or in the bicoin.conf file to access those co= mmands...<br> >>><br> >>> See in the bitcoind.cpp file for commands that you can use wit= h and without auth...<br> >>><br> >>> Those that contains an "auth" requires auth:<br> >>><br> >>> =C2=A0 =C2=A0 server.registerMethod(method_ptr(new GetBalance(= wallet)), auth);<br> >>><br> >>> As opposed to:<br> >>><br> >>> =C2=A0 =C2=A0 server.registerMethod(method_ptr(new GetInfo(nod= e)));<br> >>><br> >>> auth is defined by:<br> >>><br> >>> =C2=A0 =C2=A0 Auth auth(rpc_user, rpc_pass); // if rpc_user an= d rpc_pass are not set, all authenticated methods becomes disallowed.<br> >>><br> >>> so you just experience the case explained in the comment ;) I = admit that the output could be more readable, though!<br> >>><br> >>> /M<br> >>><br> >>><br> >>>><br> >>>> Any tips?! lol<br> >>>><br> >>>> Thanks!<br> >>>> Thiago<br> >>>><br> >>>> 2012/2/23 Martinx - =E3=82=B8=E3=82=A7=E3=83=BC=E3=83=A0= =E3=82=BA <<a href=3D"mailto:thiagocmartinsc@gmail.com" target=3D"_blank= ">thiagocmartinsc@gmail.com</a>><br> >>>> AWESOME!!!<br> >>>><br> >>>> I can compile libcoin at my Ubuntu 11.10... I just need to= install:<br> >>>><br> >>>> sudo aptitude install libboost1.46-all-dev<br> >>>><br> >>>> ...alongside with another already installed dependencies, = and now it works!!<br> >>>><br> >>>> Thank you!<br> >>>> Thiago<br> >>>><br> >>>> 2012/2/23 Michael Gr=C3=B8nager <<a href=3D"mailto:gron= ager@ceptacle.com" target=3D"_blank">gronager@ceptacle.com</a>><br> >>>> Hi Martinx,<br> >>>><br> >>>> Another note:<br> >>>><br> >>>> boost 1.42 and openssl 1.0 has a conflict (you will see it= when you try to compile coinHTTP with that specific combination: sslv2 has= been removed from openssl, but boost still references it.)<br> >>>><br> >>>> You should do a :<br> >>>><br> >>>> sudo apt-get upgrade libboost-dev-all<br> >>>><br> >>>> to get the 1.46.1 library<br> >>>><br> >>>> /M<br> >>>><br> >>>><br> >>>> On 23/02/2012, at 18:31, Martinx - =E3=82=B8=E3=82=A7=E3= =83=BC=E3=83=A0=E3=82=BA wrote:<br> >>>><br> >>>>> Hi Michael!<br> >>>>><br> >>>>> Thank you for libcoin! It is a awesome evolution for B= itcoin and for the CryptoCurrencies as a hole... Thanks!!!<br> >>>>><br> >>>>> Anyway, I am unable to compile libcoin under my Ubuntu= 11.04. At this machine, I have compiled and running Bitcoin (from sources)= , Namecoin, Devcoin, Litecoin, IXcoin and I0coin, all from sources but, whe= n I try to compile libcoin, I got:<br> >>>>><br> >>>>> ----<br> >>>>> user@desk:~/libcoin$ ./configure<br> >>>>> -- The C compiler identification is GNU<br> >>>>> -- The CXX compiler identification is GNU<br> >>>>> -- Check for working C compiler: /usr/bin/gcc<br> >>>>> -- Check for working C compiler: /usr/bin/gcc -- works= <br> >>>>> -- Detecting C compiler ABI info<br> >>>>> -- Detecting C compiler ABI info - done<br> >>>>> -- Check for working CXX compiler: /usr/bin/c++<br> >>>>> -- Check for working CXX compiler: /usr/bin/c++ -- wor= ks<br> >>>>> -- Detecting CXX compiler ABI info<br> >>>>> -- Detecting CXX compiler ABI info - done<br> >>>>> -- Looking for include files CMAKE_HAVE_PTHREAD_H<br> >>>>> -- Looking for include files CMAKE_HAVE_PTHREAD_H - fo= und<br> >>>>> -- Looking for pthread_create in pthreads<br> >>>>> -- Looking for pthread_create in pthreads - not found<= br> >>>>> -- Looking for pthread_create in pthread<br> >>>>> -- Looking for pthread_create in pthread - found<br> >>>>> -- Found Threads: TRUE<br> >>>>> -- Looking for XOpenDisplay in /usr/lib/i386-linux-gnu= /libX11.so;/usr/lib/i386-linux-gnu/libXext.so<br> >>>>> -- Looking for XOpenDisplay in /usr/lib/i386-linux-gnu= /libX11.so;/usr/lib/i386-linux-gnu/libXext.so - found<br> >>>>> -- Looking for gethostbyname<br> >>>>> -- Looking for gethostbyname - found<br> >>>>> -- Looking for connect<br> >>>>> -- Looking for connect - found<br> >>>>> -- Looking for remove<br> >>>>> -- Looking for remove - found<br> >>>>> -- Looking for shmat<br> >>>>> -- Looking for shmat - found<br> >>>>> -- Looking for IceConnectionNumber in ICE<br> >>>>> -- Looking for IceConnectionNumber in ICE - found<br> >>>>> -- Found X11: /usr/lib/i386-linux-gnu/libX11.so<br> >>>>> -- Boost version: 1.42.0<br> >>>>> -- Found the following Boost libraries:<br> >>>>> -- =C2=A0 date_time<br> >>>>> -- =C2=A0 regex<br> >>>>> -- =C2=A0 filesystem<br> >>>>> -- =C2=A0 system<br> >>>>> -- =C2=A0 program_options<br> >>>>> -- =C2=A0 thread<br> >>>>> -- Found OpenSSL: /usr/lib/libssl.so;/usr/lib/libcrypt= o.so<br> >>>>> -- Looking for Q_WS_X11<br> >>>>> -- Looking for Q_WS_X11 - found<br> >>>>> -- Looking for Q_WS_WIN<br> >>>>> -- Looking for Q_WS_WIN - not found.<br> >>>>> -- Looking for Q_WS_QWS<br> >>>>> -- Looking for Q_WS_QWS - not found.<br> >>>>> -- Looking for Q_WS_MAC<br> >>>>> -- Looking for Q_WS_MAC - not found.<br> >>>>> -- Found Qt-Version 4.7.2 (using /usr/bin/qmake)<br> >>>>> -- Found wxWidgets: TRUE<br> >>>>><br> >>>>> The build system is configured to install libraries to= /usr/local/lib<br> >>>>> Your applications may not be able to find your install= ed libraries unless you:<br> >>>>> =C2=A0set your LD_LIBRARY_PATH (user specific) or<br> >>>>> =C2=A0update your ld.so configuration (system wide)<br= > >>>>> You have an ld.so.conf.d directory on your system, so = if you wish to ensure that<br> >>>>> applications find the installed libcoin libraries, sys= tem wide, you could install an<br> >>>>> libcoin specific ld.so configuration with:<br> >>>>> =C2=A0sudo make install_ld_conf<br> >>>>><br> >>>>> -- Configuring done<br> >>>>> -- Generating done<br> >>>>> -- Build files have been written to: /home/user/libcoi= n<br> >>>>> ----<br> >>>>><br> >>>>> Now I tried make, without success:<br> >>>>><br> >>>>> ----<br> >>>>> .....<br> >>>>> Script.cpp:(.text._ZngRK7CBigNum[operator-(CBigNum con= st&)]+0xf): undefined reference to `BN_init'<br> >>>>> Script.cpp:(.text._ZngRK7CBigNum[operator-(CBigNum con= st&)]+0x1e): undefined reference to `BN_copy'<br> >>>>> Script.cpp:(.text._ZngRK7CBigNum[operator-(CBigNum con= st&)]+0x38): undefined reference to `BN_set_negative'<br> >>>>> Script.cpp:(.text._ZngRK7CBigNum[operator-(CBigNum con= st&)]+0x4f): undefined reference to `BN_clear_free'<br> >>>>> Script.cpp:(.text._ZngRK7CBigNum[operator-(CBigNum con= st&)]+0xd3): undefined reference to `BN_clear_free'<br> >>>>> ../../lib/libcoin.a(Script.o): In function `operator&l= t;<(CBigNum const&, unsigned int)':<br> >>>>> Script.cpp:(.text._ZlsRK7CBigNumj[operator<<(CBi= gNum const&, unsigned int)]+0x16): undefined reference to `BN_init'= <br> >>>>> Script.cpp:(.text._ZlsRK7CBigNumj[operator<<(CBi= gNum const&, unsigned int)]+0x2c): undefined reference to `BN_lshift= 9;<br> >>>>> Script.cpp:(.text._ZlsRK7CBigNumj[operator<<(CBi= gNum const&, unsigned int)]+0xad): undefined reference to `BN_clear_fre= e'<br> >>>>> ../../lib/libcoin.a(Script.o): In function `operator&g= t;>(CBigNum const&, unsigned int)':<br> >>>>> Script.cpp:(.text._ZrsRK7CBigNumj[operator>>(CBi= gNum const&, unsigned int)]+0xf): undefined reference to `BN_init'<= br> >>>>> Script.cpp:(.text._ZrsRK7CBigNumj[operator>>(CBi= gNum const&, unsigned int)]+0x1e): undefined reference to `BN_copy'= <br> >>>>> Script.cpp:(.text._ZrsRK7CBigNumj[operator>>(CBi= gNum const&, unsigned int)]+0x47): undefined reference to `BN_clear_fre= e'<br> >>>>> Script.cpp:(.text._ZrsRK7CBigNumj[operator>>(CBi= gNum const&, unsigned int)]+0xcb): undefined reference to `BN_clear_fre= e'<br> >>>>> ../../lib/libcoin.a(Script.o): In function `operator!= =3D(CBigNum const&, CBigNum const&)':<br> >>>>> Script.cpp:(.text._ZneRK7CBigNumS1_[operator!=3D(CBigN= um const&, CBigNum const&)]+0x14): undefined reference to `BN_cmp&#= 39;<br> >>>>> ../../lib/libcoin.a(Script.o): In function `operator&g= t;(CBigNum const&, CBigNum const&)':<br> >>>>> Script.cpp:(.text._ZgtRK7CBigNumS1_[operator>(CBigN= um const&, CBigNum const&)]+0x14): undefined reference to `BN_cmp&#= 39;<br> >>>>> ../../lib/libcoin.a(Script.o): In function `uint256 Ha= sh<__gnu_cxx::__normal_iterator<unsigned char*, std::vector<unsign= ed char, std::allocator<unsigned char> > > >(__gnu_cxx::__no= rmal_iterator<unsigned char*, std::vector<unsigned char, std::allocat= or<unsigned char> > >, __gnu_cxx::__normal_iterator<unsigned= char*, std::vector<unsigned char, std::allocator<unsigned char> &= gt; >)':<br> >>>>> Script.cpp:(.text._Z4HashIN9__gnu_cxx17__normal_iterat= orIPhSt6vectorIhSaIhEEEEE7uint256T_S8_[uint256 Hash<__gnu_cxx::__normal_= iterator<unsigned char*, std::vector<unsigned char, std::allocator<= ;unsigned char> > > >(__gnu_cxx::__normal_iterator<unsigned = char*, std::vector<unsigned char, std::allocator<unsigned char> &g= t; >, __gnu_cxx::__normal_iterator<unsigned char*, std::vector<uns= igned char, std::allocator<unsigned char> > >)]+0x6d): undefine= d reference to `SHA256'<br> >>>>> Script.cpp:(.text._Z4HashIN9__gnu_cxx17__normal_iterat= orIPhSt6vectorIhSaIhEEEEE7uint256T_S8_[uint256 Hash<__gnu_cxx::__normal_= iterator<unsigned char*, std::vector<unsigned char, std::allocator<= ;unsigned char> > > >(__gnu_cxx::__normal_iterator<unsigned = char*, std::vector<unsigned char, std::allocator<unsigned char> &g= t; >, __gnu_cxx::__normal_iterator<unsigned char*, std::vector<uns= igned char, std::allocator<unsigned char> > >)]+0xb8): undefine= d reference to `SHA256'<br> >>>>> collect2: ld returned 1 exit status<br> >>>>> make[2]: *** [bin/bitcoind] Error 1<br> >>>>> make[1]: *** [applications/bitcoind/CMakeFiles/app_bit= coind.dir/all] Error 2<br> >>>>> make: *** [all] Error 2<br> >>>>> -----<br> >>>>><br> >>>>> What can I do?!<br> >>>>><br> >>>>> Best,<br> >>>>> Thiago<br> >>>>><br> >>>>><br> >>>>> On 1 February 2012 12:18, Michael Gr=C3=B8nager <<a= href=3D"mailto:gronager@ceptacle.com" target=3D"_blank">gronager@ceptacle.= com</a>> wrote:<br> >>>>> Dear Bitcoiners,<br> >>>>><br> >>>>> libcoin is now in a state ready for its first release,= which I would like to share with you!<br> >>>>><br> >>>>> =3D=3D=3D libcoin is a crypto currency library based o= n the bitcoin/bitcoin "Satoshi" client. =3D=3D=3D<br> >>>>><br> >>>>> Copenhagen, Denmark - 1st February 2012 Ceptacle annou= nces the release of the first version of the crypto currency library "= libcoin" based on the bitcoin/bitcoin "Satoshi" client.<br> >>>>><br> >>>>> libcoin also maintains a version of bitcoind that is a= 100% compatible drop-in replacement of the bitcoin/bitcoind client: You ca= n use it on the same computer on the same files and you can call it with th= e same scripts. And you can easily extend it without touching the basic bit= coin source files.<br> >>>>><br> >>>>> The libcoin/bitcoind client downloads the entire block= chain 3.5 times faster than the bitcoin/bitcoind client. This is less than= 90 minutes on a modern laptop!<br> >>>>><br> >>>>> In libcoin, the Satoshi client code has been completel= y refactored, properly encapsulating classes, removing all globals, moving = from threads and mutexes to a pure asynchronous approach. Functionalities h= ave been divided into logical units and libraries, minimizing dependencies = for e.g. thin clients.<br> >>>>><br> >>>>> libcoin is chain agnostic, all chain (bitcoin, testnet= , namecoin, litecoin, ...) specific settings are maintained from a single c= lass (Chain) and hence experiments with chain settings, mining, security an= d digital currencies for research and educational purposes are easily acces= sible. See the ponzicoin example for how you define your own chain.<br> >>>>><br> >>>>> The build system of libcoin is based on CMake and supp= orts builds of static and dynamic libraries on Linux, Mac OS X, and Windows= .<br> >>>>><br> >>>>> The libcoin license is LGPL v. 3. This mean that you c= an use it in open source as well as in commercial projects, but improvement= s should go back into the libcoin library.<br> >>>>><br> >>>>> =3D=3D=3D=3D=3D=3D<br> >>>>><br> >>>>> Read more on libcoin on: <a href=3D"http://github.com/= ceptacle/libcoin/wiki" target=3D"_blank">http://github.com/ceptacle/libcoin= /wiki</a><br> >>>>><br> >>>>> Join libcoin on twitter: <a href=3D"http://twitter.com= /libcoin" target=3D"_blank">http://twitter.com/libcoin</a><br> >>>>><br> >>>>> Download "libcoin Satoshi release": <a href= =3D"http://github.com/ceptacle/libcoin/zipball/v0.4.0.1" target=3D"_blank">= http://github.com/ceptacle/libcoin/zipball/v0.4.0.1</a><br> >>>>><br> >>>>> Best regards,<br> >>>>><br> >>>>> Michael Gronager, PhD<br> >>>>> Director, Ceptacle<br> >>>>> Jens Juels Gade 33<br> >>>>> 2100 Copenhagen E<br> >>>>> Mobile: <a href=3D"tel:%2B45%2031%2045%2014%2001" valu= e=3D"+4531451401" target=3D"_blank">+45 31 45 14 01</a><br> >>>>> E-mail: <a href=3D"mailto:gronager@ceptacle.com" targe= t=3D"_blank">gronager@ceptacle.com</a><br> >>>>> Web: <a href=3D"http://www.ceptacle.com/" target=3D"_b= lank">http://www.ceptacle.com/</a><br> >>>>><br> >>>>><br> >>>>> ------------------------------------------------------= ------------------------<br> >>>>> Keep Your Developer Skills Current with LearnDevNow!<b= r> >>>>> The most comprehensive online learning library for Mic= rosoft developers<br> >>>>> is just $99.99! Visual Studio, SharePoint, SQL - plus = HTML5, CSS3, MVC3,<br> >>>>> Metro Style Apps, more. Free future releases when you = subscribe now!<br> >>>>> <a href=3D"http://p.sf.net/sfu/learndevnow-d2d" target= =3D"_blank">http://p.sf.net/sfu/learndevnow-d2d</a><br> >>>>> _______________________________________________<br> >>>>> Bitcoin-development mailing list<br> >>>>> <a href=3D"mailto:Bitcoin-development@lists.sourceforg= e.net" target=3D"_blank">Bitcoin-development@lists.sourceforge.net</a><br> >>>>> <a href=3D"https://lists.sourceforge.net/lists/listinf= o/bitcoin-development" target=3D"_blank">https://lists.sourceforge.net/list= s/listinfo/bitcoin-development</a><br> >>>>><br> >>>><br> >>>> Michael Gronager, PhD<br> >>>> Director, Ceptacle<br> >>>> Jens Juels Gade 33<br> >>>> 2100 Copenhagen E<br> >>>> Mobile: <a href=3D"tel:%2B45%2031%2045%2014%2001" value=3D= "+4531451401" target=3D"_blank">+45 31 45 14 01</a><br> >>>> E-mail: <a href=3D"mailto:gronager@ceptacle.com" target=3D= "_blank">gronager@ceptacle.com</a><br> >>>> Web: <a href=3D"http://www.ceptacle.com/" target=3D"_blank= ">http://www.ceptacle.com/</a><br> >>>><br> >>>><br> >>>><br> >>><br> >>><br> >><br> >> Michael Gronager, PhD<br> >> Director, Ceptacle<br> >> Jens Juels Gade 33<br> >> 2100 Copenhagen E<br> >> Mobile: <a href=3D"tel:%2B45%2031%2045%2014%2001" value=3D"+453145= 1401" target=3D"_blank">+45 31 45 14 01</a><br> >> E-mail: <a href=3D"mailto:gronager@ceptacle.com" target=3D"_blank"= >gronager@ceptacle.com</a><br> >> Web: <a href=3D"http://www.ceptacle.com/" target=3D"_blank">http:/= /www.ceptacle.com/</a><br> >><br> >><br> ><br> > Michael Gronager, PhD<br> > Director, Ceptacle<br> > Jens Juels Gade 33<br> > 2100 Copenhagen E<br> > Mobile: <a href=3D"tel:%2B45%2031%2045%2014%2001" value=3D"+4531451401= " target=3D"_blank">+45 31 45 14 01</a><br> > E-mail: <a href=3D"mailto:gronager@ceptacle.com" target=3D"_blank">gro= nager@ceptacle.com</a><br> > Web: <a href=3D"http://www.ceptacle.com/" target=3D"_blank">http://www= .ceptacle.com/</a><br> ><br> ><br> <br> Michael Gronager, PhD<br> Director, Ceptacle<br> Jens Juels Gade 33<br> 2100 Copenhagen E<br> Mobile: <a href=3D"tel:%2B45%2031%2045%2014%2001" value=3D"+4531451401" tar= get=3D"_blank">+45 31 45 14 01</a><br> E-mail: <a href=3D"mailto:gronager@ceptacle.com" target=3D"_blank">gronager= @ceptacle.com</a><br> Web: <a href=3D"http://www.ceptacle.com/" target=3D"_blank">http://www.cept= acle.com/</a><br> <br> </div></div></blockquote></div><br></div> --f46d043bdfbaa00f5204bbd2aed1--