Bitcoin Forum
November 11, 2024, 11:28:30 AM *
News: Latest Bitcoin Core release: 28.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 ... 60 »
  Print  
Author Topic: Building headless Bitcoin and Bitcoin-qt on Windows  (Read 419387 times)
CaptChadd
Hero Member
*****
Offline Offline

Activity: 924
Merit: 1005


Product Marketing & Promotion / Software Developer


View Profile
July 13, 2013, 03:09:28 PM
 #81

Ok, I think I have it looking in the right places but I am now getting this error, anyone have any ideas please?

C:\bitcoin\bitcoin-master\src>mingw32-make -f makefile.mingw
g++ -mthreads -O2 -w -Wall -Wextra -Wformat -Wformat-security -Wno-unused-parameter -g -DWIN32 -D_WINDOWS -DBOOST_THREAD_USE_LIB -DBOOST_SPIRIT_THREADSAFE -DUSE_IPV6=1 -IC:/bitcoin/bitcoin-master/src/
leveldb/include -IC:/bitcoin/bitcoin-master/src/leveldb/helpers -I"C:/bitcoin/bitcoin-master/src" -I"c:/deps/boost_1_54_0" -I"c:/deps/db-4.8.30.NC/build_unix" -I"c:/deps/openssl-1.0.1e/include" -Wl,--
dynamicbase -Wl,--nxcompat -Wl,--large-address-aware -o bitcoind.exe -L"C:/bitcoin/bitcoin-master/src/leveldb" -L"C:\deps\boost_1_54_0\stage\lib" -L"c:/deps/db-4.8.30.NC/build_unix" -L"c:/deps/openssl
-1.0.1e" leveldb/libleveldb.a obj/alert.o obj/version.o obj/checkpoints.o obj/netbase.o obj/addrman.o obj/crypter.o obj/key.o obj/db.o obj/init.o obj/bitcoind.o obj/keystore.o obj/core.o obj/main.o ob
j/net.o obj/protocol.o obj/bitcoinrpc.o obj/rpcdump.o obj/rpcnet.o obj/rpcmining.o obj/rpcwallet.o obj/rpcblockchain.o obj/rpcrawtransaction.o obj/script.o obj/sync.o obj/util.o obj/wallet.o obj/walle
tdb.o obj/hash.o obj/bloom.o obj/noui.o obj/leveldb.o obj/txdb.o obj/chainparams.o -l leveldb -l memenv -l boost_system-mgw46-mt-sd-1_54 -l boost_filesystem-mgw46-mt-sd-1_54 -l boost_program_options-m
gw46-mt-sd-1_54 -l boost_thread-mgw46-mt-sd-1_54 -l boost_chrono-mgw46-mt-sd-1_54 -l db_cxx -l ssl -l crypto -l kernel32 -l user32 -l gdi32 -l comdlg32 -l winspool -l winmm -l shell32 -l comctl32 -l o
le32 -l oleaut32 -l uuid -l rpcrt4 -l advapi32 -l ws2_32 -l mswsock -l shlwapi
obj/alert.o: In function `thread<void (*)(std::basic_string<char>), std::basic_string<char> >':
c:/deps/boost_1_52_0/boost/thread/detail/thread.hpp:279: undefined reference to `boost::thread::start_thread()'
obj/init.o: In function `thread<boost::_bi::bind_t<void, void (*)(const std::basic_string<char>&), boost::_bi::list1<boost::reference_wrapper<std::basic_string<char> > > > >':
c:/deps/boost_1_52_0/boost/thread/detail/thread.hpp:223: undefined reference to `boost::thread::start_thread()'
obj/init.o: In function `thread<void (*)()>':
c:/deps/boost_1_52_0/boost/thread/detail/thread.hpp:223: undefined reference to `boost::thread::start_thread()'
obj/init.o: In function `thread<boost::_bi::bind_t<void, void (*)(std::vector<boost::filesystem::path>), boost::_bi::list1<boost::_bi::value<std::vector<boost::filesystem::path> > > > >':
c:/deps/boost_1_52_0/boost/thread/detail/thread.hpp:223: undefined reference to `boost::thread::start_thread()'
obj/bitcoind.o: In function `thread<boost::_bi::bind_t<void, void (*)(boost::thread_group*), boost::_bi::list1<boost::_bi::value<boost::thread_group*> > > >':
c:/deps/boost_1_52_0/boost/thread/detail/thread.hpp:223: undefined reference to `boost::thread::start_thread()'
obj/bitcoind.o: In function `Z7AppInitiPPc':
C:\bitcoin\bitcoin-master\src/bitcoind.cpp:117: undefined reference to `boost::thread::join()'
obj/main.o: In function `thread<boost::_bi::bind_t<void, void (*)(CWallet*), boost::_bi::list1<boost::_bi::value<CWallet*> > > >':
c:/deps/boost_1_52_0/boost/thread/detail/thread.hpp:223: undefined reference to `boost::thread::start_thread()'
obj/net.o: In function `thread<boost::_bi::bind_t<void, void (*)(const char*, void (*)()), boost::_bi::list2<boost::_bi::value<const char*>, boost::_bi::value<void (*)()> > > >':
c:/deps/boost_1_52_0/boost/thread/detail/thread.hpp:223: undefined reference to `boost::thread::start_thread()'
obj/net.o: In function `thread<boost::_bi::bind_t<void, void (*)(const char*, void (*)(), long long int), boost::_bi::list3<boost::_bi::value<const char*>, boost::_bi::value<void (*)()>, boost::_bi::v
alue<int> > > >':
c:/deps/boost_1_52_0/boost/thread/detail/thread.hpp:223: undefined reference to `boost::thread::start_thread()'
obj/net.o: In function `thread<boost::_bi::bind_t<void, void (*)(const char*, void (*)()), boost::_bi::list2<boost::_bi::value<const char*>, boost::_bi::value<void (*)()> > > >':
c:/deps/boost_1_52_0/boost/thread/detail/thread.hpp:223: undefined reference to `boost::thread::start_thread()'
obj/bitcoinrpc.o: In function `ZN5boost12thread_group8join_allEv':
c:/deps/boost_1_52_0/boost/thread/detail/thread_group.hpp:74: undefined reference to `boost::thread::join()'
obj/bitcoinrpc.o: In function `thread<boost::_bi::bind_t<unsigned int, boost::_mfi::mf0<unsigned int, boost::asio::io_service>, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > >':
c:/deps/boost_1_52_0/boost/thread/detail/thread.hpp:223: undefined reference to `boost::thread::start_thread()'
collect2: ld returned 1 exit status
mingw32-make: *** [bitcoind.exe] Error 1
old c coder
Sr. Member
****
Offline Offline

Activity: 260
Merit: 251



View Profile WWW
July 13, 2013, 04:09:26 PM
 #82

Ok, I think I have it looking in the right places but I am now getting this error, anyone have any ideas please?

C:\bitcoin\bitcoin-master\src>mingw32-make -f makefile.mingw
g++ -mthreads -O2 -w -Wall -Wextra -Wformat -Wformat-security -Wno-unused-parameter -g -DWIN32 -D_WINDOWS -DBOOST_THREAD_USE_LIB -DBOOST_SPIRIT_THREADSAFE -DUSE_IPV6=1 -IC:/bitcoin/bitcoin-master/src/
leveldb/include -IC:/bitcoin/bitcoin-master/src/leveldb/helpers -I"C:/bitcoin/bitcoin-master/src" -I"c:/deps/boost_1_54_0" -I"c:/deps/db-4.8.30.NC/build_unix" -I"c:/deps/openssl-1.0.1e/include" -Wl,--
dynamicbase -Wl,--nxcompat -Wl,--large-address-aware -o bitcoind.exe -L"C:/bitcoin/bitcoin-master/src/leveldb" -L"C:\deps\boost_1_54_0\stage\lib" -L"c:/deps/db-4.8.30.NC/build_unix" -L"c:/deps/openssl
-1.0.1e" leveldb/libleveldb.a obj/alert.o obj/version.o obj/checkpoints.o obj/netbase.o obj/addrman.o obj/crypter.o obj/key.o obj/db.o obj/init.o obj/bitcoind.o obj/keystore.o obj/core.o obj/main.o ob
j/net.o obj/protocol.o obj/bitcoinrpc.o obj/rpcdump.o obj/rpcnet.o obj/rpcmining.o obj/rpcwallet.o obj/rpcblockchain.o obj/rpcrawtransaction.o obj/script.o obj/sync.o obj/util.o obj/wallet.o obj/walle
tdb.o obj/hash.o obj/bloom.o obj/noui.o obj/leveldb.o obj/txdb.o obj/chainparams.o -l leveldb -l memenv -l boost_system-mgw46-mt-sd-1_54 -l boost_filesystem-mgw46-mt-sd-1_54 -l boost_program_options-m
gw46-mt-sd-1_54 -l boost_thread-mgw46-mt-sd-1_54 -l boost_chrono-mgw46-mt-sd-1_54 -l db_cxx -l ssl -l crypto -l kernel32 -l user32 -l gdi32 -l comdlg32 -l winspool -l winmm -l shell32 -l comctl32 -l o
le32 -l oleaut32 -l uuid -l rpcrt4 -l advapi32 -l ws2_32 -l mswsock -l shlwapi
obj/alert.o: In function `thread<void (*)(std::basic_string<char>), std::basic_string<char> >':
c:/deps/boost_1_52_0/boost/thread/detail/thread.hpp:279: undefined reference to `boost::thread::start_thread()'
obj/init.o: In function `thread<boost::_bi::bind_t<void, void (*)(const std::basic_string<char>&), boost::_bi::list1<boost::reference_wrapper<std::basic_string<char> > > > >':
c:/deps/boost_1_52_0/boost/thread/detail/thread.hpp:223: undefined reference to `boost::thread::start_thread()'
obj/init.o: In function `thread<void (*)()>':
c:/deps/boost_1_52_0/boost/thread/detail/thread.hpp:223: undefined reference to `boost::thread::start_thread()'
obj/init.o: In function `thread<boost::_bi::bind_t<void, void (*)(std::vector<boost::filesystem::path>), boost::_bi::list1<boost::_bi::value<std::vector<boost::filesystem::path> > > > >':
c:/deps/boost_1_52_0/boost/thread/detail/thread.hpp:223: undefined reference to `boost::thread::start_thread()'
obj/bitcoind.o: In function `thread<boost::_bi::bind_t<void, void (*)(boost::thread_group*), boost::_bi::list1<boost::_bi::value<boost::thread_group*> > > >':
c:/deps/boost_1_52_0/boost/thread/detail/thread.hpp:223: undefined reference to `boost::thread::start_thread()'
obj/bitcoind.o: In function `Z7AppInitiPPc':
C:\bitcoin\bitcoin-master\src/bitcoind.cpp:117: undefined reference to `boost::thread::join()'
obj/main.o: In function `thread<boost::_bi::bind_t<void, void (*)(CWallet*), boost::_bi::list1<boost::_bi::value<CWallet*> > > >':
c:/deps/boost_1_52_0/boost/thread/detail/thread.hpp:223: undefined reference to `boost::thread::start_thread()'
obj/net.o: In function `thread<boost::_bi::bind_t<void, void (*)(const char*, void (*)()), boost::_bi::list2<boost::_bi::value<const char*>, boost::_bi::value<void (*)()> > > >':
c:/deps/boost_1_52_0/boost/thread/detail/thread.hpp:223: undefined reference to `boost::thread::start_thread()'
obj/net.o: In function `thread<boost::_bi::bind_t<void, void (*)(const char*, void (*)(), long long int), boost::_bi::list3<boost::_bi::value<const char*>, boost::_bi::value<void (*)()>, boost::_bi::v
alue<int> > > >':
c:/deps/boost_1_52_0/boost/thread/detail/thread.hpp:223: undefined reference to `boost::thread::start_thread()'
obj/net.o: In function `thread<boost::_bi::bind_t<void, void (*)(const char*, void (*)()), boost::_bi::list2<boost::_bi::value<const char*>, boost::_bi::value<void (*)()> > > >':
c:/deps/boost_1_52_0/boost/thread/detail/thread.hpp:223: undefined reference to `boost::thread::start_thread()'
obj/bitcoinrpc.o: In function `ZN5boost12thread_group8join_allEv':
c:/deps/boost_1_52_0/boost/thread/detail/thread_group.hpp:74: undefined reference to `boost::thread::join()'
obj/bitcoinrpc.o: In function `thread<boost::_bi::bind_t<unsigned int, boost::_mfi::mf0<unsigned int, boost::asio::io_service>, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > >':
c:/deps/boost_1_52_0/boost/thread/detail/thread.hpp:223: undefined reference to `boost::thread::start_thread()'
collect2: ld returned 1 exit status
mingw32-make: *** [bitcoind.exe] Error 1

I am seeing the compiler (G++) looking for both boost 1_52_0 and 1_54_0 code in the above screen capture!

Nitrogenetics gave in his step 2.3 a download of boost 1_53_0

Now you are showing gcc (g++) being aimed at both boost 1_52_0 and boost 1_54_0! So how did they get into your system? Or are they there at all? Maybe you didn't fully "appreciate" his step 3.2, where you must tailor makefile.mingw to your configuration. Note the BOOST_SUFFIX?=... in your makefile.mingw

Me, I'm all boost 1_53_0 Grin

It is not enough that you follow nitrogenetics "recipe". You must understand what is being accomplished and how you must tailor it to your hard drive and system requirements.

One of my makefile.mingw files looks like this in that area:
#DEPSDIR?=/usr/local
#BOOST_SUFFIX?=-mgw46-mt-sd-1_52
BOOST_SUFFIX?=-mgw46-mt-sd-1_53

# -I"$(DEPSDIR)/include"
# -I"c:/boost_1_53_0/boost/test/included" \
# maybe -I"c:/boost_1_53_0/boost/test" \

INCLUDEPATHS= \
 -I"$(CURDIR)" \
 -I"c:/boost_1_53_0" \
 -I"c:/db-4.8.30.NC/build_unix" \
 -I"c:/openssl-1.0.1c/include"

# -L"$(DEPSDIR)/lib"
# -L"c:/boost_1_53_0"

LIBPATHS= \
 -L"$(CURDIR)/leveldb" \
 -L"c:/boost_1_53_0/stage/lib" \
 -L"c:/db-4.8.30.NC/build_unix" \
 -L"c:/openssl-1.0.1c"

LIBS= \
 -l leveldb \
 -l memenv \
 -l boost_system$(BOOST_SUFFIX) \
 -l boost_filesystem$(BOOST_SUFFIX) \
 -l boost_program_options$(BOOST_SUFFIX) \
 -l boost_thread$(BOOST_SUFFIX) \
 -l boost_chrono$(BOOST_SUFFIX) \
 -l db_cxx \
 -l ssl \
 -l crypto

I don't have one "dependencies" directory. I have branches for various versions of boost, openssl, BerkeleyDB.

I just swap a line or two when I want to try something. Actually I just changed one line in the INCLUDEPATHS and one line in the LIBPATHS to go from openssl-1.0.1c to openssl-1.0.1e and everything works fine. This is for bitcoind.exe

Now how about a few Satoshis Wink

Ron


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

Activity: 924
Merit: 1005


Product Marketing & Promotion / Software Developer


View Profile
July 13, 2013, 05:13:42 PM
 #83

Ok, I think I have it looking in the right places but I am now getting this error, anyone have any ideas please?

C:\bitcoin\bitcoin-master\src>mingw32-make -f makefile.mingw
g++ -mthreads -O2 -w -Wall -Wextra -Wformat -Wformat-security -Wno-unused-parameter -g -DWIN32 -D_WINDOWS -DBOOST_THREAD_USE_LIB -DBOOST_SPIRIT_THREADSAFE -DUSE_IPV6=1 -IC:/bitcoin/bitcoin-master/src/
leveldb/include -IC:/bitcoin/bitcoin-master/src/leveldb/helpers -I"C:/bitcoin/bitcoin-master/src" -I"c:/deps/boost_1_54_0" -I"c:/deps/db-4.8.30.NC/build_unix" -I"c:/deps/openssl-1.0.1e/include" -Wl,--
dynamicbase -Wl,--nxcompat -Wl,--large-address-aware -o bitcoind.exe -L"C:/bitcoin/bitcoin-master/src/leveldb" -L"C:\deps\boost_1_54_0\stage\lib" -L"c:/deps/db-4.8.30.NC/build_unix" -L"c:/deps/openssl
-1.0.1e" leveldb/libleveldb.a obj/alert.o obj/version.o obj/checkpoints.o obj/netbase.o obj/addrman.o obj/crypter.o obj/key.o obj/db.o obj/init.o obj/bitcoind.o obj/keystore.o obj/core.o obj/main.o ob
j/net.o obj/protocol.o obj/bitcoinrpc.o obj/rpcdump.o obj/rpcnet.o obj/rpcmining.o obj/rpcwallet.o obj/rpcblockchain.o obj/rpcrawtransaction.o obj/script.o obj/sync.o obj/util.o obj/wallet.o obj/walle
tdb.o obj/hash.o obj/bloom.o obj/noui.o obj/leveldb.o obj/txdb.o obj/chainparams.o -l leveldb -l memenv -l boost_system-mgw46-mt-sd-1_54 -l boost_filesystem-mgw46-mt-sd-1_54 -l boost_program_options-m
gw46-mt-sd-1_54 -l boost_thread-mgw46-mt-sd-1_54 -l boost_chrono-mgw46-mt-sd-1_54 -l db_cxx -l ssl -l crypto -l kernel32 -l user32 -l gdi32 -l comdlg32 -l winspool -l winmm -l shell32 -l comctl32 -l o
le32 -l oleaut32 -l uuid -l rpcrt4 -l advapi32 -l ws2_32 -l mswsock -l shlwapi
obj/alert.o: In function `thread<void (*)(std::basic_string<char>), std::basic_string<char> >':
c:/deps/boost_1_52_0/boost/thread/detail/thread.hpp:279: undefined reference to `boost::thread::start_thread()'
obj/init.o: In function `thread<boost::_bi::bind_t<void, void (*)(const std::basic_string<char>&), boost::_bi::list1<boost::reference_wrapper<std::basic_string<char> > > > >':
c:/deps/boost_1_52_0/boost/thread/detail/thread.hpp:223: undefined reference to `boost::thread::start_thread()'
obj/init.o: In function `thread<void (*)()>':
c:/deps/boost_1_52_0/boost/thread/detail/thread.hpp:223: undefined reference to `boost::thread::start_thread()'
obj/init.o: In function `thread<boost::_bi::bind_t<void, void (*)(std::vector<boost::filesystem::path>), boost::_bi::list1<boost::_bi::value<std::vector<boost::filesystem::path> > > > >':
c:/deps/boost_1_52_0/boost/thread/detail/thread.hpp:223: undefined reference to `boost::thread::start_thread()'
obj/bitcoind.o: In function `thread<boost::_bi::bind_t<void, void (*)(boost::thread_group*), boost::_bi::list1<boost::_bi::value<boost::thread_group*> > > >':
c:/deps/boost_1_52_0/boost/thread/detail/thread.hpp:223: undefined reference to `boost::thread::start_thread()'
obj/bitcoind.o: In function `Z7AppInitiPPc':
C:\bitcoin\bitcoin-master\src/bitcoind.cpp:117: undefined reference to `boost::thread::join()'
obj/main.o: In function `thread<boost::_bi::bind_t<void, void (*)(CWallet*), boost::_bi::list1<boost::_bi::value<CWallet*> > > >':
c:/deps/boost_1_52_0/boost/thread/detail/thread.hpp:223: undefined reference to `boost::thread::start_thread()'
obj/net.o: In function `thread<boost::_bi::bind_t<void, void (*)(const char*, void (*)()), boost::_bi::list2<boost::_bi::value<const char*>, boost::_bi::value<void (*)()> > > >':
c:/deps/boost_1_52_0/boost/thread/detail/thread.hpp:223: undefined reference to `boost::thread::start_thread()'
obj/net.o: In function `thread<boost::_bi::bind_t<void, void (*)(const char*, void (*)(), long long int), boost::_bi::list3<boost::_bi::value<const char*>, boost::_bi::value<void (*)()>, boost::_bi::v
alue<int> > > >':
c:/deps/boost_1_52_0/boost/thread/detail/thread.hpp:223: undefined reference to `boost::thread::start_thread()'
obj/net.o: In function `thread<boost::_bi::bind_t<void, void (*)(const char*, void (*)()), boost::_bi::list2<boost::_bi::value<const char*>, boost::_bi::value<void (*)()> > > >':
c:/deps/boost_1_52_0/boost/thread/detail/thread.hpp:223: undefined reference to `boost::thread::start_thread()'
obj/bitcoinrpc.o: In function `ZN5boost12thread_group8join_allEv':
c:/deps/boost_1_52_0/boost/thread/detail/thread_group.hpp:74: undefined reference to `boost::thread::join()'
obj/bitcoinrpc.o: In function `thread<boost::_bi::bind_t<unsigned int, boost::_mfi::mf0<unsigned int, boost::asio::io_service>, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > >':
c:/deps/boost_1_52_0/boost/thread/detail/thread.hpp:223: undefined reference to `boost::thread::start_thread()'
collect2: ld returned 1 exit status
mingw32-make: *** [bitcoind.exe] Error 1

I am seeing the compiler (G++) looking for both boost 1_52_0 and 1_54_0 code in the above screen capture!

Nitrogenetics gave in his step 2.3 a download of boost 1_53_0

Now you are showing gcc (g++) being aimed at both boost 1_52_0 and boost 1_54_0! So how did they get into your system? Or are they there at all? Maybe you didn't fully "appreciate" his step 3.2, where you must tailor makefile.mingw to your configuration. Note the BOOST_SUFFIX?=... in your makefile.mingw

Me, I'm all boost 1_53_0 Grin

It is not enough that you follow nitrogenetics "recipe". You must understand what is being accomplished and how you must tailor it to your hard drive and system requirements.

One of my makefile.mingw files looks like this in that area:
#DEPSDIR?=/usr/local
#BOOST_SUFFIX?=-mgw46-mt-sd-1_52
BOOST_SUFFIX?=-mgw46-mt-sd-1_53

# -I"$(DEPSDIR)/include"
# -I"c:/boost_1_53_0/boost/test/included" \
# maybe -I"c:/boost_1_53_0/boost/test" \

INCLUDEPATHS= \
 -I"$(CURDIR)" \
 -I"c:/boost_1_53_0" \
 -I"c:/db-4.8.30.NC/build_unix" \
 -I"c:/openssl-1.0.1c/include"

# -L"$(DEPSDIR)/lib"
# -L"c:/boost_1_53_0"

LIBPATHS= \
 -L"$(CURDIR)/leveldb" \
 -L"c:/boost_1_53_0/stage/lib" \
 -L"c:/db-4.8.30.NC/build_unix" \
 -L"c:/openssl-1.0.1c"

LIBS= \
 -l leveldb \
 -l memenv \
 -l boost_system$(BOOST_SUFFIX) \
 -l boost_filesystem$(BOOST_SUFFIX) \
 -l boost_program_options$(BOOST_SUFFIX) \
 -l boost_thread$(BOOST_SUFFIX) \
 -l boost_chrono$(BOOST_SUFFIX) \
 -l db_cxx \
 -l ssl \
 -l crypto

I don't have one "dependencies" directory. I have branches for various versions of boost, openssl, BerkeleyDB.

I just swap a line or two when I want to try something. Actually I just changed one line in the INCLUDEPATHS and one line in the LIBPATHS to go from openssl-1.0.1c to openssl-1.0.1e and everything works fine. This is for bitcoind.exe

Now how about a few Satoshis Wink

Ron

I am thinking that I delete everything and start from scratch? Think that might be a good idea? And you are right, I did the first attempt with 1.52 and the next with 1.54 it has been a while since I compiled Bitcoin, a long while.
old c coder
Sr. Member
****
Offline Offline

Activity: 260
Merit: 251



View Profile WWW
July 13, 2013, 05:51:41 PM
 #84

 Grin
....
I am thinking that I delete everything and start from scratch? Think that might be a good idea? And you are right, I did the first attempt with 1.52 and the next with 1.54 it has been a while since I compiled Bitcoin, a long while.

Wait until you want to compile bitcoin-qt! Grin It's really not that bad.

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: 251



View Profile WWW
July 13, 2013, 06:35:58 PM
 #85

Are there any successful windows users out there (here) that compile on windows, for windows, bitcoind & bitcoin-qt? Am I the only one in the universe Huh

I sure would like to get a windows "gang" together, in a new thread perhaps, discussing and creating an .sln for free VC++ Express 2005 (which then could be easily "upped" to 2008, 2010, 2012).

I do use the free Qt creator, but it seems "bloated" and slow (I do have other stuff running.) and I'm not really familiar with it. I know that there are "hooks" to get one from Qt creator to VS 2008 (?) and VS 2010. But those products (Visual Studios) are not free...

The Qt windows app bitcoin-qt.exe, seems lacking in some respects. I offered a splash screen mod,
https://github.com/old-c-coder/bitcoin-git/commit/289d78d6aaf3ea4bbafd681b96cd8029b3b3b30d
but so far no comments. Maybe I am alone in the windows world? Undecided

But let me say that the bitcoin-qt interface of buttons, dialog boxes, tool tips, etc. are easily "snapped/wired" up in VC++ Express. It's just the "meat" behind that is needed.

And there seems to be windows only ways to build BerkeleyDB, openssl and boost. What seems hard is the windows build for levelDB. At least that is my reading, i.e. steps 3.0 & 3.1 for leveldb in windows.

Other than myriad details of "cooking" all the syntactic sugar/salt/saccharin of C++ from G++(Linux) into CL(MS) and how to test, that's all I see in the way (famous last words).

Ron


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

Activity: 924
Merit: 1005


Product Marketing & Promotion / Software Developer


View Profile
July 13, 2013, 10:49:42 PM
 #86

I have managed to do it.

I just started again but this time turned off the music and concentrated lol.
CaptChadd
Hero Member
*****
Offline Offline

Activity: 924
Merit: 1005


Product Marketing & Promotion / Software Developer


View Profile
July 13, 2013, 11:43:20 PM
 #87

New one now and this is compiling with QT 4.8.5 the very final step and I get this error:

C:\bitcoin\bitcoin-master>mingw32-make -f Makefile.Release
cd C:/bitcoin/bitcoin-master/src/leveldb && CC=gcc CXX=g++ TARGET_OS=OS_WINDOWS_
CROSSCOMPILE mingw32-make OPT="-pipe -D_FORTIFY_SOURCE=2 -O2" libleveldb.a libme
menv.a && ranlib C:/bitcoin/bitcoin-master/src/leveldb/libleveldb.a && ranlib C:
/bitcoin/bitcoin-master/src/leveldb/libmemenv.a
CC: error: =gcc: No such file or directory
CC: error: CXX=g++: No such file or directory
CC: error: TARGET_OS=OS_WINDOWS_CROSSCOMPILE: No such file or directory
CC: error: mingw32-make: No such file or directory
CC: error: OPT=-pipe -D_FORTIFY_SOURCE=2 -O2: No such file or directory
mingw32-make: *** [c:/bitcoin/bitcoin-master/src/leveldb/libleveldb.a] Error 1

I have search all over the place and tried some things that I can remember from back in the day but nothing solves this problem.

Can anyone help at all?
old c coder
Sr. Member
****
Offline Offline

Activity: 260
Merit: 251



View Profile WWW
July 14, 2013, 03:50:12 AM
 #88

I remember having trouble finding a Qt 4.8.5, and so I have been using Qt 4.8.4 successfully. Again, did you add MinGW to your path, i.e. see step 1.3? SInce it can't find g++

Ron


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

Activity: 924
Merit: 1005


Product Marketing & Promotion / Software Developer


View Profile
July 14, 2013, 09:01:03 AM
 #89

Thanks again.

That do I do about the other errors. The OS error and the others?
nitrogenetics (OP)
Full Member
***
Offline Offline

Activity: 131
Merit: 108



View Profile
July 14, 2013, 10:02:51 AM
 #90

New one now and this is compiling with QT 4.8.5 the very final step and I get this error:

C:\bitcoin\bitcoin-master>mingw32-make -f Makefile.Release
cd C:/bitcoin/bitcoin-master/src/leveldb && CC=gcc CXX=g++ TARGET_OS=OS_WINDOWS_
CROSSCOMPILE mingw32-make OPT="-pipe -D_FORTIFY_SOURCE=2 -O2" libleveldb.a libme
menv.a && ranlib C:/bitcoin/bitcoin-master/src/leveldb/libleveldb.a && ranlib C:
/bitcoin/bitcoin-master/src/leveldb/libmemenv.a
CC: error: =gcc: No such file or directory
CC: error: CXX=g++: No such file or directory
CC: error: TARGET_OS=OS_WINDOWS_CROSSCOMPILE: No such file or directory
CC: error: mingw32-make: No such file or directory
CC: error: OPT=-pipe -D_FORTIFY_SOURCE=2 -O2: No such file or directory
mingw32-make: *** [c:/bitcoin/bitcoin-master/src/leveldb/libleveldb.a] Error 1

I have search all over the place and tried some things that I can remember from back in the day but nothing solves this problem.

Can anyone help at all?

It fails trying to build leveldb. Build leveldb as per step 3.1 and make sure you strip genleveldb.commands for win32 from bitcoin-qt.pro (see step 4.2).

BTC: 1NWQ4TarCCC7j1XY26KRFFEtLYbPP6S3DH
XRP: rJkbeyRaUYDmcukEyLYVfn56QDM9VhybZG
CaptChadd
Hero Member
*****
Offline Offline

Activity: 924
Merit: 1005


Product Marketing & Promotion / Software Developer


View Profile
July 14, 2013, 10:18:50 AM
 #91

Ok I did step 4.2 again and now I get a repeating loop looking like it is not happy with boost or something:

..\..\deps\boost_1_54_0/boost/thread/win32/shared_mutex.hpp:52:99: warning:
ferencing type-punned pointer will break strict-aliasing rules [-Wstrict-al

Any ideas?

Thanks for the help so far.
CaptChadd
Hero Member
*****
Offline Offline

Activity: 924
Merit: 1005


Product Marketing & Promotion / Software Developer


View Profile
July 14, 2013, 10:36:41 AM
 #92

Ok sorted that and now just this one error right at the end:

c:/mingw/bin/../lib/gcc/mingw32/4.6.2/../../../../mingw32/bin/ld.exe: cannot find -lminiupnpc
collect2: ld returned 1 exit status
mingw32-make: *** [release\Bitcoin-QT.exe] Error 1

Forget this last, I managed to do it.

At last lol.
Diapolo
Hero Member
*****
Offline Offline

Activity: 772
Merit: 500



View Profile WWW
July 14, 2013, 11:23:52 AM
 #93

Just a small comment or question, I always used MinGW 4.7.2 (way before you've written this guide) and have now switched to 4.8.1 even and everything is still working fine. So why do you suggest MinGW 4.6? Also I'm using Qt 5.1 currently, which needs MinGW 4.8.1 to successfully compile Qt.

For building LevelDB I use this syntax in MinGW Shell:
cd /c/Users/Diapolo/bitcoin.Qt/src/leveldb
TARGET_OS=NATIVE_WINDOWS make libleveldb.a libmemenv.a

to clean old files before re-building:
TARGET_OS=NATIVE_WINDOWS make clean

Dia

Liked my former work for Bitcoin Core? Drop me a donation via:
1PwnvixzVAKnAqp8LCV8iuv7ohzX2pbn5x
bitcoin:1PwnvixzVAKnAqp8LCV8iuv7ohzX2pbn5x?label=Diapolo
CaptChadd
Hero Member
*****
Offline Offline

Activity: 924
Merit: 1005


Product Marketing & Promotion / Software Developer


View Profile
July 14, 2013, 11:29:26 AM
 #94

Well I got it working, just slipped the mingw dll in there. The client does show up with writing on it saying this is a test build, is that a built in safety measure? I am guessing so.
Diapolo
Hero Member
*****
Offline Offline

Activity: 772
Merit: 500



View Profile WWW
July 14, 2013, 11:32:09 AM
 #95

Well I got it working, just slipped the mingw dll in there. The client does show up with writing on it saying this is a test build, is that a built in safety measure? I am guessing so.

Take a look in clientversion.h @ #define CLIENT_VERSION_IS_RELEASE  false

Dia

Liked my former work for Bitcoin Core? Drop me a donation via:
1PwnvixzVAKnAqp8LCV8iuv7ohzX2pbn5x
bitcoin:1PwnvixzVAKnAqp8LCV8iuv7ohzX2pbn5x?label=Diapolo
nitrogenetics (OP)
Full Member
***
Offline Offline

Activity: 131
Merit: 108



View Profile
July 14, 2013, 12:34:21 PM
 #96

Just a small comment or question, I always used MinGW 4.7.2 (way before you've written this guide) and have now switched to 4.8.1 even and everything is still working fine. So why do you suggest MinGW 4.6? Also I'm using Qt 5.1 currently, which needs MinGW 4.8.1 to successfully compile Qt.

I tried upgrading gcc/g++ using mingw-get, but when using versions other than 4.6.2 the compiled executable crashes immediately upon startup. Need to investigate more on this.

For building LevelDB I use this syntax in MinGW Shell:
cd /c/Users/Diapolo/bitcoin.Qt/src/leveldb
TARGET_OS=NATIVE_WINDOWS make libleveldb.a libmemenv.a

to clean old files before re-building:
TARGET_OS=NATIVE_WINDOWS make clean

Dia

Yes, it makes more sense, for some reason I used the TARGET_OS from bitcoin-qt.pro instead of the one in makefike.migw.
However, you can see the output binaries are the same (except for some timestamps), so I don't think using OS_WINDOWS_CROSSCOMPILE causes any problems  Wink

BTC: 1NWQ4TarCCC7j1XY26KRFFEtLYbPP6S3DH
XRP: rJkbeyRaUYDmcukEyLYVfn56QDM9VhybZG
Diapolo
Hero Member
*****
Offline Offline

Activity: 772
Merit: 500



View Profile WWW
July 14, 2013, 12:38:30 PM
 #97

Just a small comment or question, I always used MinGW 4.7.2 (way before you've written this guide) and have now switched to 4.8.1 even and everything is still working fine. So why do you suggest MinGW 4.6? Also I'm using Qt 5.1 currently, which needs MinGW 4.8.1 to successfully compile Qt.

I tried upgrading gcc/g++ using mingw-get, but when using versions other than 4.6.2 the compiled executable crashes immediately upon startup. Need to investigate more on this.

I'm sure you know you need to re-build ALL dependency libs when upgrading your compiler?

Dia

Liked my former work for Bitcoin Core? Drop me a donation via:
1PwnvixzVAKnAqp8LCV8iuv7ohzX2pbn5x
bitcoin:1PwnvixzVAKnAqp8LCV8iuv7ohzX2pbn5x?label=Diapolo
nitrogenetics (OP)
Full Member
***
Offline Offline

Activity: 131
Merit: 108



View Profile
July 14, 2013, 12:55:28 PM
 #98

Of course  Wink

BTC: 1NWQ4TarCCC7j1XY26KRFFEtLYbPP6S3DH
XRP: rJkbeyRaUYDmcukEyLYVfn56QDM9VhybZG
CaptChadd
Hero Member
*****
Offline Offline

Activity: 924
Merit: 1005


Product Marketing & Promotion / Software Developer


View Profile
July 14, 2013, 01:25:40 PM
 #99

Well I got it working, just slipped the mingw dll in there. The client does show up with writing on it saying this is a test build, is that a built in safety measure? I am guessing so.

Take a look in clientversion.h @ #define CLIENT_VERSION_IS_RELEASE  false

Dia

I have already tried this and it would not compile, just threw up errors.
CaptChadd
Hero Member
*****
Offline Offline

Activity: 924
Merit: 1005


Product Marketing & Promotion / Software Developer


View Profile
July 14, 2013, 01:42:13 PM
 #100

It seems that if i make and save a change like that and then compile the qt it throws up and error and even changing it back to what it was and trying a compile again throws up the same error and will not compile.

Only starting from a backed up Bitcoin master folder before the change actually compiles.

I can change things like the name and such in the .pro and it compiles but it does not like me editing that particular one, unless I am missing something?
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 ... 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!