:: Re: [Libbitcoin] Libbitcoin and Qt
Góra strony
Delete this message
Reply to this message
Autor: Eric Voskuil
Data:  
Dla: Bedeho Mender
CC: libbitcoin@lists.dyne.org
Temat: Re: [Libbitcoin] Libbitcoin and Qt
It may not be too difficult to remove from headers. Templates may
present problems beyond the use of constexpr. I'd be happy to review a
pull request.

e

On 03/19/2015 02:07 PM, Bedeho Mender wrote:
> Hi Eric,
>
> Ive been talking to some Qt developers, and it appears that you do
> indeed have to rebuild Qt with a newer MSVC version, however, it turns
> out that this is likely not possible with the present build system on
> Windows with these new versions of MSVC (for reasons was not given).
>
> How difficult would it be to have a version of libbitcoin where the CTP
> 2013 features were taken out, so that libbitcoin could be used with the
> latest full release of MSVC 2013? That is, how prevalent is the usage of
> C++11 features which only are implemented in the CTP? e.g. constexpr.
>
> I would be happy to sponsor this dev work depending on how involved it
> would be, and that would allow people to use libbitcoin with Qt - which
> I think a lot of people will likely want to do, given that Qt is the
> most popular C++ framework out there.
>
> best
> bedeho
>
>
>
> On 17 March 2015 at 20:52, Eric Voskuil <eric@???
> <mailto:eric@voskuil.org>> wrote:
>
>     Ah yes, that's unfortunate. Now I remember I looked at QT a while back
>     and determined I would need to compile QT to make it work. I decided to
>     wait for time to resolve the issue :/

>
>     e

>
>     On 03/17/2015 06:27 AM, Bedeho Mender wrote:
>     > Hi Eric, thanks for the quick response!
>     >
>     > It doesn't appear so to me, but perhaps I am misunderstanding the
>     problem.

>     >
>     > When I make a minimal Qt project
>     > (https://github.com/bedeho/QtLibbitcoin/blob/master/main.cpp)
>     which uses
>     > MSVC2013, then if I just
>     > include the libbitcoin header #include <bitcoin/bitcoin.hpp>, then
>     I get
>     > lots of compile errors.

>     >
>     > The errors seem to be associated with certain c++11 features which
>     > msvc2013 does
>     > not support fully. Here is the first error I get

>     >
>     > C:\libbitcoin\libbitcoin\include\bitcoin/bitcoin/math/hash.hpp(31) :
>     > error C2146: syntax error : missing ';' before identifier 'size_t'

>     >
>     > Which references line 31 in hash.hpp:

>     >
>     > constexpr size_t short_hash_size = 20;

>     >
>     > In this case, the problem seems to be that constexpr is a new feature
>     > which msvc2013 does not support, from what I could understand by
>     > reading up, and that CTP_Nov2013 was required for this reason. For
>     > example, the release notes on this CTP explicitly mentions constexpr
>     > support
>     (http://www.microsoft.com/en-us/download/details.aspx?id=41151):
>     > "constexpr (except for constructors)"

>     >
>     > Am I on the wrong track here? If not, getting Qt to work with CTP
>     > is necessary to for using Libbitcon with Qt.

>     >
>     > bedeho

>     >

>     >
>     > On 16 March 2015 at 22:48, Eric Voskuil <eric@???
>     <mailto:eric@voskuil.org>
>     > <mailto:eric@voskuil.org <mailto:eric@voskuil.org>>> wrote:

>     >
>     >     You can link to the libbitcoin VC++ libs using the basic v120
>     >     compiler, they are compatible.

>     >
>     >     e

>     >

>     >
>     >     > On Mar 16, 2015, at 8:58 AM, Bedeho Mender
>     >     <bedeho.mender@??? <mailto:bedeho.mender@gmail.com>
>     <mailto:bedeho.mender@gmail.com <mailto:bedeho.mender@gmail.com>>>
>     wrote:

>     >     >
>     >     > I have built libbitcoin with msvc using the compiler Microsoft
>     >     Visual C++ Compiler Nov 2013 CTP.

>     >     >
>     >     > I am trying to use libbitcoin with a Qt project running in
>     >     QtCreator, however it seems this is not easy to do, that is get Qt
>     >     to get with the CTP.

>     >     >
>     >     > Does anyone have any advice on this?

>     >     >
>     >     > best
>     >     >  Bedeho

>
>