Bitcoin Forum
May 03, 2024, 05:45:15 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Compilare in windows codice C/C++ di wallet e miner  (Read 2281 times)
unsoindovo (OP)
Legendary
*
Offline Offline

Activity: 1932
Merit: 1042

https://locktrip.com/?refId=40964


View Profile
October 04, 2014, 08:52:59 AM
 #1

Salv a tutti!
più volte mi sono trovato ad avere la necessità di compilare codice sorgente c/c+ di wallet o miner in windows.
Ho instalato mingW ma sono solo riuscito a compilare i sorgenti .cpp con g++.exe.
Ho visto che nella maggior parte dei casi nei codici sorgente ci sono anche script per compilare il tutto, penso in un colpo solo.
per esempio ho makefile.mingw.

il codice contenuto è questo:

come faccio a compilare con questo script?
l'installazione di default di mingW è sufficiente?
o devo impostare altro?
grazie a tutti!!!

Code:
# Copyright (c) 2009-2010 Satoshi Nakamoto
# Distributed under the MIT/X11 software license, see the accompanying
# file COPYING or http://www.opensource.org/licenses/mit-license.php.

# Makefile for the MinGW g++ compiler/toolchain
#
# Assumes Berkeley DB, Boost, and OpenSSL have all been compiled and installed
# into /usr/local (/usr/local/include, /usr/local/lib).
#
# If dependencies are somewhere else, run 'make DEPSDIR=/path/'
#
# Boost libraries are given wacky names that include the particular version of
# boost you're using; set BOOST_SUFFIX appropriately.
#
# 'make clean' assumes it is running inside a MSYS shell, and uses 'rm'
# to remove files.

CXX ?= g++

USE_UPNP:=-
USE_IPV6:=1

DEPSDIR?=/usr/local
BOOST_SUFFIX?=-mgw48-mt-s-1_55

INCLUDEPATHS= \
 -I"$(CURDIR)" \
 -I"$(DEPSDIR)/include" \
 -I"c:/deps/boost_1_55_0" \
 -I"c:/deps/db-4.8.30.NC/build_unix" \
 -I"c:/deps/miniupnpc-1.8" \
 -I"c:/deps/openssl-1.0.1g/include"

LIBPATHS= \
 -L"$(CURDIR)/leveldb" \
 -L"$(DEPSDIR)/lib" \
 -L"c:/deps/boost_1_55_0/stage/lib" \
 -L"c:/deps/db-4.8.30.NC/build_unix" \
 -L"c:/deps/miniupnpc-1.8" \
 -L"c:/deps/openssl-1.0.1g"

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

DEFS=-DWIN32 -D_WINDOWS -DBOOST_THREAD_USE_LIB -DBOOST_SPIRIT_THREADSAFE
DEBUGFLAGS=-g
CFLAGS=-mthreads -O3 -msse2 -w -Wall -Wextra -Wno-ignored-qualifiers -Wformat -Wformat-security -Wno-unused-parameter $(DEBUGFLAGS) $(DEFS) $(INCLUDEPATHS)
LDFLAGS=-Wl,--dynamicbase -Wl,--nxcompat

TESTDEFS = -DTEST_DATA_DIR=$(abspath test/data)

ifndef USE_UPNP
override USE_UPNP = -
endif
ifneq (${USE_UPNP}, -)
 INCLUDEPATHS += -I"C:\miniupnpc-1.6-mgw"
 LIBPATHS += -L"C:\miniupnpc-1.6-mgw"
 LIBS += -l miniupnpc -l iphlpapi
 DEFS += -DSTATICLIB -DUSE_UPNP=$(USE_UPNP)
endif

ifneq (${USE_IPV6}, -)
DEFS += -DUSE_IPV6=$(USE_IPV6)
endif

LIBS += -l kernel32 -l user32 -l gdi32 -l comdlg32 -l winspool -l winmm -l shell32 -l comctl32 -l ole32 -l oleaut32 -l uuid -l rpcrt4 -l advapi32 -l ws2_32 -l mswsock -l shlwapi

# TODO: make the mingw builds smarter about dependencies, like the linux/osx builds are
HEADERS = $(wildcard *.h)

OBJS= \
    obj/groestl.o \
    obj/blake.o \
    obj/bmw.o \
    obj/skein.o \
    obj/keccak.o \
    obj/shavite.o \
    obj/jh.o \
    obj/luffa.o \
    obj/cubehash.o \
    obj/echo.o \
    obj/simd.o \
obj/hamsi.o \
obj/fugue.o \
obj/shabal.o\
    obj/whirlpool.o \
    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/irc.o \
    obj/keystore.o \
    obj/main.o \
    obj/miner.o \
    obj/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/walletdb.o \
    obj/noui.o \
    obj/kernel.o \
    obj/pbkdf2.o \
    obj/scrypt.o \
    obj/scrypt-arm.o \
    obj/scrypt-x86.o \
    obj/scrypt-x86_64.o

all: halcyond.exe

LIBS += $(CURDIR)/leveldb/libleveldb.a $(CURDIR)/leveldb/libmemenv.a
DEFS += $(addprefix -I,$(CURDIR)/leveldb/include)
DEFS += $(addprefix -I,$(CURDIR)/leveldb/helpers)
OBJS += obj/txdb-leveldb.o
leveldb/libleveldb.a:
cd leveldb; make; cd ..
obj/txdb-leveldb.o: leveldb/libleveldb.a

obj/%.o: %.cpp $(HEADERS)
g++ -c $(CFLAGS) -o $@ $<


obj/scrypt-x86.o: scrypt-x86.S
$(CXX) -c $(xCXXFLAGS) -MMD -o $@ $<

obj/scrypt-x86_64.o: scrypt-x86_64.S
$(CXX) -c $(xCXXFLAGS) -MMD -o $@ $<

obj/scrypt-arm.o: scrypt-arm.S
$(CXX) -c $(xCXXFLAGS) -MMD -o $@ $<

obj/%.o: %.c
$(CXX) -c $(xCXXFLAGS) -fpermissive -MMD -MF $(@:%.o=%.d) -o $@ $<
@cp $(@:%.o=%.d) $(@:%.o=%.P); \
  sed -e 's/#.*//' -e 's/^[^:]*: *//' -e 's/ *\\$$//' \
              -e '/^$$/ d' -e 's/$$/ :/' < $(@:%.o=%.d) >> $(@:%.o=%.P); \
     
rm -f $(@:%.o=%.d)
obj/%.o: %.cpp
$(CXX) -c $(xCXXFLAGS) -MMD -MF $(@:%.o=%.d) -o $@ $<
@cp $(@:%.o=%.d) $(@:%.o=%.P); \
  sed -e 's/#.*//' -e 's/^[^:]*: *//' -e 's/ *\\$$//' \
      -e '/^$$/ d' -e 's/$$/ :/' < $(@:%.o=%.d) >> $(@:%.o=%.P); \
  rm -f $(@:%.o=%.d)

halcyond.exe: $(OBJS:obj/%=obj/%)
g++ $(CFLAGS) $(LDFLAGS) -o $@ $(LIBPATHS) $^ $(LIBS)

clean:
-del /Q halcyond
-del /Q obj\*

FORCE:

██▬▬▬

██▬

██▬

██▬▬▬



████           ▄▄█████████▄▄            ▄▄█████████▄▄        ████         █████      ██████████████████   ████████████       ████    ████████████    
████         ▄███████████████▄        ▄███████████████▄      ████       █████      ████████████████████  █████████████      ████    █████████████   
████        █████▀       ▀█████▄     █████▀       ▀█████     ████     █████         █       ████       █  ████     █████             ████     █████  
████       ████▀           ▀████▄   ████▀           ▀████    ████   █████                   ████          ████      ████     ████    ████      ████  
████      ████▀              ▀████ ▀███▀                     ████ █████                     ████          ████     █████     ████    ████     █████  
████      ████                 ████▄ ▀                       ████████                       ████          █████████████      ████    █████████████   
████      ████                  ▀████                        ████████                       ████          ████████████       ████    ████████████    
████      ████▄             ▄██▄ ▀████▄                      ████ █████                     ████          ████    ████       ████    ████            
████       ████▄           ▄████   ▀████▄           ▄████    ████   █████                   ████          ████    ▀████      ████    ████            
████        █████▄       ▄█████      █████▄       ▄█████     ████     █████                 ████          ████      ████     ████    ████            
████████████ ▀███████████████▀        ▀███████████████▀      ████       █████               ████          ████       ████    ████    ████            
█████████████  ▀▀█████████▀▀            ▀▀█████████▀▀        ████         █████             ████          ████        █████  ████    ████            

 
 
 
▬▬▬██

▬██

▬██

▬▬▬██
1714758315
Hero Member
*
Offline Offline

Posts: 1714758315

View Profile Personal Message (Offline)

Ignore
1714758315
Reply with quote  #2

1714758315
Report to moderator
1714758315
Hero Member
*
Offline Offline

Posts: 1714758315

View Profile Personal Message (Offline)

Ignore
1714758315
Reply with quote  #2

1714758315
Report to moderator
1714758315
Hero Member
*
Offline Offline

Posts: 1714758315

View Profile Personal Message (Offline)

Ignore
1714758315
Reply with quote  #2

1714758315
Report to moderator
You can see the statistics of your reports to moderators on the "Report to moderator" pages.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1714758315
Hero Member
*
Offline Offline

Posts: 1714758315

View Profile Personal Message (Offline)

Ignore
1714758315
Reply with quote  #2

1714758315
Report to moderator
1714758315
Hero Member
*
Offline Offline

Posts: 1714758315

View Profile Personal Message (Offline)

Ignore
1714758315
Reply with quote  #2

1714758315
Report to moderator
FaSan
Hero Member
*****
Offline Offline

Activity: 658
Merit: 500



View Profile
October 04, 2014, 09:45:47 AM
 #2

Qui c'è tutto :


https://bitcointalk.org/index.php?topic=149479.0




FaSan
Pages: [1]
  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!