Bitcoin Forum
May 08, 2024, 01:12:10 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 [19] 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 »
  Print  
Author Topic: Building headless Bitcoin and Bitcoin-qt on Windows  (Read 419326 times)
Solcoin Project
Member
**
Offline Offline

Activity: 109
Merit: 10


View Profile WWW
February 09, 2014, 04:14:33 AM
 #361


...

Where one SHOULD see

if (true && block.GetHash() != hashGenesisBlock)

in src/main.cpp of my new crypto, one sees

uint256 hash = block.GetHash();
        printf("%s\n", hash.ToString().c_str());
        printf("%s\n", hashGenesisBlock.ToString().c_str());

...


The genesis miner is not included in the litecoin sources. You need to add it yourself: http://pastebin.com/aKgggRvZ

Authors of [SOL] Solcoin - http://www.solcoin.net/ - service at solcoin dot net
1715130730
Hero Member
*
Offline Offline

Posts: 1715130730

View Profile Personal Message (Offline)

Ignore
1715130730
Reply with quote  #2

1715130730
Report to moderator
1715130730
Hero Member
*
Offline Offline

Posts: 1715130730

View Profile Personal Message (Offline)

Ignore
1715130730
Reply with quote  #2

1715130730
Report to moderator
"There should not be any signed int. If you've found a signed int somewhere, please tell me (within the next 25 years please) and I'll change it to unsigned int." -- Satoshi
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1715130730
Hero Member
*
Offline Offline

Posts: 1715130730

View Profile Personal Message (Offline)

Ignore
1715130730
Reply with quote  #2

1715130730
Report to moderator
1715130730
Hero Member
*
Offline Offline

Posts: 1715130730

View Profile Personal Message (Offline)

Ignore
1715130730
Reply with quote  #2

1715130730
Report to moderator
1715130730
Hero Member
*
Offline Offline

Posts: 1715130730

View Profile Personal Message (Offline)

Ignore
1715130730
Reply with quote  #2

1715130730
Report to moderator
olu
Newbie
*
Offline Offline

Activity: 10
Merit: 0


View Profile
February 09, 2014, 04:31:15 AM
 #362


...

Where one SHOULD see

if (true && block.GetHash() != hashGenesisBlock)

in src/main.cpp of my new crypto, one sees

uint256 hash = block.GetHash();
        printf("%s\n", hash.ToString().c_str());
        printf("%s\n", hashGenesisBlock.ToString().c_str());

...


The genesis miner is not included in the litecoin sources. You need to add it yourself: http://pastebin.com/aKgggRvZ

Going to check up on this and implement, give me some time.  - Olu
olu
Newbie
*
Offline Offline

Activity: 10
Merit: 0


View Profile
February 09, 2014, 05:41:49 AM
 #363


...

Where one SHOULD see

if (true && block.GetHash() != hashGenesisBlock)

in src/main.cpp of my new crypto, one sees

uint256 hash = block.GetHash();
        printf("%s\n", hash.ToString().c_str());
        printf("%s\n", hashGenesisBlock.ToString().c_str());

...


The genesis miner is not included in the litecoin sources. You need to add it yourself: http://pastebin.com/aKgggRvZ

Going to check up on this and implement, give me some time.  - Olu

To ensure I'm not derping around:

//// debug print
        uint256 hash = block.GetHash();
        printf("%s\n", hash.ToString().c_str());
        printf("%s\n", hashGenesisBlock.ToString().c_str());
        printf("%s\n", block.hashMerkleRoot.ToString().c_str());
        assert(block.hashMerkleRoot == uint256("0xa73e546160e2999f9f17fcfc76c422a04b00acd5846a90a784593951b0987380"));
       
      // If genesis block hash does not match, then generate new genesis hash
        if (true && block.GetHash() != hashGenesisBlock)
        {
            printf("Searching for genesis block...\n");

            // This will figure out a valid hash and Nonce if you're creating a different genesis block:
            uint256 hashTarget = CBigNum().SetCompact(block.nBits).getuint256();
            uint256 thash;
            char scratchpad[SCRYPT_SCRATCHPAD_SIZE];

            loop
            {
                #if defined(USE_SSE2)
                // Detection would work, but in cases where we KNOW it always has SSE2,
                // it is faster to use directly than to use a function pointer or conditional.
                #if defined(_M_X64) || defined(__x86_64__) || defined(_M_AMD64) || (defined(MAC_OSX) && defined(__i386__))
                // Always SSE2: x86_64 or Intel MacOS X
                scrypt_1024_1_1_256_sp_sse2(BEGIN(block.nVersion), BEGIN(thash), scratchpad);
                #else
                // Detect SSE2: 32bit x86 Linux or Windows
                scrypt_1024_1_1_256_sp(BEGIN(block.nVersion), BEGIN(thash), scratchpad);
                #endif
                #else
                // Generic scrypt
                scrypt_1024_1_1_256_sp_generic(BEGIN(block.nVersion), BEGIN(thash), scratchpad);
                #endif
                if (thash <= hashTarget)
                    break;

                if ((block.nNonce & 0xFFF) == 0)
                    printf("nonce %08X: hash = %s (target = %s)\n", block.nNonce, thash.ToString().c_str(), hashTarget.ToString().c_str());

                ++block.nNonce;

                if (block.nNonce == 0)
                {
                    printf("NONCE WRAPPED, incrementing time\n");
                    ++block.nTime;
                }
            }
            printf("block.nTime = %u \n", block.nTime);
            printf("block.nNonce = %u \n", block.nNonce);
            printf("block.GetHash = %s\n", block.GetHash().ToString().c_str());
        }
      
      block.print();
      assert(block.GetHash() == hashGenesisBlock);

This is what the main.cpp looks like now, but do I have to change the instances of

// Special case for the genesis block, skipping connection of its transactions
    // (its coinbase is unspendable)
    if (GetHash() == hashGenesisBlock) {
        view.SetBestBlock(pindex);
        pindexGenesisBlock = pindex;
        return true;
AND

// Get prev block index
    CBlockIndex* pindexPrev = NULL;
    int nHeight = 0;
    if (hash != hashGenesisBlock) {

?

olu
Newbie
*
Offline Offline

Activity: 10
Merit: 0


View Profile
February 09, 2014, 08:03:49 AM
Last edit: February 09, 2014, 10:13:19 AM by olu
 #364


...

Where one SHOULD see

if (true && block.GetHash() != hashGenesisBlock)

in src/main.cpp of my new crypto, one sees

uint256 hash = block.GetHash();
        printf("%s\n", hash.ToString().c_str());
        printf("%s\n", hashGenesisBlock.ToString().c_str());

...


The genesis miner is not included in the litecoin sources. You need to add it yourself: http://pastebin.com/aKgggRvZ

Going to check up on this and implement, give me some time.  - Olu

To ensure I'm not derping around:

//// debug print
        uint256 hash = block.GetHash();
        printf("%s\n", hash.ToString().c_str());
        printf("%s\n", hashGenesisBlock.ToString().c_str());
        printf("%s\n", block.hashMerkleRoot.ToString().c_str());
        assert(block.hashMerkleRoot == uint256("0xa73e546160e2999f9f17fcfc76c422a04b00acd5846a90a784593951b0987380"));
       
      // If genesis block hash does not match, then generate new genesis hash
        if (true && block.GetHash() != hashGenesisBlock)
        {
            printf("Searching for genesis block...\n");

            // This will figure out a valid hash and Nonce if you're creating a different genesis block:
            uint256 hashTarget = CBigNum().SetCompact(block.nBits).getuint256();
            uint256 thash;
            char scratchpad[SCRYPT_SCRATCHPAD_SIZE];

            loop
            {
                #if defined(USE_SSE2)
                // Detection would work, but in cases where we KNOW it always has SSE2,
                // it is faster to use directly than to use a function pointer or conditional.
                #if defined(_M_X64) || defined(__x86_64__) || defined(_M_AMD64) || (defined(MAC_OSX) && defined(__i386__))
                // Always SSE2: x86_64 or Intel MacOS X
                scrypt_1024_1_1_256_sp_sse2(BEGIN(block.nVersion), BEGIN(thash), scratchpad);
                #else
                // Detect SSE2: 32bit x86 Linux or Windows
                scrypt_1024_1_1_256_sp(BEGIN(block.nVersion), BEGIN(thash), scratchpad);
                #endif
                #else
                // Generic scrypt
                scrypt_1024_1_1_256_sp_generic(BEGIN(block.nVersion), BEGIN(thash), scratchpad);
                #endif
                if (thash <= hashTarget)
                    break;

                if ((block.nNonce & 0xFFF) == 0)
                    printf("nonce %08X: hash = %s (target = %s)\n", block.nNonce, thash.ToString().c_str(), hashTarget.ToString().c_str());

                ++block.nNonce;

                if (block.nNonce == 0)
                {
                    printf("NONCE WRAPPED, incrementing time\n");
                    ++block.nTime;
                }
            }
            printf("block.nTime = %u \n", block.nTime);
            printf("block.nNonce = %u \n", block.nNonce);
            printf("block.GetHash = %s\n", block.GetHash().ToString().c_str());
        }
      
      block.print();
      assert(block.GetHash() == hashGenesisBlock);

This is what the main.cpp looks like now, but do I have to change the instances of

// Special case for the genesis block, skipping connection of its transactions
    // (its coinbase is unspendable)
    if (GetHash() == hashGenesisBlock) {
        view.SetBestBlock(pindex);
        pindexGenesisBlock = pindex;
        return true;
AND

// Get prev block index
    CBlockIndex* pindexPrev = NULL;
    int nHeight = 0;
    if (hash != hashGenesisBlock) {

?



Nevermind, ignore this mid-level (low-level) silly crypto-currencyphile.  I tried running everything as is and it couldn't build because the word "loop" present within the code you gave me should be replaced with "while (true)".  I forgot that (maybe you did too?) for the most part just "loop" doesn't exist in C++.  Thanks for the link Solcoin Project.
Solcoin Project
Member
**
Offline Offline

Activity: 109
Merit: 10


View Profile WWW
February 09, 2014, 04:30:27 PM
 #365

We wrestled quite a while with Windows when building the Qt 4.8 wallet for our currency Solcoin, forked from Litecoin 0.8.6.1. Depending on the versions of GCC, the Boost libraries, OpenSSL and especially BDB, the results varied greatly. The client would run perfectly on one Windows installation but fail on another.

The two recurring problems were that the wallet software either refused to start up because of failure to initialize the database, even in the case of creating a brand new such, or it would crash upon exit. We finally got the build right using GCC 4.6.3 (POSIX threading model) instead of 4.4.0 or 4.8.2, Boost 1.55, OpenSSL 1.0.1c, BDB 4.8.30 and our own build of the Qt 4.8.5 libraries, and finally linking all of it statically.

Authors of [SOL] Solcoin - http://www.solcoin.net/ - service at solcoin dot net
olu
Newbie
*
Offline Offline

Activity: 10
Merit: 0


View Profile
February 09, 2014, 04:48:58 PM
 #366

We wrestled quite a while with Windows when building the Qt 4.8 wallet for our currency Solcoin, forked from Litecoin 0.8.6.1. Depending on the versions of GCC, the Boost libraries, OpenSSL and especially BDB, the results varied greatly. The client would run perfectly on one Windows installation but fail on another.

The two recurring problems were that the wallet software either refused to start up because of failure to initialize the database, even in the case of creating a brand new such, or it would crash upon exit. We finally got the build right using GCC 4.6.3 (POSIX threading model) instead of 4.4.0 or 4.8.2, Boost 1.55, OpenSSL 1.0.1c, BDB 4.8.30 and our own build of the Qt 4.8.5 libraries, and finally linking all of it statically.

Oh god.... maybe I should try out my own currency for a bit on different systems before releasing it?  I know you are probably busy, but you mind helping out, Solcoin Project?  I would not be opposed to compensating you.  Also, you did get me to look into solcoin with your name, so maybe that's something I should have done with this account (or with another one?).  Anyway, I have a couple of questions to ask you not related to qt or BTC, but trading on Cryptsy.  Shoot me a private message, but preferably an email @ o.m.agunloye@gmail.com.  This offer is open to anyone who has Dev experience as well, Solcoin Project has just been particularly amiable and helpful.



PS: I don't think I'm a newbie, according to the standards set by the forum in terms of knowledge, but I definitely don't have a presence here. Sad
Solcoin Project
Member
**
Offline Offline

Activity: 109
Merit: 10


View Profile WWW
February 09, 2014, 06:38:27 PM
 #367

... Anyway, I have a couple of questions to ask you not related to qt or BTC, but trading on Cryptsy.  Shoot me a private message, but preferably an email @ o.m.agunloye@gmail.com.  This offer is open to anyone who has Dev experience as well, Solcoin Project has just been particularly amiable and helpful.

You may shoot ME a message or an e-mail Smiley Address is in my forum signature.

Authors of [SOL] Solcoin - http://www.solcoin.net/ - service at solcoin dot net
johan11
Sr. Member
****
Offline Offline

Activity: 480
Merit: 250



View Profile
February 11, 2014, 05:17:42 PM
Last edit: February 11, 2014, 06:19:24 PM by johan11
 #368

I managed to create altcoin.exe i altcoin-qt but when you run show me this error. Any advice?




translate window

The exception unknown software () in the application at location ()

Click on OK to terminate the program.
johan11
Sr. Member
****
Offline Offline

Activity: 480
Merit: 250



View Profile
February 11, 2014, 06:17:38 PM
 #369

I managed to create altcoin.exe i altcoin-qt but when you run show me this error. Any advice?

Can't speak that language shown in the picture maybe you can translate it.

 Roll Eyes

The exception unknown software () in the application at location ()

Click on OK to terminate the program.
Cassey
Sr. Member
****
Offline Offline

Activity: 470
Merit: 250

Better to have 100 friends than 100 rubles


View Profile
February 12, 2014, 06:44:25 AM
Last edit: February 12, 2014, 08:19:04 AM by Cassey
 #370

Having problems building boost:

Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation.  All rights reserved.

C:\Users\cassey>cd c:\deps

c:\deps>cd boost*

c:\deps\boost_1_55_0>bootstrap.bat mingw
Building Boost.Build engine
'"VCVARS32.BAT"' is not recognized as an internal or external command,
operable program or batch file.
The system cannot find the batch label specified - Test_Option
'"VCVARS32.BAT"' is not recognized as an internal or external command,
operable program or batch file.
'"VCVARS32.BAT"' is not recognized as an internal or external command,
operable program or batch file.
'cl' is not recognized as an internal or external command,
operable program or batch file.

Update (and trimmed post):  I tried installing the pre-compile binaries by the final link failed.  Went back and tried building 1_53_0 and it worked fine.  For hells bell, tried it again in the 1_55_0 and the problem disappeared.  Strange, but maybe it will help someone else via Google searching in the future...

Update2:  After rebuilding, my coin linked clean - and for the VERY FIRST TIME on windows, actually worked!  Thank you SO MUCH for maintaining this thread!

Cassey
Cassey
Sr. Member
****
Offline Offline

Activity: 470
Merit: 250

Better to have 100 friends than 100 rubles


View Profile
February 12, 2014, 02:28:06 PM
 #371


Same issue as in

#351

Are you sure you now use 1.55 and its not 1.53? Maybe its good to try

#352

I'm not sure if building the rest of the environment, like QT (which came later in the instruction), or if installing the precompiled boost binaries fixed it, but the problem did go away.

Cassey
old c coder
Sr. Member
****
Offline Offline

Activity: 260
Merit: 250



View Profile WWW
February 13, 2014, 05:00:03 AM
 #372

Don't know if Ron and Nitro are still reading this, but thanks for the guide. 
You're welcome Smiley
Quote
I have grown from a complete novice to an intermediate crypto-phile/C++ coder thanks to this guide, ...
                                                                          -- Olu
Ron


LTC: LUYiMVsrFQewUSPDasSKGzhyTPAkiTeSov BTC: 1DPvP6WoZzaNQ9Nxzd64hjYad1kyQzTTbx YAC: Y3ZggXDvnRJaRwtVGyGJwt6DMLN3EPQpQf 
The day is coming when a single carrot, freshly observed, will set off a revolution.  Paul Cezanne
old c coder
Sr. Member
****
Offline Offline

Activity: 260
Merit: 250



View Profile WWW
February 13, 2014, 07:02:10 AM
Last edit: February 16, 2014, 03:33:50 AM by old c coder
 #373

I have managed to compile Litecoin 0.8.6 wallet without errors on closing but it has an awful windows 95 look. Why is that happening?

How? Depending on what versions of gcc, boost, openssl and bdb I use results can be anything from refusing to link, refusing to start up due to "wallet db error", or crashing on exit. Man, I hate Windows...
What makes you think it has anything to do with Windows?
Quote
I use Qt 4.8.5, gcc 4.4.0, boost 1.50, berkeley db 4.80, and openssl 1.0.1c currently, as I know these are used in several other working wallets, including a few Litecoin 0.8.6 forks that run perfectly.
I use Qt 4.8.4, gcc 4.6.2 (unobtanium now!), Boost 1.53, BerkeleyDB 4.8.30, OpenSSL 1.0.1c or 1.0.1e and levelDB 1.13 and build bitcoin with no problems.  I can't speak to litecoin as I don't know when its sources "forked" off of bitcoin.  It is important to know what version of bitcoin, and so what date, that an alternate crypto currency was born, as the tool versions that were used at the time would be most appropriate for that alt coin.  As the alt coin "matures" one may update the tools, but they need to be updated in a "gradual" "coordinated" fashion.  For example, one wouldn't - shouldn't use too much "newer" gccs as their "behavior" is known to "destabilize" "older" Qts for example.

Have you tired the tool combinations that fail somehow on Windows, and build the same alt coin (or bitcoin) on Linux (or MacOS) and test to see if they work there?

The main problem people have in building bitcoind & bitcoin-qt on Windows is that they aren't meticulous (enough) in following the recipe of nitrogenetics.  

Of course, it helps if you are knowledgeable on Windows!  Especially on command boxes (aka DOS windows).  It helps greatly if you know how to use .bat files or .wsh files, that is, how to "do" batch programming.  Also it helps if you are knowledgeable on how the Windows path environment is kept, controlled and manipulated.  There are many copies of the path at any moment in Windows, you know!  

There are subtle issues of pathnames with spaces in them, though that is less of an issue now than it was in the past.  And also one must be aware of subtleties regarding "\" versus "/" in couching pathnames.  None of these are difficult issues, it is just that the knowledge has been lost since there are no longer any definitive books on these subjects, and the general Windows user is no longer expected to know or wants to know, how  to do these things.  Remember that Windows 7 and 8 now make it even more difficult to "get your fingers in there and meddle around".

It helps if one knows the history of Windows and its DOS heritage.  Without that knowledge you have to fumble around by analogy with whatever you know about Linux, Unix, MacOs, etc. and  try to discern the "truth" of any subtle question by internet "research" and have the good judgement to know what is true, half-true or pure BS.  Kind of a vicious circle (catch-22) in which the only way to get knowledge is to know enough already to be able to tell what is knowledge Grin

So if you think the bitcoind (and Boost) code is pure and clean, try building it without the gcc -w argument!  Let's not even talk about qmake, makefile.release/debug and bitcoin-qt, which doesn't have the -w argument and you know what it "spews forth" Wink

What's interesting is that the compiler "warnings" about the bad C++ slang that is being used, as opposed to the preferred slang, i.e. the highly idiomatic, baroque (as Knuth calls it) nature of C++, can be controlled in MSVC++ and one can "see" more clearly what is "going on".  The thought is that this should lead to more understanding, but so far, the answers given are swamped by the questions that now appear!  Which is why you haven't heard from me (yet) on the Windows MSVC2005 version of bitcoind.  I have a "debug" version of bitcoind 0.8.6 that "appears to" run correctly.  And yes, Claire123 has a MSVC2012 version of bitcoind (& bitcoin-qt), but do our versions work correctly?  Do we have 'release' versions?  I am hoping to "GitHub" commit-pull request my MSVC "additions" to the bitcoind sources soon, but only when I feel that the code runs reliably.  

All of this reminds me of the Zen quote for today:
The most dangerous thing in the world is to think you understand something.

Ron


LTC: LUYiMVsrFQewUSPDasSKGzhyTPAkiTeSov BTC: 1DPvP6WoZzaNQ9Nxzd64hjYad1kyQzTTbx YAC: Y3ZggXDvnRJaRwtVGyGJwt6DMLN3EPQpQf 
The day is coming when a single carrot, freshly observed, will set off a revolution.  Paul Cezanne
Piggy
Hero Member
*****
Offline Offline

Activity: 784
Merit: 1416



View Profile WWW
February 13, 2014, 11:03:40 AM
 #374

Hi

I have some issues at the step 3.4




I edited the net.cpp like 4 times (checked like 500 lines) (oh and the ipv6 v6only is more like line 1700-1800 not 1600), restarted my computer ect
And try to be clear please, i'm 16 years old and french so I love hardware but when it's code like c, c++ it's not really my domain Smiley
thank you and have a nice day


EDIT : I think what's wrong

1.4 Install GCC from mingw-builds:
Download and unpack x32-4.8.1-release-posix-dwarf-rev5.7z
http://sourceforge.net/projects/mingwbuilds/files/host-windows/releases/4.8.1/32-bit/threads-posix/dwarf/x32-4.8.1-release-posix-dwarf-rev5.7z/download


it's this step

i see no mingw-builds in this file
and everytime i click on something that comports GCC on it a command appears and disapears



tried this yesterday night, but got stuck in this exact same point/error... if anybody got any suggestion
Cassey
Sr. Member
****
Offline Offline

Activity: 470
Merit: 250

Better to have 100 friends than 100 rubles


View Profile
February 13, 2014, 03:04:56 PM
 #375

Go into your mingw install and replace "winsock.h" with a copy of "winsock2.h".

I tried a variety of ways to force it to be included and none worked for reasons I don't understand, but this brute force approach did!

Cassey
Piggy
Hero Member
*****
Offline Offline

Activity: 784
Merit: 1416



View Profile WWW
February 14, 2014, 01:48:39 PM
Last edit: February 14, 2014, 02:02:33 PM by Piggy
 #376

i compiled the bitoind.exe and is synchronizing( i can see through the log file in the roaming folder is getting the blocks)

i dont really understand how from one guide are coming different problem and different solution but here is mine:

about the winsock.h winsock2...

in ws2tcpip.h i found this part and seems it's already using winsock2.h and works ( Huh) so i removed that check...

Code:
-#if (defined _WINSOCK_H && !defined _WINSOCK2_H)
-#error "ws2tcpip.h is not compatable with winsock.h. Include winsock2.h instead."
-#endif

#include <winsock2.h>

scrolling down about the struct ip_mrq already declared i just commented the declaration:

Code:
struct ip_mreq {
struct in_addr imr_multiaddr;
struct in_addr imr_interface;
};

to solve the last error i removed this:

Code:
#if (_WIN32_WINNT >= 0x0501)
void WSAAPI freeaddrinfo (struct addrinfo*);
int WSAAPI getaddrinfo (const char*,const char*,const struct addrinfo*,
       struct addrinfo**);
int WSAAPI getnameinfo(const struct sockaddr*,socklen_t,char*,DWORD,
      char*,DWORD,int);
#else
/* FIXME: Need WS protocol-independent API helpers.  */
#endif




EDIT:

Trying to compile Qt(step 4.2) i get this error:

olu
Newbie
*
Offline Offline

Activity: 10
Merit: 0


View Profile
February 14, 2014, 06:53:18 PM
 #377

i compiled the bitoind.exe and is synchronizing( i can see through the log file in the roaming folder is getting the blocks)

i dont really understand how from one guide are coming different problem and different solution but here is mine:

about the winsock.h winsock2...

in ws2tcpip.h i found this part and seems it's already using winsock2.h and works ( Huh) so i removed that check...

Code:
-#if (defined _WINSOCK_H && !defined _WINSOCK2_H)
-#error "ws2tcpip.h is not compatable with winsock.h. Include winsock2.h instead."
-#endif

#include <winsock2.h>

scrolling down about the struct ip_mrq already declared i just commented the declaration:

Code:
struct ip_mreq {
struct in_addr imr_multiaddr;
struct in_addr imr_interface;
};

to solve the last error i removed this:

Code:
#if (_WIN32_WINNT >= 0x0501)
void WSAAPI freeaddrinfo (struct addrinfo*);
int WSAAPI getaddrinfo (const char*,const char*,const struct addrinfo*,
       struct addrinfo**);
int WSAAPI getnameinfo(const struct sockaddr*,socklen_t,char*,DWORD,
      char*,DWORD,int);
#else
/* FIXME: Need WS protocol-independent API helpers.  */
#endif




EDIT:

Trying to compile Qt(step 4.2) i get this error:

https://i.imgur.com/tYeqXUI.png


Set permissions/ issue the fix that keeps it from complaining about them.  Nitro wrote this somewhere in the guide, but you can get this fix by googling it I think.  I'll post the exact solution for this later. 

everytime I set  a genesis block for the daemon and change the nNonce, the epoch time, etc, rebuilding and re-running the coind.exe says the merkle root assertion failed.  The thing works perfectly in test net...
olu
Newbie
*
Offline Offline

Activity: 10
Merit: 0


View Profile
February 14, 2014, 08:24:42 PM
 #378

i compiled the bitoind.exe and is synchronizing( i can see through the log file in the roaming folder is getting the blocks)

i dont really understand how from one guide are coming different problem and different solution but here is mine:

about the winsock.h winsock2...

in ws2tcpip.h i found this part and seems it's already using winsock2.h and works ( Huh) so i removed that check...

Code:
-#if (defined _WINSOCK_H && !defined _WINSOCK2_H)
-#error "ws2tcpip.h is not compatable with winsock.h. Include winsock2.h instead."
-#endif

#include <winsock2.h>

scrolling down about the struct ip_mrq already declared i just commented the declaration:

Code:
struct ip_mreq {
struct in_addr imr_multiaddr;
struct in_addr imr_interface;
};

to solve the last error i removed this:

Code:
#if (_WIN32_WINNT >= 0x0501)
void WSAAPI freeaddrinfo (struct addrinfo*);
int WSAAPI getaddrinfo (const char*,const char*,const struct addrinfo*,
       struct addrinfo**);
int WSAAPI getnameinfo(const struct sockaddr*,socklen_t,char*,DWORD,
      char*,DWORD,int);
#else
/* FIXME: Need WS protocol-independent API helpers.  */
#endif




EDIT:

Trying to compile Qt(step 4.2) i get this error:

https://i.imgur.com/tYeqXUI.png


Set permissions/ issue the fix that keeps it from complaining about them.  Nitro wrote this somewhere in the guide, but you can get this fix by googling it I think.  I'll post the exact solution for this later.  

everytime I set  a genesis block for the daemon and change the nNonce, the epoch time, etc, rebuilding and re-running the coind.exe says the merkle root assertion failed.  The thing works perfectly in test net...

Nvm, fixed it.  Apparently when they say add the config file AFTER it tells you that you don't have one, they really do mean only AFTER.
TechAUmNu
Newbie
*
Offline Offline

Activity: 4
Merit: 0


View Profile
February 14, 2014, 09:15:15 PM
 #379

I am currently trying to compile litecoin-qt.exe using makefile.debug but keep getting this error:

Code:
c:/deps/mingw/bin/../lib/gcc/i686-w64-mingw32/4.6.2/../../../../i686-w64-mingw32
/bin/ld.exe: cannot find -lQtGuid
c:/deps/mingw/bin/../lib/gcc/i686-w64-mingw32/4.6.2/../../../../i686-w64-mingw32
/bin/ld.exe: cannot find -lQtNetworkd
c:/deps/mingw/bin/../lib/gcc/i686-w64-mingw32/4.6.2/../../../../i686-w64-mingw32
/bin/ld.exe: cannot find -lQtCored
collect2: ld returned 1 exit status

I think its something to do with Qt but I cant figure out what... Any ideas?

I am using
boost 1.55
db 4.6.3
mingw 2.6.2
openssl-1.0.1c
qt 4.8.5


I am able to compile using makefile.release but it just runs for a few seconds with no GUI and then stops again.
Cassey
Sr. Member
****
Offline Offline

Activity: 470
Merit: 250

Better to have 100 friends than 100 rubles


View Profile
February 14, 2014, 09:50:22 PM
Last edit: February 15, 2014, 02:05:42 AM by Cassey
 #380

I had exactly the same problem, as did several others.   Solved it by going back to post #1 in this thread, which has been routinely updated, and following the instructions EXACTLY - use all the same packages and releases as specified in post #1.

Cassey
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 [19] 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 »
  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!