Pages:
Author

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

sr. member
Activity: 350
Merit: 250
CAN SOMEONE UPLOAD A WORKING VIRTUALBOX-IMAGE OF WINDOWS with installed compiling-tools ?

WOULD ALSO DONATE !!!

you can upload here: http://megacloud.tk
User: bitcoin
Password: bitcoin


i have working deps on windows. And there is no problem. but that is 1.87GB and my connection is an ass!!
member
Activity: 74
Merit: 10
www.btcaudio.eu || LIVE-AUDIO-TICKER
CAN SOMEONE UPLOAD A WORKING VIRTUALBOX-IMAGE OF WINDOWS with installed compiling-tools ?

WOULD ALSO DONATE !!!

you can upload here: http://megacloud.tk
User: bitcoin
Password: bitcoin

maximum is 30GB .. if you need more space -> send PM  Smiley
sr. member
Activity: 350
Merit: 250
also i think this tutorial is good, but it misses some things like you need to have msys-zlib-bin and msys-gcc compiler to able to make libpng and libqrencode.

The tutorial states you have to use a mingw-builds toolchain:

1.1 Install msys shell:
http://sourceforge.net/projects/mingw/files/Installer/mingw-get-setup.exe/download
From MinGW installation manager -> All packages -> MSYS
mark the following for installation:

msys-base-bin
msys-autoconf-bin
msys-automake-bin
msys-libtool-bin


then click on Installation -> Apply changes

Make sure no mingw packages are checked for installation or present from a previous install. Only the above msys packages should be installed. Also make sure that msys-gcc and msys-w32api packages are not installed.

1.2 Install MinGW-builds project toolchain:
Download http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/4.9.1/threads-posix/dwarf/i686-4.9.1-release-posix-dwarf-rt_v3-rev1.7z/download
and unpack it to C:\

I have used the mingw-builds that you have provided. However building qrencode and libpng still asks for zlib and gcc compiler, which is fixed by installing zlib and msys-gcc
full member
Activity: 131
Merit: 108
also i think this tutorial is good, but it misses some things like you need to have msys-zlib-bin and msys-gcc compiler to able to make libpng and libqrencode.

The tutorial states you have to use a mingw-builds toolchain:

1.1 Install msys shell:
http://sourceforge.net/projects/mingw/files/Installer/mingw-get-setup.exe/download
From MinGW installation manager -> All packages -> MSYS
mark the following for installation:

msys-base-bin
msys-autoconf-bin
msys-automake-bin
msys-libtool-bin


then click on Installation -> Apply changes

Make sure no mingw packages are checked for installation or present from a previous install. Only the above msys packages should be installed. Also make sure that msys-gcc and msys-w32api packages are not installed.

1.2 Install MinGW-builds project toolchain:
Download http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/4.9.1/threads-posix/dwarf/i686-4.9.1-release-posix-dwarf-rt_v3-rev1.7z/download
and unpack it to C:\
sr. member
Activity: 350
Merit: 250
okay, this one now

Code:
g++: error: CreateProcess: No such file or directory
Makefile.Release:70469: recipe for target 'build/qrcodedialog.o' failed

mingw bin is set in path environment variable. and its present in the corresponding folder. g++.exe and gcc.exe

Now I wonder what is the problem? is windows not able to find the file in that folder?

sr. member
Activity: 350
Merit: 250
this last thing. I was able to compile libpng after installing zlib, and msys-gcc-bin. Because first I had the error "checking.. whether c compiler works .. no"

after msys-gcc-bin. that error is gone. but now on qrencode.

Code:
checking whether make supports nested variables... yes
checking for style of include used by make... GNU
checking for gcc... gcc
checking whether the C compiler works... no
configure: error: in `/c/qrencode-3.4.4':
configure: error: C compiler cannot create executables
See `config.log' for more details





Code:
cd /c/deps/qrencode-3.4.4

LIBS="../libpng-1.6.12/.libs/libpng.a ../../mingw32/i686-w64-mingw32/lib/libz.a" \
png_CFLAGS="-I../libpng-1.6.12" \
png_LIBS="-L../libpng-1.6.12/.libs" \
configure --enable-static --disable-shared --without-tools

make

Edit: The above error doesn't appear. if I don't do the first 3 steps^. And just do the configure. So I looked in the config.log for the error. And it says no such file or directory.
sr. member
Activity: 350
Merit: 250
also i think this tutorial is good, but it misses some things like you need to have msys-zlib-bin and msys-gcc compiler to able to make libpng and libqrencode.
sr. member
Activity: 350
Merit: 250
^fixed those alot of thread_t errors by editing to berkleydb\build_unix\db.h

replace
typedef pthread_t db_threadid_t;

with

typedef u_int32_t db_threadid_t;

Now there are no more those errors. I will keep testing further.
hero member
Activity: 690
Merit: 501
Has anyone been able to build miniupnpc on Windows with 64-bit?
I keep getting:


C:\deps\miniupnpc>make -f Makefile.mingw init upnpc-static
make: 'init' is up to date.
wingenminiupnpcstrings miniupnpcstrings.h.in miniupnpcstrings.h
make: wingenminiupnpcstrings: Command not found
make: *** [miniupnpcstrings.h] Error 127
sr. member
Activity: 350
Merit: 250
anyone had this problem? Nothing works, I restored my old backup of db and then boost. Still the same errors. Even tried a old source
sr. member
Activity: 350
Merit: 250
^checked now, those changes are there. But still doesn't work. Like I said, it was working for a month, now it doesn't. it has something to do with mingw. But what, I don't understand.
sr. member
Activity: 350
Merit: 250
found it

https://github.com/laanwj/bitcoin/commit/61d85071405b99c3734606eed31ea8f615c0c77a

but right now i cant access my machineto compile again. i will try tomorrow thanks.

but i dont get sudden these errors? i have been compiling that exact same source code for months. no change to code at all.
sr. member
Activity: 260
Merit: 251
sr. member
Activity: 350
Merit: 250
I have been compiling fine until last day. I don't know. out of nowhere my fine machine gives me these errors. None of the files I am working on were modified. I even copy pasted my old copies of db 4.8.30. but no luck.

Code:
In file included from ..\db-4.8.30.NC-mgw\build_unix/db_cxx.h:64:0,
                 from src/db.h:14,
                 from src/walletdb.h:8,
                 from src/wallet.h:19,
                 from src/init.h:8,
                 from src\qt\bitcoin.cpp:11:
..\db-4.8.30.NC-mgw\build_unix/db.h: At global scope:
..\db-4.8.30.NC-mgw\build_unix/db.h:113:9: error: 'pthread_t' does not name a ty
pe
 typedef pthread_t db_threadid_t;
         ^
..\db-4.8.30.NC-mgw\build_unix/db.h:846:2: error: 'db_threadid_t' does not name
a type
  db_threadid_t tid;  /* Thread owning txn ID */
  ^
..\db-4.8.30.NC-mgw\build_unix/db.h:2022:42: error: 'db_threadid_t' has not been
 declared
  int   (*is_alive) __P((DB_ENV *, pid_t, db_threadid_t, u_int32_t));
                                          ^
..\db-4.8.30.NC-mgw\build_unix/db.h:40:21: note: in definition of macro '__P'
 #define __P(protos) protos
                     ^
..\db-4.8.30.NC-mgw\build_unix/db.h:2023:45: error: 'db_threadid_t' has not been
 declared
  void  (*thread_id) __P((DB_ENV *, pid_t *, db_threadid_t *));
                                             ^
..\db-4.8.30.NC-mgw\build_unix/db.h:40:21: note: in definition of macro '__P'
 #define __P(protos) protos
                     ^
..\db-4.8.30.NC-mgw\build_unix/db.h:2024:50: error: 'db_threadid_t' has not been
 declared
  char *(*thread_id_string) __P((DB_ENV *, pid_t, db_threadid_t, char *));
                                                  ^
..\db-4.8.30.NC-mgw\build_unix/db.h:40:21: note: in definition of macro '__P'
 #define __P(protos) protos
                     ^
..\db-4.8.30.NC-mgw\build_unix/db.h:2160:29: error: 'db_threadid_t' has not been
 declared
   int (**)(DB_ENV *, pid_t, db_threadid_t, u_int32_t)));
                             ^
..\db-4.8.30.NC-mgw\build_unix/db.h:40:21: note: in definition of macro '__P'
 #define __P(protos) protos
                     ^
..\db-4.8.30.NC-mgw\build_unix/db.h:2184:47: error: 'db_threadid_t' has not been
 declared
   __P((DB_ENV *, void (**)(DB_ENV *, pid_t *, db_threadid_t *)));
                                               ^
..\db-4.8.30.NC-mgw\build_unix/db.h:40:21: note: in definition of macro '__P'
 #define __P(protos) protos
                     ^
..\db-4.8.30.NC-mgw\build_unix/db.h:2186:31: error: 'db_threadid_t' has not been
 declared
   char *(**)(DB_ENV *, pid_t, db_threadid_t, char *)));
                               ^
..\db-4.8.30.NC-mgw\build_unix/db.h:40:21: note: in definition of macro '__P'
 #define __P(protos) protos
                     ^
..\db-4.8.30.NC-mgw\build_unix/db.h:2292:28: error: 'db_threadid_t' has not been
 declared
   int (*)(DB_ENV *, pid_t, db_threadid_t, u_int32_t)));
                            ^
..\db-4.8.30.NC-mgw\build_unix/db.h:40:21: note: in definition of macro '__P'
 #define __P(protos) protos
                     ^
..\db-4.8.30.NC-mgw\build_unix/db.h:2318:46: error: 'db_threadid_t' has not been
 declared
   __P((DB_ENV *, void (*)(DB_ENV *, pid_t *, db_threadid_t *)));
                                              ^
..\db-4.8.30.NC-mgw\build_unix/db.h:40:21: note: in definition of macro '__P'
 #define __P(protos) protos
                     ^
..\db-4.8.30.NC-mgw\build_unix/db.h:2320:30: error: 'db_threadid_t' has not been
 declared
   char *(*)(DB_ENV *, pid_t, db_threadid_t, char *)));
                              ^
..\db-4.8.30.NC-mgw\build_unix/db.h:40:21: note: in definition of macro '__P'
 #define __P(protos) protos
                     ^
In file included from src/db.h:14:0,
                 from src/walletdb.h:8,
                 from src/wallet.h:19,
                 from src/init.h:8,
                 from src\qt\bitcoin.cpp:11:
..\db-4.8.30.NC-mgw\build_unix/db_cxx.h:483:31: error: 'db_threadid_t' has not b
een declared
      int (**)(DbEnv *, pid_t, db_threadid_t, u_int32_t));
                               ^
..\db-4.8.30.NC-mgw\build_unix/db_cxx.h:485:30: error: 'db_threadid_t' has not b
een declared
      int (*)(DbEnv *, pid_t, db_threadid_t, u_int32_t));
                              ^
..\db-4.8.30.NC-mgw\build_unix/db_cxx.h:673:34: error: 'db_threadid_t' has not b
een declared
      void (**)(DbEnv *, pid_t *, db_threadid_t *));
                                  ^
..\db-4.8.30.NC-mgw\build_unix/db_cxx.h:674:55: error: 'db_threadid_t' has not b
een declared
  virtual int set_thread_id(void (*)(DbEnv *, pid_t *, db_threadid_t *));
                                                       ^
..\db-4.8.30.NC-mgw\build_unix/db_cxx.h:676:33: error: 'db_threadid_t' has not b
een declared
      char *(**)(DbEnv *, pid_t, db_threadid_t, char *));
                                 ^
..\db-4.8.30.NC-mgw\build_unix/db_cxx.h:678:13: error: 'db_threadid_t' has not b
een declared
      pid_t, db_threadid_t, char *));
             ^
..\db-4.8.30.NC-mgw\build_unix/db_cxx.h:747:6: error: 'db_threadid_t' has not be
en declared
      db_threadid_t thrid, u_int32_t flags);
      ^
..\db-4.8.30.NC-mgw\build_unix/db_cxx.h:755:6: error: 'db_threadid_t' has not be
en declared
      db_threadid_t *thridp);
      ^
..\db-4.8.30.NC-mgw\build_unix/db_cxx.h:757:6: error: 'db_threadid_t' has not be
en declared
      db_threadid_t thrid, char *buf);
      ^
..\db-4.8.30.NC-mgw\build_unix/db_cxx.h:779:43: error: 'db_threadid_t' has not b
een declared
  int (*isalive_callback_)(DbEnv *, pid_t, db_threadid_t, u_int32_t);
                                           ^
..\db-4.8.30.NC-mgw\build_unix/db_cxx.h:787:48: error: 'db_threadid_t' has not b
een declared
  void (*thread_id_callback_)(DbEnv *, pid_t *, db_threadid_t *);
                                                ^
..\db-4.8.30.NC-mgw\build_unix/db_cxx.h:788:54: error: 'db_threadid_t' has not b
een declared
  char *(*thread_id_string_callback_)(DbEnv *, pid_t, db_threadid_t,
                                                      ^
In file included from ..\boost-1.50.0-mgw/boost/system/system_error.hpp:14:0,
                 from ..\boost-1.50.0-mgw/boost/thread/exceptions.hpp:22,
                 from ..\boost-1.50.0-mgw/boost/thread/win32/thread_primitives.h
pp:16,
                 from ..\boost-1.50.0-mgw/boost/thread/win32/basic_timed_mutex.h
pp:14,
                 from ..\boost-1.50.0-mgw/boost/thread/win32/mutex.hpp:9,
                 from ..\boost-1.50.0-mgw/boost/thread/mutex.hpp:14,
                 from src/allocators.h:10,
                 from src\qt\walletmodel.h:8,
                 from src\qt\bitcoin.cpp:6:
..\boost-1.50.0-mgw/boost/system/error_code.hpp:214:36: warning: 'boost::system:
:posix_category' defined but not used [-Wunused-variable]
     static const error_category &  posix_category = generic_category();
                                    ^
..\boost-1.50.0-mgw/boost/system/error_code.hpp:215:36: warning: 'boost::system:
:errno_ecat' defined but not used [-Wunused-variable]
     static const error_category &  errno_ecat     = generic_category();
                                    ^
..\boost-1.50.0-mgw/boost/system/error_code.hpp:216:36: warning: 'boost::system:
:native_ecat' defined but not used [-Wunused-variable]
     static const error_category &  native_ecat    = system_category();
                                    ^
Makefile.Release:12235: recipe for target 'build/bitcoin.o' failed
mingw32-make: *** [build/bitcoin.o] Error 1


Anyone had this problem before?
sr. member
Activity: 260
Merit: 251
can anyone help me here??

Code:
C:/mingw32/bin/../lib/gcc/i686-w64-mingw32/4.9.1/../../../../i686-w64-mingw32/bi
n/ld.exe: cannot find -lboost_system-mgw48-mt-s-1_55
C:/mingw32/bin/../lib/gcc/i686-w64-mingw32/4.9.1/../../../../i686-w64-mingw32/bi
n/ld.exe: cannot find -lboost_filesystem-mgw48-mt-s-1_55
C:/mingw32/bin/../lib/gcc/i686-w64-mingw32/4.9.1/../../../../i686-w64-mingw32/bi
n/ld.exe: cannot find -lboost_program_options-mgw48-mt-s-1_55
C:/mingw32/bin/../lib/gcc/i686-w64-mingw32/4.9.1/../../../../i686-w64-mingw32/bi
n/ld.exe: cannot find -lboost_thread-mgw48-mt-s-1_55
C:/mingw32/bin/../lib/gcc/i686-w64-mingw32/4.9.1/../../../../i686-w64-mingw32/bi
n/ld.exe: cannot find -lboost_chrono-mgw48-mt-s-1_55
collect2.exe: error: ld returned 1 exit status

seems lke a problem with your boost library , be sure you installed correctly the dependencies and double-check all the paths in your .pro file

To be more specific, your first line:
C:/mingw32/bin/../lib/gcc/i686-w64-mingw32/4.9.1/../../../../i686-w64-mingw32/bi
n/ld.exe: cannot find -lboost_system-mgw
48-mt-s-1_55

suggests that gcc 4.9.1 is looking for a boost built with gcc 4.8.x (multi-threaded static release mode) version 1.55

Now perhaps the compiler can't find that version because you didn't build it?  Or you did, but didn't put it where gcc thinks it is?  Because you told it the wrong place? Or... lots of other possibilities Huh  Do you get the idea?

Ron

newbie
Activity: 38
Merit: 0
Code:
C:\Coins\foobarcoin>make -f Makefile.Release
c:\Qt\4.8.4\bin\rcc.exe -name bitcoin src\qt\bitcoin.qrc -o release\qrc_bitcoin.
cpp
g++ -c -fpermissive -O2 -frtti -fexceptions -mthreads -fdiagnostics-show-option
-Wall -Wextra -Wno-ignored-qualifiers -Wformat -Wformat-security -Wno-unused-par
ameter -Wstack-protector -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_GUI -DBOOST_THREA
D_USE_LIB -DBOOST_SPIRIT_THREADSAFE -DUSE_IPV6=1 -DWIN32 -D_MT -DBOOST_THREAD_PR
OVIDES_GENERIC_SHARED_MUTEX_ON_WIN -DQT_THREAD_SUPPORT -DQT_NO_DEBUG -DQT_GUI_LI
B -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQ
T_HAVE_SSE2 -DQT_NEEDS_QMAIN -I"..\..\Qt\4.8.4\include\QtCore" -I"..\..\Qt\4.8.4
\include\QtGui" -I"..\..\Qt\4.8.4\include" -I"src" -I"src\json" -I"src\qt" -I"sr
c\leveldb\include" -I"src\leveldb\helpers" -I"..\..\deps\boost_1_53_0" -I"..\..\
deps\db-4.8.30.NC\build_unix" -I"..\..\deps\openssl-1.0.1e\include" -I"..\..\Qt\
4.8.4\include\ActiveQt" -I"build" -I"build" -I"..\..\Qt\4.8.4\mkspecs\win32-g++"
 -o build\qrc_bitcoin.o release\qrc_bitcoin.cpp
g++ -Wl,--large-address-aware -static -static-libgcc -static-libstdc++ -Wl,-s -m
threads -Wl,-subsystem,windows -o release\foobarCoin-qt.exe object_script.foobarCoin
-qt.Release  -L"c:\Qt\4.8.4\lib" -lmingwthrd -lmingw32 -lqtmain build\bitcoin-qt
_res.o -lshlwapi -lssl -lcrypto -ldb_cxx -lws2_32 -lole32 -loleaut32 -luuid -lgd
i32 -lboost_system-mgw46-mt-sd-1_53 -lboost_filesystem-mgw46-mt-sd-1_53 -lboost_
program_options-mgw46-mt-sd-1_53 -lboost_thread-mgw46-mt-sd-1_53 C:/Coins/foobarco
in/src/leveldb/libleveldb.a C:/Coins/foobarcoin/src/leveldb/libmemenv.a -lshlwapi
-LC:/deps/boost_1_53_0/stage/lib -LC:/deps/db-4.8.30.NC/build_unix -LC:/deps/ope
nssl-1.0.1e -lssl -lcrypto -ldb_cxx -lws2_32 -lshlwapi -lmswsock -lole32 -loleau
t32 -luuid -lgdi32 -lboost_system-mgw46-mt-sd-1_53 -lboost_filesystem-mgw46-mt-s
d-1_53 -lboost_program_options-mgw46-mt-sd-1_53 -lboost_thread-mgw46-mt-sd-1_53
-lboost_chrono-mgw46-mt-sd-1_53 -lQtGui4 -lQtCore4
./build\miner.o:miner.cpp:(.text$_ZN5boost6detail5win3223GetTickCount64emulation
Ev+0x1e): undefined reference to `_InterlockedCompareExchange'
./build\miner.o:miner.cpp:(.text$_ZN5boost6detail5win3223GetTickCount64emulation
Ev+0x77): undefined reference to `_InterlockedCompareExchange'
./build\miner.o:miner.cpp:(.text$_ZN5boost6detail5win3223GetTickCount64emulation
Ev+0xdf): undefined reference to `_InterlockedCompareExchange'
collect2: error: ld returned 1 exit status error
mingw32-make: *** [release\foobarCoin-qt.exe] Error 1


What's the problem? Could anyone help me?
sr. member
Activity: 280
Merit: 250
can anyone help me here??

Code:
C:/mingw32/bin/../lib/gcc/i686-w64-mingw32/4.9.1/../../../../i686-w64-mingw32/bi
n/ld.exe: cannot find -lboost_system-mgw48-mt-s-1_55
C:/mingw32/bin/../lib/gcc/i686-w64-mingw32/4.9.1/../../../../i686-w64-mingw32/bi
n/ld.exe: cannot find -lboost_filesystem-mgw48-mt-s-1_55
C:/mingw32/bin/../lib/gcc/i686-w64-mingw32/4.9.1/../../../../i686-w64-mingw32/bi
n/ld.exe: cannot find -lboost_program_options-mgw48-mt-s-1_55
C:/mingw32/bin/../lib/gcc/i686-w64-mingw32/4.9.1/../../../../i686-w64-mingw32/bi
n/ld.exe: cannot find -lboost_thread-mgw48-mt-s-1_55
C:/mingw32/bin/../lib/gcc/i686-w64-mingw32/4.9.1/../../../../i686-w64-mingw32/bi
n/ld.exe: cannot find -lboost_chrono-mgw48-mt-s-1_55
collect2.exe: error: ld returned 1 exit status

seems lke a problem with your boost library , be sure you installed correctly the dependencies and double-check all the paths in your .pro file
full member
Activity: 177
Merit: 100
anyway you can add how to compile Webkit as well? one of the altcoins i am trying to build a wallet for requires webkitwidgets?
I have looked around but im lost on how to compile ruby, icu, and the other dependencies for mingw
best way for webkit is for use qt with VS for win not open source.
for open source way is with third party wbkits Smiley
good luck
full member
Activity: 177
Merit: 100
qmake "USE_QRCODE=1" "USE_UPNP=1" "USE_IPV6=1" bitcoin-qt.pro
mingw32-make -f Makefile.Release

"USE_UPNP=-"
this way is only for latest new versions of bitcoin
for old version can use miniupnpc-1.9.tar.gz withou latest commits
and its good and work with qt 4.8 and 5.3 and 5.3.1 and 5.3.2
legendary
Activity: 1400
Merit: 1009
can anyone help me here??

Code:
C:/mingw32/bin/../lib/gcc/i686-w64-mingw32/4.9.1/../../../../i686-w64-mingw32/bi
n/ld.exe: cannot find -lboost_system-mgw48-mt-s-1_55
C:/mingw32/bin/../lib/gcc/i686-w64-mingw32/4.9.1/../../../../i686-w64-mingw32/bi
n/ld.exe: cannot find -lboost_filesystem-mgw48-mt-s-1_55
C:/mingw32/bin/../lib/gcc/i686-w64-mingw32/4.9.1/../../../../i686-w64-mingw32/bi
n/ld.exe: cannot find -lboost_program_options-mgw48-mt-s-1_55
C:/mingw32/bin/../lib/gcc/i686-w64-mingw32/4.9.1/../../../../i686-w64-mingw32/bi
n/ld.exe: cannot find -lboost_thread-mgw48-mt-s-1_55
C:/mingw32/bin/../lib/gcc/i686-w64-mingw32/4.9.1/../../../../i686-w64-mingw32/bi
n/ld.exe: cannot find -lboost_chrono-mgw48-mt-s-1_55
collect2.exe: error: ld returned 1 exit status
Pages:
Jump to: