Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MSVC++ version of YACoin0.4.1b #17

Closed
wants to merge 2 commits into from
Closed

Conversation

Ron-Winter
Copy link

These additions to the sources leave the Linux and MinGW sources unchanged! The additions allow the code to be compiled in MS Visual Studio. The compilations, as usual, can create Debug and Release versions. Running YACoin.exe in the IDE full-screen debugger is a most efficient and enjoyable way to investigate the code, test changes, check for anomalies, etc.

The IDE's "intellisense" also speeds development of changes and updates, since the IDE "knows" the relationship of all the program elements: classes, globals, macros, etc. and their relationship in the header and program files. So a change in one header file, for example, will only cause the files that are affected to be recompiled.

The MSVC++ IDE Express editions are free, so no expense is incurred in their use. I built this with MSVC++ 2005 Express so that it can easily be used with all the later versions.

The libraries needed for YACoin -- Berkeley DB 4.8.30, OpenSSL 1.0.1e and Boost 1.53 -- each have instructions on their respective websites for building in particular MSVC++ 2005 libraries. This is another reason why I choose this version. MSVC++ 2005 fits naturally with this code and the libraries that all originated around that time.

These additions do not modify the original sources for the production of
YACoind and YACoin-qt.

A new file in the doc directory, called Video scripts and notes.txt
details DLL building and MSVC++ configuring needed for a correct build.
I'm working on videos to detail this process for those that may need
more explanation.
@grokouser
Copy link

I think I'm going to try this out. Wish me luck.

@Ron-Winter
Copy link
Author

Hello grokouser,

If you have been following https://bitcointalk.org/index.php?topic=206577.1960 you should be using/building yacoin 0.4.2

So if you use my code for 0.4.1b you should take the ideas there over to the 0.4.2 sources, and compile those using your own MSVS product.

I have done it, and it runs nicely. But I have been busy "perfecting" my MSVS port of the bitcoind sources and so YACoind has been temporarily put on hold.

I will "GitHub commit" the 0.4.2 "additions" for MSVS soon. BTW they are much "nicer" and "neater".

Ron

@grokouser
Copy link

On 3/30/2014 12:18 PM, Ron-Winter wrote:

Hello grokouser,

If you have been following
https://bitcointalk.org/index.php?topic=206577.1960 you should be
using/building yacoin 0.4.2

So if you use my code for 0.4.1b you should take the ideas there over
to the 0.4.2 sources, and compile those using your own MSVS product.

I have done it, and it runs nicely. But I have been busy "perfecting"
my MSVS port of the bitcoind sources and so YACoind has been
temporarily put on hold.

I will "GitHub commit" the 0.4.2 "additions" for MSVS soon. BTW they
are much "nicer" and "neater".

Ron


Reply to this email directly or view it on GitHub
#17 (comment).

I was able to pull your work into 0.4.2 and I stuck the result into my
branch:

https://github.com/grokouser/yacoin/tree/MSVCport

Getting through all the dependency builds will be the hardest part just
to get started.
If you have any helpful hints please pass them on!

@Ron-Winter
Copy link
Author

By dependencies, I presume you mean building the static multi-threaded libraries so that you can "link" to them with any of your YACoin, Bitcoin, *coin Projects, Solutions, etc.? If so, the only one that's tricky at all, is BerkeleyDB. Unless of course you are doing a "modern" *coin or bitcoin and need levelDB :)

You might find these bitcointalk.org forums interesting:
https://bitcointalk.org/index.php?topic=149479.520 only 27 pages worth
and
https://bitcointalk.org/index.php?topic=349094.0;all only 2 pages

Should I "fork-clone-commit-pull" my changes for the 0.4.2 sources to:
https://github.com/yacoin/yacoin/tree/master
or yours
https://github.com/grokouser/yacoin/tree/MSVCport
or ...?

Ron

@grokouser
Copy link

Probably just keep committing to your master, since that is the branch you got your pull request on. I'll just keep merging from your master branch.

@Ron-Winter
Copy link
Author

But mine was off of 0.4.1b It was done before 0.4.2 existed. I re-did the port when 0.4.2 came out as I was "older and wiser" from porting bitcoin :) A lot less "magic", except for that IMPLEMENT_SERIALIZE macro (LOL)

If you want to bravely try out the MSVC++ YACoin042.exe daemon, you can get it at
http://lostabout.com/btc/yacoin042.zip
with the MD5 and HASH for it at
lostabout.com/btc/yacoin042.zip MD5 and SHA256.txt
which should like like:
SHA-256 8d9373a23771005064818b5f3b875d02adbaad670bdf7b982ce7c45760405c8d
yacoin042.zip

MD5 43bff180a83f7568e966a61acf84bc00
yacoin042.zip

Ron

@grokouser
Copy link

As soon as you are ready, just push your 0.4.2 changes up to your github. I'll see how far I can get with VS 2005.

@Ron-Winter
Copy link
Author

OK,

Maybe late tonite or in a day or two.

Ron

@grokouser
Copy link

Oh gee. I just read your post on bitcointalk. That sounds great. I'll try to keep up on any new developments you report over there.

@yacoin
Copy link
Owner

yacoin commented Apr 2, 2014

Ron I created a MSVC++ branch, https://github.com/yacoin/yacoin/tree/MSVC++ so please do a pull request there once you're ready.

@Ron-Winter
Copy link
Author

Thanks Joe & hi grokouser,

I am updating my "older" YACoin 0.4.2 to the "slip-streamed newer" 0.4.2 so there is a slight delay. So hang on, it will be there soon. Alphabetically I'm up to the letter "I" in the filenames! The 0.4.2 version I alluded to above actually POS mined some YACs for me!

Ron

@ya-old-c-coder
Copy link

Done! I think? #38

Ron

@yacoin
Copy link
Owner

yacoin commented Apr 8, 2014

Merged latest to yacoin::MSVC++ Closing this pull.

@yacoin yacoin closed this Apr 8, 2014
@ya-old-c-coder
Copy link

Hello all,
I promised videos on MSVC++ static library building for bitcoind.exe & YACoind.exe & other *coind.exe --
and here they are:
http://www.youtube.com/channel/UCytoaHvG3H1y9CnxZS819eQ

The Yacoin 043 sources should already contain the MSVC++ additions.

The last video on actually building bitcoind.exe and YACoind.exe using those libraries is almost done, but those practiced in the art probably won't need it Grin

Ron

@grokouser
Copy link

Very cool. Thanks!

On 05/10/2014 01:39 AM, ya-old-c-coder wrote:

Hello all,
I promised videos on MSVC++ static library building for bitcoind.exe &
YACoind.exe & other *coind.exe --
and here they are:
http://www.youtube.com/channel/UCytoaHvG3H1y9CnxZS819eQ

The Yacoin 043 sources should already contain the MSVC++ additions.

The last video on actually building bitcoind.exe and YACoind.exe using
those libraries is almost done, but those practiced in the art
probably won't need it Grin

Ron


Reply to this email directly or view it on GitHub
#17 (comment).

Groko

@ya-old-c-coder
Copy link

Hello Groko(?)
Just thought you might like to know that your website seems a bit ill?  I'm seeing:
502 Bad Gateway
nginx/1.4.6 (Ubuntu)

As an aside, I have been working on putting the "explorer experience" into the Qt code!  For YACoin-qt first , but it is general enough, that I am doing Bitcoin-qt now and any coin can be done too!  I wanted the main  information provided by your site, https://blockchain.info/, http://blockexplorer.com/
to be available, live as it were.  Even blockchain.info seems to stall when I go to another web page and then return.  And since the information is always available in the daemon.  The code is done, it is just clean-up and test, and of course make a video!  Here is a first look:

(not even Joe has seen this yet!!)
Ron
From: grokouser notifications@github.com
To: yacoin/yacoin yacoin@noreply.github.com
Cc: ya-old-c-coder ron1@lostabout.com
Sent: Saturday, May 10, 2014 1:41 AM
Subject: Re: [yacoin] MSVC++ version of YACoin0.4.1b (#17)

Very cool. Thanks!

On 05/10/2014 01:39 AM, ya-old-c-coder wrote:

Hello all,
I promised videos on MSVC++ static library building for bitcoind.exe &
YACoind.exe & other *coind.exe --
and here they are:
http://www.youtube.com/channel/UCytoaHvG3H1y9CnxZS819eQ

The Yacoin 043 sources should already contain the MSVC++ additions.

The last video on actually building bitcoind.exe and YACoind.exe using
those libraries is almost done, but those practiced in the art
probably won't need it Grin

Ron


Reply to this email directly or view it on GitHub
#17 (comment).

Groko—
Reply to this email directly or view it on GitHub.

@grokouser
Copy link

Coming back up right now! I was just doing a backup and some operating
system updates.

On 12/04/2014 01:04 PM, ya-old-c-coder wrote:

Hello Groko(?)
Just thought you might like to know that your website seems a bit
ill? I'm seeing:
502 Bad Gateway
nginx/1.4.6 (Ubuntu)

As an aside, I have been working on putting the "explorer experience"
into the Qt code! For YACoin-qt first , but it is general enough,
that I am doing Bitcoin-qt now and any coin can be done too! I wanted
the main information provided by your site, https://blockchain.info/,
http://blockexplorer.com/
to be available, live as it were. Even blockchain.info seems to stall
when I go to another web page and then return. And since the
information is always available in the daemon. The code is done, it
is just clean-up and test, and of course make a video! Here is a first
look:

(not even Joe has seen this yet!!)
Ron
From: grokouser notifications@github.com
To: yacoin/yacoin yacoin@noreply.github.com
Cc: ya-old-c-coder ron1@lostabout.com
Sent: Saturday, May 10, 2014 1:41 AM
Subject: Re: [yacoin] MSVC++ version of YACoin0.4.1b (#17)

Very cool. Thanks!

On 05/10/2014 01:39 AM, ya-old-c-coder wrote:

Hello all,
I promised videos on MSVC++ static library building for bitcoind.exe &
YACoind.exe & other *coind.exe --
and here they are:
http://www.youtube.com/channel/UCytoaHvG3H1y9CnxZS819eQ

The Yacoin 043 sources should already contain the MSVC++ additions.

The last video on actually building bitcoind.exe and YACoind.exe using
those libraries is almost done, but those practiced in the art
probably won't need it Grin

Ron


Reply to this email directly or view it on GitHub
#17 (comment).

Groko—
Reply to this email directly or view it on GitHub.


Reply to this email directly or view it on GitHub
#17 (comment).

@grokouser
Copy link

About your Qt explorer idea, depending on what functionality you
include, the YACoin client could get quite bloated. The data for my
explorer requires a full scan of the database every time it starts, and
it uses several gigabytes of system memory (RAM) to store it for fast
retrieval. The average user may not like the QT client taking 20 minutes
to start and using up a significant portion of their RAM.

On 12/04/2014 01:04 PM, ya-old-c-coder wrote:

Hello Groko(?)
Just thought you might like to know that your website seems a bit
ill? I'm seeing:
502 Bad Gateway
nginx/1.4.6 (Ubuntu)

As an aside, I have been working on putting the "explorer experience"
into the Qt code! For YACoin-qt first , but it is general enough,
that I am doing Bitcoin-qt now and any coin can be done too! I wanted
the main information provided by your site, https://blockchain.info/,
http://blockexplorer.com/
to be available, live as it were. Even blockchain.info seems to stall
when I go to another web page and then return. And since the
information is always available in the daemon. The code is done, it
is just clean-up and test, and of course make a video! Here is a first
look:

(not even Joe has seen this yet!!)
Ron
From: grokouser notifications@github.com
To: yacoin/yacoin yacoin@noreply.github.com
Cc: ya-old-c-coder ron1@lostabout.com
Sent: Saturday, May 10, 2014 1:41 AM
Subject: Re: [yacoin] MSVC++ version of YACoin0.4.1b (#17)

Very cool. Thanks!

On 05/10/2014 01:39 AM, ya-old-c-coder wrote:

Hello all,
I promised videos on MSVC++ static library building for bitcoind.exe &
YACoind.exe & other *coind.exe --
and here they are:
http://www.youtube.com/channel/UCytoaHvG3H1y9CnxZS819eQ

The Yacoin 043 sources should already contain the MSVC++ additions.

The last video on actually building bitcoind.exe and YACoind.exe using
those libraries is almost done, but those practiced in the art
probably won't need it Grin

Ron


Reply to this email directly or view it on GitHub
#17 (comment).

Groko—
Reply to this email directly or view it on GitHub.


Reply to this email directly or view it on GitHub
#17 (comment).

@ya-old-c-coder
Copy link

Hi Groko,
YACoin-qt release uses ~400MB of ram on my system.  My YACoin-qt uses ~400MB of ram!!  No increase.  There is no new code at startup!  It only uses code that already exists!! 

It doesn't chase down transactions to any YACoin address.  Yet!
Ron From: grokouser notifications@github.com
To: yacoin/yacoin yacoin@noreply.github.com
Cc: ya-old-c-coder ron1@lostabout.com
Sent: Thursday, December 4, 2014 1:16 PM
Subject: Re: [yacoin] MSVC++ version of YACoin0.4.1b (#17)

About your Qt explorer idea, depending on what functionality you
include, the YACoin client could get quite bloated. The data for my
explorer requires a full scan of the database every time it starts, and
it uses several gigabytes of system memory (RAM) to store it for fast
retrieval. The average user may not like the QT client taking 20 minutes
to start and using up a significant portion of their RAM.

On 12/04/2014 01:04 PM, ya-old-c-coder wrote:

Hello Groko(?)
Just thought you might like to know that your website seems a bit
ill? I'm seeing:
502 Bad Gateway
nginx/1.4.6 (Ubuntu)

As an aside, I have been working on putting the "explorer experience"
into the Qt code! For YACoin-qt first , but it is general enough,
that I am doing Bitcoin-qt now and any coin can be done too! I wanted
the main information provided by your site, https://blockchain.info/,
http://blockexplorer.com/
to be available, live as it were. Even blockchain.info seems to stall
when I go to another web page and then return. And since the
information is always available in the daemon. The code is done, it
is just clean-up and test, and of course make a video! Here is a first
look:

(not even Joe has seen this yet!!)
Ron
From: grokouser notifications@github.com
To: yacoin/yacoin yacoin@noreply.github.com
Cc: ya-old-c-coder ron1@lostabout.com
Sent: Saturday, May 10, 2014 1:41 AM
Subject: Re: [yacoin] MSVC++ version of YACoin0.4.1b (#17)

Very cool. Thanks!

On 05/10/2014 01:39 AM, ya-old-c-coder wrote:

Hello all,
I promised videos on MSVC++ static library building for bitcoind.exe &
YACoind.exe & other *coind.exe --
and here they are:
http://www.youtube.com/channel/UCytoaHvG3H1y9CnxZS819eQ

The Yacoin 043 sources should already contain the MSVC++ additions.

The last video on actually building bitcoind.exe and YACoind.exe using
those libraries is almost done, but those practiced in the art
probably won't need it Grin

Ron


Reply to this email directly or view it on GitHub
#17 (comment).

Groko—
Reply to this email directly or view it on GitHub.


Reply to this email directly or view it on GitHub
#17 (comment).

Reply to this email directly or view it on GitHub.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants