Ron
Congratz! Do you have available any guide or instructions to make Bitcoin compile with MSVC?
Hello kr105
Not yet, but it does compile. The real question is does it run? The levelDB windows (static debug) library I built "stumbles" in the 12th loop in VerifyDB() at level 3. It passes at level 0,1,2 and the exe goes all the way to running. Even connects to clients, but can't store the first new block it obtains, yet. I believe it is related to the LRU cache problem I'm seeing in VerifyDB() level 2.
I am testing on a copy of the block chain that starts(or is it ends) at 272233. This blockchain starts up fine using a "normal" version of bitcoind.exe
The levelDB code thinks it needs a chainstate/604027.sst file and tries to open it, finding that it is already open! So either it thought it closed it but it didn't. Or it didn't think it had it, but it did.
I built my .lib from the 1.13 release since that was the latest when I began
I see that bitcoin 0.8.5 uses levelDB 1.12. So should I use that version or try for the latest 1.15
The hardest parts are creating the libraries needed for MSVC++ and configuring the IDE for the project, the files, the include and library directories. Once that's done, it's a cake walk to compile test, build, debug, etc. Since the IDE has "intellisense" on all the classes, etc. it is really nice, especially in debug mode. And it "knows" about the include file relationships, which is worth it in time on rebuilding.
Since there was so little reaction to the pix, I went off MSVC++ porting some other *coin. And it went much faster since I had done the tough work on the bitcoin sources.
I am trying to find (and fix) this levelDB caching problem, and when I have and the code works, I will clean up the sources and "github" them.
I will say the there are very few changes done to the source. It is mostly in the arrangement of the includes
Ron
Hello all,
It has been over 3 months, and three *coind.exe's later and finally fixing a bug in the MSVC windows version of the leveldb code, I can say that bitcoind.exe is a full, pure MSVC++ product (again?).
Much more to follow...
Ron