Bitcoin Forum
May 07, 2024, 11:00:00 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: My Bitcoin Microsoft Visual C++ fork  (Read 2579 times)
fsb4000 (OP)
Legendary
*
Offline Offline

Activity: 1400
Merit: 1000



View Profile
March 13, 2015, 09:33:37 AM
 #1

https://github.com/fsb4000/bitcoin/tree/MSVC

Built in Visual Studio 2012.
There are bitcoin-cli, bitcoind, bitcoin-tx, bitcoin-qt, tests
64 bit and 32 bit
64 bit tests do not pass 1 test...
32 bit tests pass all tests.
Code:
C:\MyProjects\bitcoin\MSVC\MSVC2012\Win32\Release>Tests.exe
Running 149 test cases...

*** No errors detected

Based on https://bitcointalk.org/index.php?topic=349094.0
I use  https://bitcointalk.org/index.php?topic=774811.0 for generating *.json.h files
Thank you ENikS and Claire123

I didn't use add-ons to create a bitcoin-qt project. All preparatory actions for Qt are made in the "Build Events" => "Events before building"
This means that you can easily build with your Qt version(and change Qt path), only by changing the initial path in the command, even in Express versions of Visual Studio (which do not support add-ons)
The folder structure is made so that it was easy to add projects for other versions of Visual Studio. I'm planning to add Visual Studio 2015 projects(when VS2015 will be released), but if you are interested I can add Visual Studio 2013 projects and Visual Studio 2010.

I'll try to keep my github branch updated to the bitcoin master.

A little later I'll add detailed instructions  how to build dependencies.

If someone wants to support the initiative:
My BTC address 1LqXE9xzjLS3HcoRe6AvxAw9zhMimDWCjP

English is not my native language, if you want to correct this message, send me a PM with your edits.
Thank you!
1715122800
Hero Member
*
Offline Offline

Posts: 1715122800

View Profile Personal Message (Offline)

Ignore
1715122800
Reply with quote  #2

1715122800
Report to moderator
1715122800
Hero Member
*
Offline Offline

Posts: 1715122800

View Profile Personal Message (Offline)

Ignore
1715122800
Reply with quote  #2

1715122800
Report to moderator
1715122800
Hero Member
*
Offline Offline

Posts: 1715122800

View Profile Personal Message (Offline)

Ignore
1715122800
Reply with quote  #2

1715122800
Report to moderator
Activity + Trust + Earned Merit == The Most Recognized Users on Bitcointalk
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
carstenh
Newbie
*
Offline Offline

Activity: 3
Merit: 0


View Profile
March 17, 2015, 01:19:19 AM
 #2

Looks really good. Thanks.
Taking your code I have been able to build the libraries and bitcoind using VS2013. I had to disable USE_UPNP as I got link errors about missing symbols like _memicmp. How did you avoid that?
Another question, why do you have "cxxflags="-Zc:whar_t-" when building Boost?
fsb4000 (OP)
Legendary
*
Offline Offline

Activity: 1400
Merit: 1000



View Profile
March 17, 2015, 08:46:42 AM
Last edit: March 17, 2015, 09:17:26 AM by fsb4000
 #3

Looks really good. Thanks.
Taking your code I have been able to build the libraries and bitcoind using VS2013. I had to disable USE_UPNP as I got link errors about missing symbols like _memicmp. How did you avoid that?
Another question, why do you have "cxxflags="-Zc:whar_t-" when building Boost?
Thank you. I will try to build with Visual Studio 2013.
I used the Claire123 code for building dependencies.

https://bitcoinqtmsvc2012.codeplex.com/SourceControl/latest#MSVC/build-helpers/buildboost.bat



I have already made detailed instructions (like https://bitcointalk.org/index.php?topic=149479.0) but it is only in Russian now. I'll translate it in English
in the near future

Did you build Miniupnpc?

1) Download http://miniupnp.free.fr/files/download.php?file=miniupnpc-1.9.20150206.tar.gz
2) Extract to C:\MyProjects\Deps
3) Rename miniupnpc-1.9.20150206 to miniupnpc
4) Open minupnpc and create file miniupnpcstrings.h
Code:
/* $Id: miniupnpcstrings.h.in,v 1.6 2014/11/04 22:31:55 nanard Exp $ */
/* Project: miniupnp
 * http://miniupnp.free.fr/ or http://miniupnp.tuxfamily.org/
 * Author: Thomas Bernard
 * Copyright (c) 2005-2014 Thomas Bernard
 * This software is subjects to the conditions detailed
 * in the LICENCE file provided within this distribution */
#ifndef MINIUPNPCSTRINGS_H_INCLUDED
#define MINIUPNPCSTRINGS_H_INCLUDED

#define OS_STRING "MSWindows/6.1.7601"
#define MINIUPNPC_VERSION_STRING "1.9"

#if 0
/* according to "UPnP Device Architecture 1.0" */
#define UPNP_VERSION_STRING "UPnP/1.0"
#else
/* according to "UPnP Device Architecture 1.1" */
#define UPNP_VERSION_STRING "UPnP/1.1"
#endif

#endif
5) Open file miniupnpc.c and add #undef IF_NAMESIZE  after #include "receivedata.h" (Line 96)
6) Open miniupnpc\msvc\miniupnpc.sln
7) Change CRT Library to Multithreaded(from Multithreaded dll) and Multithreaded debug(from Multithreaded Debug dll)
8) Build Miniupnpc project.
Joe_Bauers
Hero Member
*****
Offline Offline

Activity: 802
Merit: 1003


GCVMMWH


View Profile
March 17, 2015, 05:38:17 PM
 #4

Very cool. Original Bitcoin was built in VS so Satoshi is probably happy Wink

I forked what you did for Novacoin into the latest testing version of Yacoin since its easier to maintain (not embedded in most source files) and am going to try to get it working for VS 2013 Community, cause its free and also basically the same as the regular version.  Will let you know how it goes.
fsb4000 (OP)
Legendary
*
Offline Offline

Activity: 1400
Merit: 1000



View Profile
March 17, 2015, 06:06:07 PM
 #5

Very cool. Original Bitcoin was built in VS so Satoshi is probably happy Wink

I forked what you did for Novacoin into the latest testing version of Yacoin since its easier to maintain (not embedded in most source files) and am going to try to get it working for VS 2013 Community, cause its free and also basically the same as the regular version.  Will let you know how it goes.
Cool. You're welcome.
I installed Vs2013 Community.I think tomorrow (or maybe the day after tomorrow ) I'll add MSVC 2013 version too.
carstenh
Newbie
*
Offline Offline

Activity: 3
Merit: 0


View Profile
March 18, 2015, 05:10:34 PM
 #6

Great if you will do a version for VS2013.
I got past my previous issue thanks to your help. Currently I'm stuck on the qt build.
Btw when running your Tests, it reports memory leaks. Is that expected?
fsb4000 (OP)
Legendary
*
Offline Offline

Activity: 1400
Merit: 1000



View Profile
March 18, 2015, 06:10:05 PM
 #7

Great if you will do a version for VS2013.
I got past my previous issue thanks to your help. Currently I'm stuck on the qt build.
Btw when running your Tests, it reports memory leaks. Is that expected?
added MSVC 2013(I used Qt 5.4.1 for MSVC 2013 and Qt 5.3.2 for MSVC 2012)  Wink

Yes, memory leaks expected.
I will be focusing on the tests later.

Tomorrow I'll add detailed instructions and will do rebase to bitcoin master. (Now : "This branch is 4 commits behind" Sad)
ENikS
Newbie
*
Offline Offline

Activity: 13
Merit: 0


View Profile
March 19, 2015, 07:00:07 AM
 #8

You may want to use this to build Boost:
http://www.codeproject.com/Articles/882581/Building-and-configuring-boost-in-Visual-Studio-MS
old c coder
Sr. Member
****
Offline Offline

Activity: 260
Merit: 250



View Profile WWW
January 23, 2016, 03:34:35 AM
 #9

And if you're not a "purist" you can just download them!  See
https://www.youtube.com/watch?v=DaJ5pr8lREY

Ron


LTC: LUYiMVsrFQewUSPDasSKGzhyTPAkiTeSov BTC: 1DPvP6WoZzaNQ9Nxzd64hjYad1kyQzTTbx YAC: Y3ZggXDvnRJaRwtVGyGJwt6DMLN3EPQpQf 
The day is coming when a single carrot, freshly observed, will set off a revolution.  Paul Cezanne
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!