Bitcoin Forum
September 21, 2017, 07:59:59 PM *
News: Latest stable version of Bitcoin Core: 0.15.0.1  [Torrent]. (New!)
 
   Home   Help Search Donate Login Register  
Pages: [1]
  Print  
Author Topic: Has Anyone Run Bitcoin Headless On Mac  (Read 5893 times)
ArrowJ
Newbie
*
Offline Offline

Activity: 21



View Profile WWW
December 05, 2010, 05:01:35 PM
 #1

The title says it all. If you have successfully run bitcoin headless on Mac OS X please share your experience. Or if you think you know how to pull it off please let us know how to make it happen.

The OS X GUI usually lags behind and even when it's up to date with win/linux it doesn't have the Mac OS feel, and I don't think anyone is interested in making that happen at present. The best option I can see would be to just run it sans GUI.

If someone can figure out how to run it headless on Mac OS X I'll try to figure out how to display the details on the desktop using GeekTool and share it here.

Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
1506023999
Hero Member
*
Offline Offline

Posts: 1506023999

View Profile Personal Message (Offline)

Ignore
1506023999
Reply with quote  #2

1506023999
Report to moderator
1506023999
Hero Member
*
Offline Offline

Posts: 1506023999

View Profile Personal Message (Offline)

Ignore
1506023999
Reply with quote  #2

1506023999
Report to moderator
1506023999
Hero Member
*
Offline Offline

Posts: 1506023999

View Profile Personal Message (Offline)

Ignore
1506023999
Reply with quote  #2

1506023999
Report to moderator
nelisky
Legendary
*
Offline Offline

Activity: 1554


View Profile
December 05, 2010, 05:30:10 PM
 #2

Well, I never ran the binaries headless, but I did run it many times by compiling myself. I don't remember the exact steps in fixing dependencies, but using macports it wasn't hard at all, but I did have to muck around the makefile to get the paths correct.

The following is for r156, but should work pretty much unchanged for current svn head, I think. Just make sure paths are correct for you, and you are using 64bit OSX. If you're on 32bit, change the x86_64 to i386 (untested). Also, build with
Code:
make -f makefile.osx bitcoind
, if you don't specify the target it will try to build bitcoin which is the GUI version.

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

# Mac OS X makefile for bitcoin
# Laszlo Hanyecz (solar@heliacal.net)


CXX=llvm-g++
DEPSDIR=/opt/local

INCLUDEPATHS= \
 -I"$(DEPSDIR)/include"  -I"$(DEPSDIR)/include/db46"

LIBPATHS= \
 -L"$(DEPSDIR)/lib"  -L"$(DEPSDIR)/lib/db46"

WXLIBS=

LIBS= -dead_strip \
 $(DEPSDIR)/lib/db46/libdb_cxx-4.6.a \
 $(DEPSDIR)/lib/libboost_system-mt.a \
 $(DEPSDIR)/lib/libboost_filesystem-mt.a \
 $(DEPSDIR)/lib/libboost_program_options-mt.a \
 $(DEPSDIR)/lib/libboost_thread-mt.a \
 $(DEPSDIR)/lib/libboost_regex-mt.a \
 $(DEPSDIR)/lib/libssl.a \
 $(DEPSDIR)/lib/libcrypto.a

DEFS=-D__WXMAC_OSX__ -DNOPCH -DMSG_NOSIGNAL=0 -DFOURWAYSSE2

DEBUGFLAGS=-g -DwxDEBUG_LEVEL=0 $(DF)
# ppc doesn't work because we don't support big-endian
CFLAGS=-mmacosx-version-min=10.5 -arch x86_64 -O3 -Wno-invalid-offsetof -Wformat $(DEFS) $(INCLUDEPATHS)
HEADERS=headers.h strlcpy.h serialize.h uint256.h util.h key.h bignum.h base58.h \
    script.h db.h net.h irc.h main.h rpc.h uibase.h ui.h noui.h init.h

OBJS= \
    obj/util.o \
    obj/script.o \    obj/db.o \    obj/net.o \
    obj/irc.o \
    obj/main.o \
    obj/rpc.o \
    obj/init.o \
    cryptopp/obj/sha.o \
    obj/sha256.o \
    cryptopp/obj/cpu.o

all: bitcoin


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

cryptopp/obj/%.o: cryptopp/%.cpp
        $(CXX) -c $(CFLAGS) -O3 -DCRYPTOPP_DISABLE_ASM -o $@ $<

bitcoin: $(OBJS) obj/ui.o obj/uibase.o
        $(CXX) $(shell $(DEPSDIR)/bin/wx-config --cxxflags) $(CFLAGS) -o $@ $(LIBPATHS) $^ $(shell $(DEPSDIR)/bin/wx-config --libs --static) $(LIBS)

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

bitcoind: $(OBJS:obj/%=obj/nogui/%)
        $(CXX) $(CFLAGS) -o $@ $(LIBPATHS) $^ $(LIBS)

clean:
        -rm -f bitcoin bitcoind
        -rm -f obj/*.o
        -rm -f obj/nogui/*.o
        -rm -f cryptopp/obj/*.o
ArrowJ
Newbie
*
Offline Offline

Activity: 21



View Profile WWW
December 05, 2010, 06:15:05 PM
 #3

Very nice. I'll have to give that a try (or ten). I also posted a solution for those that don't want to try to run headless: http://bitcointalk.org/index.php?topic=2086

ikbrunel
Newbie
*
Offline Offline

Activity: 19


View Profile
February 08, 2013, 09:11:46 PM
 #4

Current instructions for compiling a headless version:
https://github.com/bitcoin/bitcoin/blob/master/doc/build-osx.txt

edited to add:
configuration checking script and makefile generator. totes useful!
https://raw.github.com/CodeShark/bitcoin/4c92791df5c96128e03834a8a1a52c07c2164cf5/src/configure
Pages: [1]
  Print  
 
Jump to:  

Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!