Pages:
Author

Topic: Building headless Bitcoin and Bitcoin-qt on Windows - page 57. (Read 419389 times)

legendary
Activity: 1708
Merit: 1020
full member
Activity: 131
Merit: 108
Msys-perl option added to first post  Wink
legendary
Activity: 1708
Merit: 1020
Building on Windows is hell on earth. Thanks for the guide.

Is it really necessary to install ActivePerl? MSYS has it's own Perl...

edit: Seems like the MSYS Perl is not working or too old. It seems to work after updating/installing so might be an alternative to ActivePerl:

Code:
mingw-get install msys-perl
member
Activity: 81
Merit: 10

I'm a total noob with this code (although I do code).  Any help would be greatly appreciated.  I did look at the INSTALL file as suggested in the error message, but I still couldn't figure out what is wrong.  I loaded mingw, pearl, set the path, opened minGW and unpacked the files exactly as prescribed, but it bombs at the configure step.

Try reinstalling Mingw/Msys. (Online installer can randomly skip a component or two. The only way to notice is to inspect its log file.)


Thanks, that must have been it.  I uninstalled everything and started over.  However now on step 2.2 where the instructions say "after configuring make sure to edit your build_unix/db.h by replacing line 113:" I have another problem.  I don't have a db.h file in the build_unix folder.  I have several db.h files, but they're all in other folders:  \build_vxwork, \build_wince, \build_windows, \build_brew, and \build_s60.  Is there supposed to be a db.h in the build_unix folder?  I notice the only db.h file with an apparently matching line 113 is the one in the \build_brew folder, but it already has the suggested change implemented.  Do I need to copy and paste the db files from \build_brew to \build_unix?

Thanks again,

Just to follow up with the difficulty I was having.  The author "nitrogenetics" recommends starting with a clean virtual machine.  That is very good advice since all my problems apparently cropped up because I initially started with an old version of MinGW on my machine and then installed the newer version on top of it.  Also if you remove MinGW using Window's control panel-> uninstall program, it doesn't really uninstall MinGW.  It just removes the shortcuts and keeps the files intact. So then if you uninstall and re-install (as I tried), you may still have issues.  What finally fixed my problems was completely deleting the MinGW directory and then doing a clean re-install from scratch.
full member
Activity: 131
Merit: 108
Not really needed, official gitian build for 0.8.3 uses boost 1.50, openssl 1.0.1c and qt 4.8.3. BDB is still required for wallet.dat, but versions newer than 4.8 are not recommended as they would break binary wallet compatibility.
sr. member
Activity: 260
Merit: 251
Instructions updated:
-Make sure to use prepackaged repository catalogues during mingw installation
-Boost 1.54.0
-Qt 4.8.5

I'm still compiling bitcoind & bitcoin-qt successfully, on windows, for windows, using boost 1.53, qt 4.8.4, Berkeley DB 4.8.30 (if it is still used?), openssl 1.0.1c or 1.0.1e. I am compiling the release sources for 0.8.3 and a gitHub 0.8.0

Should I "up" boost & qt?

Ron
full member
Activity: 131
Merit: 108
Instructions updated:
-Make sure to use prepackaged repository catalogues during mingw installation
-Boost 1.54.0
-Qt 4.8.5
sr. member
Activity: 260
Merit: 251
So, I'm almost there, but not quite.

I got the bitcoin-qt.exe file in the release folder, like I'm supposed to.  However, when I attempted to run it, I got a "qtcore4.dll" is missing error message.  Easy enough...I downloaded qtcore4.dll, put it in the system 32 folder, and ran a command line with " regsvr32 qtcore4.dll ".  I then got an error message that the .dll might not be compatible with my version of windows.  I tried the bitcoin .exe again anyway, and I got a different error message.  This time I got "The procedure entry point _Z17qt_message_output9QtMsgTypePKc could not be located in the dynamic link library QtCore4.dll".

Can anyone help me out here? I'm using 64-bit windows 7, by the way.

Any advice would be very much appreciated.  Honestly I'm amazed I got this far on my own. Tongue

Hello ?

See message #41 (above) in this thread. Been there done that, fixed. Basically one corrects the Makefile.Release and Makefile.Debug that bitcoin-qt.pro produce so that those files are visible at link time.

Ron

Hello Ron.  Thanks for the reply.

Sorry for the trouble.  I skimmed your post the other day while looking over this thread, I guess I missed the line about qtcore4, so I thought it didn't relate to my problem. Tongue

I edited the makefile.debug and .release files like your post instructed, and rebuilt the .exe, unfortunately it doesn't seem to have solved my problem.  I'm pretty stumped since everything about this error has said the same thing you have, that it's a simple directory error.  My qt/4.8.4/bin directory has qtcore4 sitting right there, and my makefile points to it now, so I don't understand why it's still giving me the entry point error.  I even temporarily removed qtcore4 from the bin directory just to see if it would have any effect, and it didn't.  Could the bitcoin program still be looking for qtcore4 in the wrong place, somehow?

Hello ?

Since you are redoing the linking process, with more libraries (dlls\'s, etc.) available, you should delete the bitcoin-qt.exe at least, to force it to recreate it. And not knowing how makefile.release nor makefile.debug really work, I would delete all the build/*.o object files to really make it do it from the top, as it were.

Did you notice that the makefile.release & .debug that bitcoin-qt.pro produces creates lines that are longer than 2K (2048) characters! Can you editor handle that! If not you need to break up those lines with the usual \
type stuff.

Have you successfully created a bitcoind.exe release and debug using nitrogenetics info, first? If not, you need to do that in order to have all the libraries and have them in view for makefile.release or .debug

Step 3.1 for the levelDB code is important, and step 4.2, creating all the boost, bdb & openssl include and library paths for the bitcoin-qt creation process.

Hope this helps...

Ron
newbie
Activity: 10
Merit: 0
So, I'm almost there, but not quite.

I got the bitcoin-qt.exe file in the release folder, like I'm supposed to.  However, when I attempted to run it, I got a "qtcore4.dll" is missing error message.  Easy enough...I downloaded qtcore4.dll, put it in the system 32 folder, and ran a command line with " regsvr32 qtcore4.dll ".  I then got an error message that the .dll might not be compatible with my version of windows.  I tried the bitcoin .exe again anyway, and I got a different error message.  This time I got "The procedure entry point _Z17qt_message_output9QtMsgTypePKc could not be located in the dynamic link library QtCore4.dll".

Can anyone help me out here? I'm using 64-bit windows 7, by the way.

Any advice would be very much appreciated.  Honestly I'm amazed I got this far on my own. Tongue

Hello ?

See message #41 (above) in this thread. Been there done that, fixed. Basically one corrects the Makefile.Release and Makefile.Debug that bitcoin-qt.pro produce so that those files are visible at link time.

Ron

Hello Ron.  Thanks for the reply.

Sorry for the trouble.  I skimmed your post the other day while looking over this thread, I guess I missed the line about qtcore4, so I thought it didn't relate to my problem. Tongue

I edited the makefile.debug and .release files like your post instructed, and rebuilt the .exe, unfortunately it doesn't seem to have solved my problem.  I'm pretty stumped since everything about this error has said the same thing you have, that it's a simple directory error.  My qt/4.8.4/bin directory has qtcore4 sitting right there, and my makefile points to it now, so I don't understand why it's still giving me the entry point error.  I even temporarily removed qtcore4 from the bin directory just to see if it would have any effect, and it didn't.  Could the bitcoin program still be looking for qtcore4 in the wrong place, somehow?
legendary
Activity: 2058
Merit: 1452
This is still too complicated for noobs like me. I'd really like to have an option where I download one file.
lol not possible.
member
Activity: 81
Merit: 10

I'm a total noob with this code (although I do code).  Any help would be greatly appreciated.  I did look at the INSTALL file as suggested in the error message, but I still couldn't figure out what is wrong.  I loaded mingw, pearl, set the path, opened minGW and unpacked the files exactly as prescribed, but it bombs at the configure step.

Try reinstalling Mingw/Msys. (Online installer can randomly skip a component or two. The only way to notice is to inspect its log file.)


Thanks, that must have been it.  I uninstalled everything and started over.  However now on step 2.2 where the instructions say "after configuring make sure to edit your build_unix/db.h by replacing line 113:" I have another problem.  I don't have a db.h file in the build_unix folder.  I have several db.h files, but they're all in other folders:  \build_vxwork, \build_wince, \build_windows, \build_brew, and \build_s60.  Is there supposed to be a db.h in the build_unix folder?  I notice the only db.h file with an apparently matching line 113 is the one in the \build_brew folder, but it already has the suggested change implemented.  Do I need to copy and paste the db files from \build_brew to \build_unix?

Thanks again,
sr. member
Activity: 260
Merit: 251
So, I'm almost there, but not quite.

I got the bitcoin-qt.exe file in the release folder, like I'm supposed to.  However, when I attempted to run it, I got a "qtcore4.dll" is missing error message.  Easy enough...I downloaded qtcore4.dll, put it in the system 32 folder, and ran a command line with " regsvr32 qtcore4.dll ".  I then got an error message that the .dll might not be compatible with my version of windows.  I tried the bitcoin .exe again anyway, and I got a different error message.  This time I got "The procedure entry point _Z17qt_message_output9QtMsgTypePKc could not be located in the dynamic link library QtCore4.dll".

Can anyone help me out here? I'm using 64-bit windows 7, by the way.

Any advice would be very much appreciated.  Honestly I'm amazed I got this far on my own. Tongue

Hello ?

See message #41 (above) in this thread. Been there done that, fixed. Basically one corrects the Makefile.Release and Makefile.Debug that bitcoin-qt.pro produce so that those files are visible at link time.

Ron
newbie
Activity: 10
Merit: 0
So, I'm almost there, but not quite.

I got the bitcoin-qt.exe file in the release folder, like I'm supposed to.  However, when I attempted to run it, I got a "qtcore4.dll" is missing error message.  Easy enough...I downloaded qtcore4.dll, put it in the system 32 folder, and ran a command line with " regsvr32 qtcore4.dll ".  I then got an error message that the .dll might not be compatible with my version of windows.  I tried the bitcoin .exe again anyway, and I got a different error message.  This time I got "The procedure entry point _Z17qt_message_output9QtMsgTypePKc could not be located in the dynamic link library QtCore4.dll".

Can anyone help me out here? I'm using 64-bit windows 7, by the way.

Any advice would be very much appreciated.  Honestly I'm amazed I got this far on my own. Tongue
sr. member
Activity: 403
Merit: 251

I'm a total noob with this code (although I do code).  Any help would be greatly appreciated.  I did look at the INSTALL file as suggested in the error message, but I still couldn't figure out what is wrong.  I loaded mingw, pearl, set the path, opened minGW and unpacked the files exactly as prescribed, but it bombs at the configure step.

Try reinstalling Mingw/Msys. (Online installer can randomly skip a component or two. The only way to notice is to inspect its log file.)
member
Activity: 81
Merit: 10
 Huh

I can't even get past step 2.1.   When entering the ./config command I get this error in MinGW32

Quote
$ ./config
Operating system: i686-whatever-mingw
Can't locate strict.pm in @INC (@INC contains: /usr/lib/per15/5.8/msys /usr/lib/per15/5.8
/usr/lib/pper15/site_perl/5.8/msy /usr/lib/per15/vender_perl/5.8 ... at ./Configure line 9.
BEGIN failed--compilation aborted at ./Configure line 9.

... (basically the error message above repeats a second time) ...

This system (mingw) is not supported.  See file INSTALL for details.

I'm a total noob with this code (although I do code).  Any help would be greatly appreciated.  I did look at the INSTALL file as suggested in the error message, but I still couldn't figure out what is wrong.  I loaded mingw, pearl, set the path, opened minGW and unpacked the files exactly as prescribed, but it bombs at the configure step.

Thanks
legendary
Activity: 1001
Merit: 1005
This is still too complicated for noobs like me. I'd really like to have an option where I download one file.
hero member
Activity: 686
Merit: 504
always the student, never the master.
Edit: I got the path problem fixed. now i still get this error when installing boost:


Quote

Building Boost.Engine

'cl' is not recognized as an internal or external command, operable program, or batchfile.

Failed to build Boost.Build engine.




EDIT: I figured it out. i missed the mingw command >< Doh! keep it simple stupid!
hero member
Activity: 686
Merit: 504
always the student, never the master.
i made it all the way to installing boost. i get the error

Quote

Failed to build Boost.Build engine

Please consult bootstrap.log for more details


when i open the log files there is no mention of any errors it just says

Quote

###
### Using 'msvc' toolset.
###

C:\deps\boost_1_53_0\tools\build\v2\engine>if exist bootstrap rd /S /Q bootstrap

C:\deps\boost_1_53_0\tools\build\v2\engine>md bootstrap

C:\deps\boost_1_53_0\tools\build\v2\engine>cl /nologo /GZ /Zi /MLd /Fobootstrap/ /Fdbootstrap/ -DNT -DYYDEBUG kernel32.lib advapi32.lib user32.lib /Febootstrap\jam0  command.c compile.c constants.c debug.c execnt.c filent.c function.c glob.c hash.c hdrmacro.c headers.c jam.c jambase.c jamgram.c lists.c make.c make1.c object.c option.c output.c parse.c pathunix.c regexp.c rules.c scan.c search.c subst.c timestamp.c variable.c modules.c strings.c filesys.c builtins.c md5.c pwd.c class.c w32_getreg.c native.c modules/set.c modules/path.c modules/regex.c modules/property-set.c modules/sequence.c modules/order.c


Alternatively i tried building it in the minGW shell but that fails too with the folowing errors in the log file:

Quote

fatal error: sys/wait.h: No such file or directory
compilation terminated.
execunix.c:17:26: fatal error: sys/resource.h: No such file or directory
compilation terminated.
fileunix.c:98:17: fatal error: ar.h: No such file or directory
compilation terminated.




can anyone help me with this problem? i need to build boost to compile a project i've been working on
member
Activity: 112
Merit: 10
wait longer. it takes more than 30 minutes to set up both VM.
tnx, they installed

but make -f makefile.unix whatever compile bitcoind for unix  Cry

make -f makefile.mingw terminate witch
Code:
g++: oшибкa: unrecognized command line option «-mthreads»
make: *** [bitcoind.exe] Oшибкa 1
(Oшибкa == error)

May be before compile need remove folder bitcoin-master in specific subfolder gitian-builder?
legendary
Activity: 2058
Merit: 1452
after step 5:
Code:
alexander@vurtual-ubuntu-x64:~/Downloads/gitian-builder$ bin/make-base-vm
2013-06-07 04:46:31,692 INFO    : Calling hook: preflight_check
2013-06-07 04:46:31,695 INFO    : Calling hook: set_defaults
2013-06-07 04:46:31,695 INFO    : Calling hook: bootstrap

infinite waiting.
press Ctrl+c, see next:
Code:
^CTraceback (most recent call last):
  File "/usr/bin/vmbuilder", line 24, in
    cli.main()
  File "/usr/lib/python2.7/dist-packages/VMBuilder/contrib/cli.py", line 218, in main
    distro.build_chroot()
  File "/usr/lib/python2.7/dist-packages/VMBuilder/distro.py", line 83, in build_chroot
    self.call_hooks('bootstrap')
  File "/usr/lib/python2.7/dist-packages/VMBuilder/distro.py", line 67, in call_hooks
    call_hooks(self, *args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/VMBuilder/util.py", line 165, in call_hooks
    getattr(context, func, log_no_such_method)(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/VMBuilder/plugins/ubuntu/distro.py", line 136, in bootstrap
    self.suite.debootstrap()
  File "/usr/lib/python2.7/dist-packages/VMBuilder/plugins/ubuntu/dapper.py", line 269, in debootstrap
    run_cmd(*cmd, **kwargs)
  File "/usr/lib/python2.7/dist-packages/VMBuilder/util.py", line 113, in run_cmd
    fds = select.select([x.file for x in [mystdout, mystderr] if not x.closed], [], [])[0]
KeyboardInterrupt

how to step 6,7?

wait longer. it takes more than 30 minutes to set up both VM.
Pages:
Jump to: