[Bitcoin-development] Announcement: libcoin

Michael Grønager gronager at ceptacle.com
Thu Feb 23 20:01:15 UTC 2012


I tried on another 11.10 machine with the normal boost 1.42 and things also worked as they should.

However, I noticed a difference between your cmake output and mine:

> -- Found OpenSSL: /usr/lib/libssl.so;/usr/lib/libcrypto.so 

-- Found OpenSSL: /usr/lib/i386-linux-gnu/libssl.so;/usr/lib/i386-linux-gnu/libcrypto.so (found version "1..")

Are you sure that the openssl libraries/includes found are the correct ones ? cmake finds your openssl libraries at /usr/lib/ which most likely will make it think that the includes are at /usr/include. I can see that at least X11 stuff is in /usr/lib/x386-linux-gnu like my openssl.

Could there be an issue there ?

SHA256 would normally be found in openssl/sha.h but if that is somehow corrupt ?

Cheers,

M

PS: to get more debug output, please try a "make VERBOSE=1" That will show what g++ flags that are used, and might help us.

On 23/02/2012, at 18:31, Martinx - ジェームズ wrote:

> Hi Michael!
> 
>  Thank you for libcoin! It is a awesome evolution for Bitcoin and for 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), Namecoin, Devcoin, Litecoin, IXcoin and I0coin, all from sources but, when I try to compile libcoin, I got:
> 
> ----
> user at 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 - found
> -- 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/lib
> 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 to 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!=(CBigNum const&, CBigNum const&)':
> Script.cpp:(.text._ZneRK7CBigNumS1_[operator!=(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_iteratorIPhSt6vectorIhSaIhEEEEE7uint256T_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_iteratorIPhSt6vectorIhSaIhEEEEE7uint256T_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ønager <gronager at ceptacle.com> wrote:
> Dear Bitcoiners,
> 
> libcoin is now in a state ready for its first release, which I would like to share with you!
> 
> === libcoin is a crypto currency library based on the bitcoin/bitcoin "Satoshi" client. ===
> 
> Copenhagen, Denmark - 1st February 2012 Ceptacle announces the release of the first version of the crypto currency library "libcoin" based 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 use it on the same computer on the same files and you can call it with the same 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 minutes 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 (Chain) and hence experiments with chain settings, mining, security and digital currencies for research and educational purposes are easily accessible. See the ponzicoin example for how you define your own chain.
> 
> The build system of libcoin is based on CMake and supports builds of 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.
> 
> ======
> 
> 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 at 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 at 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 at ceptacle.com
Web: http://www.ceptacle.com/





More information about the bitcoin-dev mailing list