Did you set --with-qt-plugindir when configuring?
|
|
|
Hi,
i was able to compile the latest Bitcoin source release.
Now i am trying to compile the latest litecoin version,but there seems to be sth different.
After running the "sh ../dist/configure --enable-mingw --enable-cxx" command, i am gettint that error msg.
Any idea what i am doing wrong?
Anyone who could assist me please? ![Smiley](https://bitcointalk.org/Smileys/default/smiley.gif) Did you try configuring with --disable-replication ? (see first post) How am i supposed to do the "downloaded boost jam 3.1.18"? Where do i put them?
You don't need to download jam to build boost, just run bootsrap then b2. (See first post)
|
|
|
error in your wording!! also make sure that mysys-gcc and mysys-w32api ARE installed. not not installed otherwise gcc - v errors out
Using mingw included toolchain will not work so you should make sure not to install it. if anyone knows of a good linux tut could you post it please.
Gitian is the easiest way to cross compile it on linux. You can see what is going on behind the scenes by having a look at gitian descriptors: https://github.com/bitcoin/bitcoin/tree/master/contrib/gitian-descriptors
|
|
|
/libmemenv.a: error adding symbols: Archive has no index; run ranlib to add one What coin/version are you trying to compile?
|
|
|
Right click on "Computer"->"Properties" or open system from control panel: ![](https://ip.bitcointalk.org/?u=http%3A%2F%2Fwww.faqforge.com%2Fwp-content%2Fuploads%2F2012%2F01%2Fpath.png&t=663&c=zjcMiuP0DdLkvw)
|
|
|
C:/mingw32/i686-w64-mingw32/include/pthread.h:196:19: error: 'pthread_t' has a p revious declaration as 'typedef uintptr_t pthread_t' typedef uintptr_t pthread_t; ^ src/util.h:578:12: error: invalid conversion from 'HANDLE {aka void*}' to 'pthre ad_t {aka unsigned int}' [-fpermissive] return hthread; ^ src/util.h:555:16: error: conflicting declaration 'typedef void* pthread_t' typedef HANDLE pthread_t; See: https://github.com/laanwj/bitcoin/commit/61d85071405b99c3734606eed31ea8f615c0c77a
|
|
|
configure: error: in `/c/deps/qrencode-3.4.3': configure: error: The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config.
Alternatively, you may set the environment variables png_CFLAGS and png_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details.
To get pkg-config, see <http://pkg-config.freedesktop.org/>. See `config.log' for more details
(Computername)@(Computername) /c/deps/qrencode-3.4.3 $ make make: *** No targets specified and no makefile found. Stop.
Any ideas? Make sure png_CFLAGS and png_LIBS are set correctly. Nitro everytime I try to compile HoboNickels I get a non functioning executable. The HBN dev says that he hasn't been able to make a functioning 64 bit exe and therefore does not compile with mingw. Did the exe actually work for you?
32bit qt executable seems to be working fine. So again, thanks for this post Nitro and nice to see your keeping it updated. As for my questions for you or anyone who has the knowledge. basically. What now? ![Smiley](https://bitcointalk.org/Smileys/default/smiley.gif) Ofc now i wanna make other wallets. Let's say, doge and or feathercoin wallets. Read enough to know that cant repeat what ive learned. But how do i go about doing that? (no need for details, i dont mind doing the work and learning in the (frustrating process) But if you could point me in the right direction that would be great. Glad it helped ![Wink](https://bitcointalk.org/Smileys/default/wink.gif) Compiling most of the alt coins is pretty much the same, depending on the version some may need some patching. Others will need additional dependancies (gmp, mpfr, etc..)
|
|
|
Hmmmm I used to have a working lpng but now when rebuilding the libs with correct gcc I am getting this during qrencode build: qrenc.c: In function 'writeANSI': qrenc.c:585:3: warning: implicit declaration of function 'bzero' [-Wimplicit-function-declaration] bzero( buffer, buffer_s ); ^ qrenc.c:585:3: warning: incompatible implicit declaration of built-in function 'bzero' [enabled by default]
I also tried building with libpng-1.6.9 but it has the same error. Any suggestions? Configuring with --without-tools will get rid of the error, libqrencode will compile fine anyway.
|
|
|
@Nitro After what me and Ron came through, perhaps it is a good idea to expend your post to include the following import pointers: * Make sure that your MSYS bin directory precedes any other Windows system directory, like c:\Windows\System32 (this is necessary if you want to use the Unix find and not the Windows variant). * The WSAPOLLFD structure bug in MinGW (not really bug, it is just missing) * UnregisterWaitEx() problems when not setting _WIN32_WINNT (also look for a reference to the two above here: http://stackoverflow.com/questions/20957727/boostasio-unregisterwaitex-has-not-been-declared) Also, Ron mentioned that makefile.mingw is not longer used and there are more problems (Perl is unnecessary and so is Python too I believe, although I'm not sure about Python). It would also be nice if you explain a bit about the inner workings of the building process (i.e. why this utility or command), because as it is now it is sending a wrong message to people. I don't only want to know what to do, but also why to do it. Don't get me wrong, I really appreciate this post and I think it is very useful, but it can be made so much better. (we could work together a bit and also update the build_msw file, should be much more accessible than this forum thread) Jori. Msys bin folder should automagically get precedence in path when running msys (no need to add it manually to windows environment variables): $ which find /bin/find.exe WSAPOLLFD and UnregisterWaitEx() issues appear only when using MinGW default toolchain, this is one of the reasons I stress on using mingw-builds. makefile.mingw was used in pre v0.9 versions, a lot of altcoins are still based on older versions, so I think it is useful not to remove 0.8.6 notes (yet). Perl and python were remnants and have been removed (you still need perl when configuring openssl, but msys-perl gets installed with msys-base). I agree I could have been a bit less cryptic, but this can be improved ![Wink](https://bitcointalk.org/Smileys/default/wink.gif) Yep you are right, my db did not build correctly. I had the wrong version of gcc
Anyways, this thread has been very helpful for me, thanks! I'll be sending a btc tip your way.
Thanks for the tip ![Wink](https://bitcointalk.org/Smileys/default/wink.gif)
|
|
|
Also it is worth mentioning that the instructions to build boost on this thread caused troubles later on - I had to go back and build boost and add --with-regex
Bitcoin doesn't need Boost.Regex, HoboNickels does. Berkely database did not come with libdb_cxx.a
When configured and compiled correctly you will have both libdb.a and libdb_cxx.a, try cleaning and compiling again. HoboNickels seems to compile just fine on my build system.
|
|
|
Have a look at your png_CFLAGS: -I../libgpng-1.6.9/.libs
|
|
|
... I find out that actually there are a lot of them (batch files) with the "wrong" end-of-line encoding, in some it does not cause any problem, but in some it does (depending on parsing engine), so if you have those files the best course of action is to search for and open all of them (*.bat) in something like NotePad++ and convert all the end-of-line to windows style and save all the files. This should fix some if not all of the problems peps are having while compiling boost on windows.
Boost tarballs contain unix EOL encoded files, the easyest way is to use either the zip or the 7z archive containing windows EOL files. So either a conversion from Unix LF to Windows CR+LF on those files is needed, or just use mingw to compile it using "$ make -f Makefile.mingw init upnpc-static" from msys instead of Windows command prompt.
Miniupnpc compiles fine from both msys and cmd producing identical binaries, so it's just a matter of preference which one you compile from. About this part... actually there is already a directive in the makefile.mingw that does exactly that... from msys while in the bitcoin src directory, call: make -f makefile.mingw leveldb/libleveldb.a Yes, this is a remnant from older versions, it probably makes more sense compiling bitcoind from msys instead of building leveldb from msys then bitcoind from cmd ![Wink](https://bitcointalk.org/Smileys/default/wink.gif)
|
|
|
In file included from src\/compat.h:17:0, from src\/netbase.h:11, from src\/net.h:19, from src\rpcnet.cpp:6: c:\mingw\bin\../lib/gcc/mingw32/4.6.2/../../../../include/ws2tcpip.h:147:8: erro r: redefinition of 'struct ip_mreq' c:\mingw\bin\../lib/gcc/mingw32/4.6.2/../../../../include/winsock.h:315:8: error : previous definition of 'struct ip_mreq' c:\mingw\bin\../lib/gcc/mingw32/4.6.2/../../../../include/ws2tcpip.h:390:13: err or: expected initializer before 'freeaddrinfo' c:\mingw\bin\../lib/gcc/mingw32/4.6.2/../../../../include/ws2tcpip.h:391:12: err or: expected initializer before 'getaddrinfo' c:\mingw\bin\../lib/gcc/mingw32/4.6.2/../../../../include/ws2tcpip.h:393:12: err or: expected initializer before 'getnameinfo' In file included from src\/cryptopp/pubkey.h:35:0, from src\/cryptopp/eccrypto.h:7, from src\/schnorr.h:12, from src\/hash.h:17, from src\/net.h:22, from src\rpcnet.cpp:6: src\/cryptopp/modarith.h: In copy constructor 'CryptoPP::ModularArithmetic::Modu larArithmetic(const CryptoPP::ModularArithmetic&)': src\/cryptopp/modarith.h:29:2: warning: base class 'class CryptoPP::AbstractRing <CryptoPP::Integer>' should be explicitly initialized in the copy constructor [- Wextra] In file included from src\/cryptopp/simple.h:10:0, from src\/cryptopp/filters.h:6, from src\/cryptopp/randpool.h:5, from src\/cryptopp/osrng.h:10, from src\/schnorr.h:11, from src\/hash.h:17, from src\/net.h:22, from src\rpcnet.cpp:6: src\/cryptopp/misc.h: In function 'std::string CryptoPP::IntToString(T, unsigned int) [with T = unsigned int, std::string = std::basic_string<char>]': src\/cryptopp/simple.h:35:128: instantiated from here src\/cryptopp/misc.h:414:2: warning: comparison of unsigned expression < 0 is al ways false [-Wtype-limits] Makefile.Release:3231: recipe for target 'build/rpcnet.o' failed mingw32-make: *** [build/rpcnet.o] Error 1 How to fix this error with ws2tcpip.h is not compaitable with winsock.h Include winsock2.h instead If I take away ws2tcpip.h, it will end up issue at netbase.cpp where its use parameter of ws2tcpip.h , anyone can help resolve this Trying to build max coin window qt, but have this issue. You should use one of the latest mingw-builds toolchains. See step 1.1 to get a working environment. Can someone please help me with this issue, I don't know what I did before to fix it but I just installed win7 in a vm to give it a try on windows7 instead of windows 8 and I am back at to the following error. I have tried installing MinGW over I know someone said install msys over mingw but I have no clue what they are talking about as haven't clarrified t hemself when asked what they meant, so any help would be greatly appreciated. I have also checked my path variables and everything seems to be correct. C:\JennyCoin>mingw32-make -f Makefile.Release cd C:/JennyCoin/src/leveldb && CC=gcc CXX=g++ TARGET_OS=OS_WINDOWS_CROSSCOMPILE mingw32-make OPT="-pipe -fno-keep-inline -dllexport -D_FORTIFY_SOURCE=2 -O2" libleveldb.a libmemenv.a && ranlib C:/JennyCoin/src/leveldb/libleveldb.a && ranlib C :/JennyCoin/src/leveldb/libmemenv.a 'CC' is not recognized as an internal or external command, operable program or batch file. Makefile.Release:317: recipe for target 'C:/JennyCoin/src/leveldb/libleveldb.a' failed mingw32-make: *** [C:/JennyCoin/src/leveldb/libleveldb.a] Error 1
C:\JennyCoin>
Compile leveldb in msys shell and ensure genleveldb commands are commented out in your project file before qmaking and making the project.
|
|
|
There is an issue that compiled the wallet, I got some error like the application has requested the runtime to terminate it in an unusual way anyone can help on this? the source is under: https://github.com/9cat/templecoinAre you statically or dynamically linking qt? g++ -c -frandom-seed=obj/net.o -mthreads -O2 -msse2 -w -Wall -Wextra -Wformat -W format-security -Wno-unused-parameter -g -DWIN32 -D_WINDOWS -DBOOST_THREAD_USE_L IB -DBOOST_SPIRIT_THREADSAFE -DSCRYPT_CHACHA -DSCRYPT_KECCAK512 -DSCRYPT_CHOOSE_ COMPILETIME -DO2 -DUSE_IPV6=1 -Ic:/deps/openssl-1.0.1e/include -I"C:/yacoin/src" -I"C:/yacoin/src/scrypt-jane" -I"c:/deps/boost_1_55_0" -I"c:/deps/db-4.8.30.NC/ build_unix" -I"c:/deps/openssl-1.0.1f/include" -I"c:/deps" -o obj/net.o net.cpp net.cpp: In function 'bool BindListenPort(const CService&, std::string&)': net.cpp:1802:87: error: invalid conversion from 'void*' to 'const char*' [-fperm issive] setsockopt(hListenSocket, IPPROTO_IPV6, IPV6_V6ONLY, (void*)&nOne, size of(int));
^ In file included from compat.h:14:0, from netbase.h:11, from util.h:30, from bignum.h:12, from main.h:8, from db.h:8, from net.cpp:8: C:/mingw32/i686-w64-mingw32/include/winsock2.h:999:34: error: initializing arg ument 4 of 'int setsockopt(SOCKET, int, int, const char*, int)' [-fpermissive] WINSOCK_API_LINKAGE int WSAAPI setsockopt(SOCKET s,int level,int optname,cons t char *optval,int optlen); ^ makefile.mingw:145: recipe for target 'obj/net.o' failed mingw32-make: *** [obj/net.o] Error 1
i build yacoind.exe got this error how bo fix it? thanks very much! https://github.com/bitcoin/bitcoin/commit/6c6255edb54bed780f0879c906dccf6cfa98b4db
|
|
|
If I try to copy content of winsock2.h and replace ws2tcpip.h, i will get an error at netbase.cpp where it need ws2tcpip.h , so I can't really fix this part
#error "ws2tcpip.h is not compatible with winsock.h. Include winsock2.h instead."
what should i do..
You are most likely using the wrong toolchain. You should use one of the latest mingw-builds toolchains. I took me at least two 40 hour weeks to get my first coin to build under windows. It took 5 minutes under Linux. Once you get the environment setup right, it will go easier.
the windows wallet can't be built under linux though right? In theory you could cross-compile, spent a week trying, on and off, and never got there. Always one piece that wouldn't fit in the puzzle. Windows executables can be cross-compiled on gitian. See http://gavintech.blogspot.it/2014/02/gitian-building-bitcoin-releases.htmlBeen trying to build for months off and on... Followed the instructions to the letter and on any build, I always get the same exact error message when I try to run the otherwise cleanly compiled executable:
What am I doing wrong here?
Windows 7 x64 build environment which is freshly installed in a VM.
Not crashing here. Make sure your build environment and project file are ok.
|
|
|
È sufficiente fare "Scarica per la traduzione" editare l'xml e poi fare "Carica file" o mi sfugge qualcosa? Ciao ragazzi, c'è qualcuno che mi spiega come si fa ad utilizzare la nuova funzione per cui si può decidere da quale indirizzo si può spedire?? Altra cosa, io non mica capito come funziona la nuova schermata "ricevi". Un breve tutorial? grazie ![Cheesy](https://bitcointalk.org/Smileys/default/cheesy.gif) Il coin control si attiva dalle opzioni avanzate, dopodiché puoi selezionare da quali input non spesi spendere. L'indirizzo di ricezione è stato "evoluto" ad un modulo di pagamento a cui puoi aggiungere importo richiesto e note testuali. Ad ogni richiesta di pagamento corrisponde un nuovo indirizzo di ricezione (a meno che non si spunti "Riusa un indirizzo di pagamento").
|
|
|
some of the guide is very unclear and very confusing
What parts are you referring to? I think I clearly stated that configuring the build environment on a clean vm is recommended. As you are using gcc-3.4.4-3-msys I suggest you remove C:\MinGW completely and reinstall MinGW by selecting only the packages mentioned at step 1.1 (msys-base-bin, msys-autoconf-bin, msys-automake-bin, msys-libtool-bin).
|
|
|
Hello all,
It has been over 3 months, and three *coind.exe's later and finally fixing a bug in the MSVC windows version of the leveldb code, I can say that bitcoind.exe is a full, pure MSVC++ product (again?).
Much more to follow...
Ron
Interesting, keep us informed ![Wink](https://bitcointalk.org/Smileys/default/wink.gif) C:\deps\boost_1_55_0>bootstrap.bat mingw Building Boost.Build engine 'gcc' is not recognized as an internal or external command, operable program or batch file.
Failed to build Boost.Build engine. Please consult bootstrap.log for furter diagnostics.
You can try to obtain a prebuilt binary from
http://sf.net/project/showfiles.php?group_id=7586&package_id=72941
Also, you can file an issue at http://svn.boost.org Please attach bootstrap.log in that case.
C:\deps\boost_1_55_0>
Make sure mingw-builds is in path then check that your gcc -v output and the one specified at step 1.6 are the same.
|
|
|
I tried building from Step 1 again, same result stuck on last line... Turn On debug this time, hope to see some feedback. src\qt\coincontroldialog.cpp: In constructor 'CoinControlDialog::CoinControlDial og(QWidget*)': src\qt\coincontroldialog.cpp:99:31: error: 'class QHeaderView' has no member nam ed 'setClickable' ui->treeWidget->header()->setClickable(true); ^
setClickable has been deprecated in qt5. Use QHeaderView::setSectionsClickable instead. https://qt-project.org/doc/qt-5.0/qtdoc/sourcebreaks.html
|
|
|
|