Feathercoin daemon and wallet production version 0.17.0.2

[DEV] MacOS - Build Feathercoind + Feathercoin-Qt v0.9.3.1 [COMPLETED]


  • Moderators | Tip AcidD

    Hi All,

    Not sure if this was the best place to put this…if anyone wants to help with the OSX build…I’m using either El Capitan or Sierra for my build environment.

    So far I’ve only managed to compile Feathercoind (the Daemon) on OSX. Below is what I’m doing to get it compiled. If anyone wants to throw any advice my way to get QT built…that would be amazing.

    1 - Install homebrew (brew)

    ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
    

    2 - Install feathercoin dependancies

    brew install boost  --universal --build-from-source
    
    brew install protobuf  --c++11 --universal --build-from-source
    
    brew install libevent --c++11 --universal --build-from-source
    
    brew install autoconf automake libtool miniupnpc openssl pkg-config
    
    brew install berkeley-db4
    
    brew install libqrencode
    

    3 - ./Configure command for building feathercoind

    ./configure --disable-upnp-default --disable-tests --disable-hardening --without-miniupnpc LDFLAGS="-L/usr/local/opt/berkeley-db4/lib/ -L/usr/local/opt/qrencode/lib/" CPPFLAGS="-I/usr/local/opt/berkeley-db4/include/ -I/usr/local/opt/qrencode/include/" --with-boost=/usr/local/Cellar/boost/1.62.0 --with-gui=no
    

    Doing the above on Mavricks, Yosemite, El Capitan or Sierra will produce feathercoind.

    to run it i’m doing…:

    ./feathercoind -printtoconsole 
    

    it starts syncing with the blockchain and everything looks good. If anyone can verify that this works on their Mac it would be a good first step to getting an OSX build of 0.9.3.1

    I’ll be replying to this thread with rants, ideas and basic spit balling on getting QT compiled/built in OSX. it seriously cant be this hard and I don’t like the fact that everything I’ve read says to “build in a 32-bit osx environment” …which is near impossible these days.

    Time spent so far: 30 Hours and counting.


  • Moderators | Tip AcidD

    With the above method for building feathercoind and the above dependancies installed, I receive this warning… currently on MacOS Sierra.

    warning: 'OSMemoryBarrier' is deprecated: first deprecated in macOS 10.12 - Use
          std::atomic_thread_fence() from <atomic> instead [-Wdeprecated-declarations]
    

    it’s not a major warning and does not affect the build process, seems to just be an updated way to do certain things with boost.


  • | Tip looarn

    On Windows I try a lot for 0.9.3.1 but didn’t get the feathercoin-qt.exe compiled.

    I have to use boost 1.57.0 (avoiding some errors).

    And I finaly get it working with the last 0.3.9.2 version of Feathercoin.

    Hope this help a bit. 🙂

    Good luck !

    PS : Can you provide the version of all dependencies? 😉


  • Moderators | Tip Wellenreiter

    Also -at least on Linux- the –disable-hardening is not required. I’ve heard some rumors, that Windows has more problems with hardening and no Idea about OSX.


  • Moderators | Tip AcidD

    @looarn i’ll get you the versions a little later…

    Meenwhile…fuck knows how I’ve managed to get this to compile. I used boost from homebrew as it’s near impossible for me to build it myself…and I think that’s the main problem. Building boost on OSX.

    After fucking around for hours…I can try to launch feathercoin-qt with the below command and you can see the error and the seg fault.

    acids-MacBook-Pro:qt acid$ DYLD_LIBRARY_PATH=/usr/local/Cellar/boost155/1.55.0_1/lib/ ./feathercoin-qt
    Dynamic session lookup supported but failed: launchd did not provide a socket path, verify that org.freedesktop.dbus-session.plist is loaded!
    Segmentation fault: 11
    
    

    This is still v0.9.3.1


  • Moderators | Tip Wellenreiter

    i’m not sure if OSX has dbus at all, but as said, I know nothing about OSX

    you can try a ‘configure --with-qtdbus=no’ and try again


  • Moderators | Tip AcidD

    @Wellenreiter thanks. I’m about to get on a 2 hour train to London so if there’s electric points on the train ill give that a go.

    Will post updates in this thread.


  • Moderators | Tip AcidD

    @Wellenreiter said in [DEV] MacOS - Build FeathercoinD v0.9.3.1:

    i’m not sure if OSX has dbus at all, but as said, I know nothing about OSX

    you can try a ‘configure --with-qtdbus=no’ and try again

    So the above worked to remove the error:

    Dynamic session lookup supported but failed: launchd did not provide a socket path, verify that org.freedesktop.dbus-session.plist is loaded!
    

    now it crashes with just the Segfault 11

    acids-MacBook-Pro:qt acid$ DYLD_LIBRARY_PATH=/usr/local/Cellar/boost155/1.55.0_1/lib/ ./feathercoin-qt
    Segmentation fault: 11
    

    Will post the OSX crash log next.


  • Moderators | Tip AcidD

    Process:               feathercoin-qt [67256]
    Path:                  /Users/USER/*/feathercoin-qt
    Identifier:            feathercoin-qt
    Version:               0
    Code Type:             X86-64 (Native)
    Parent Process:        bash [63802]
    Responsible:           feathercoin-qt [67256]
    User ID:               501
    
    Date/Time:             2016-11-27 20:45:46.189 +0000
    OS Version:            Mac OS X 10.12.1 (16B2657)
    Report Version:        12
    Anonymous UUID:        B7C6A383-E2D7-B806-5B41-9E1BBFBE2711
    
    Sleep/Wake UUID:       5795C7BD-1231-4FFC-92F1-C760224AEA8E
    
    Time Awake Since Boot: 59000 seconds
    Time Since Wake:       980 seconds
    
    System Integrity Protection: enabled
    
    Crashed Thread:        0  Dispatch queue: com.apple.main-thread
    
    Exception Type:        EXC_BAD_ACCESS (SIGSEGV)
    Exception Codes:       EXC_I386_GPFLT
    Exception Note:        EXC_CORPSE_NOTIFY
    
    Termination Signal:    Segmentation fault: 11
    Termination Reason:    Namespace SIGNAL, Code 0xb
    Terminating Process:   exc handler [0]
    
    Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
    0   org.qt-project.QtWidgets      	0x000000011098250a QAbstractButton::setIcon(QIcon const&) + 10
    1   feathercoin-qt                	0x000000010faa7262 MultiSigDialog::MultiSigDialog(QWidget*) + 370 (multisigdialog.cpp:47)
    2   feathercoin-qt                	0x000000010fa98ef9 WalletView::WalletView(QWidget*) + 953 (walletview.cpp:79)
    3   feathercoin-qt                	0x000000010fa78d49 WalletFrame::addWallet(QString const&, WalletModel*) + 169 (walletframe.cpp:43)
    4   feathercoin-qt                	0x000000010f9954aa BitcoinGUI::addWallet(QString const&, WalletModel*) + 74 (bitcoingui.cpp:533)
    5   feathercoin-qt                	0x000000010f974bdc BitcoinApplication::initializeResult(int) + 316 (qstring.h:1075)
    6   org.qt-project.QtCore         	0x00000001117188e1 QObject::event(QEvent*) + 801
    7   org.qt-project.QtCore         	0x00000001116f0986 QCoreApplication::event(QEvent*) + 102
    8   org.qt-project.QtGui          	0x0000000110f8c49e QGuiApplication::event(QEvent*) + 270
    9   org.qt-project.QtWidgets      	0x0000000110893026 QApplication::event(QEvent*) + 1174
    10  org.qt-project.QtWidgets      	0x000000011089488d QApplicationPrivate::notify_helper(QObject*, QEvent*) + 301
    11  org.qt-project.QtWidgets      	0x0000000110895c31 QApplication::notify(QObject*, QEvent*) + 369
    12  org.qt-project.QtCore         	0x00000001116eee54 QCoreApplication::notifyInternal2(QObject*, QEvent*) + 164
    13  org.qt-project.QtCore         	0x00000001116efe7b QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) + 891
    14  libqcocoa.dylib               	0x000000011225bd0e QCocoaEventDispatcherPrivate::processPostedEvents() + 190
    15  libqcocoa.dylib               	0x000000011225c5d1 QCocoaEventDispatcherPrivate::postedEventsSourceCallback(void*) + 33
    16  com.apple.CoreFoundation      	0x00007fff9dca04c1 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
    17  com.apple.CoreFoundation      	0x00007fff9dc818cc __CFRunLoopDoSources0 + 556
    18  com.apple.CoreFoundation      	0x00007fff9dc80db6 __CFRunLoopRun + 934
    19  com.apple.CoreFoundation      	0x00007fff9dc807b4 CFRunLoopRunSpecific + 420
    20  com.apple.HIToolbox           	0x00007fff9d2102ac RunCurrentEventLoopInMode + 240
    21  com.apple.HIToolbox           	0x00007fff9d2100e1 ReceiveNextEventCommon + 432
    22  com.apple.HIToolbox           	0x00007fff9d20ff16 _BlockUntilNextEventMatchingListInModeWithFilter + 71
    23  com.apple.AppKit              	0x00007fff9b8126cd _DPSNextEvent + 1093
    24  com.apple.AppKit              	0x00007fff9bf89830 -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 2730
    25  com.apple.AppKit              	0x00007fff9b80706d -[NSApplication run] + 926
    26  libqcocoa.dylib               	0x000000011225b345 QCocoaEventDispatcher::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) + 2389
    27  org.qt-project.QtCore         	0x00000001116eb171 QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) + 417
    28  org.qt-project.QtCore         	0x00000001116ef4c7 QCoreApplication::exec() + 343
    29  feathercoin-qt                	0x000000010f976865 main + 2709 (bitcoin.cpp:609)
    30  libdyld.dylib                 	0x00007fffb2f8a255 start + 1
    
    Thread 1:
    0   libsystem_kernel.dylib        	0x00007fffb30b94e6 __workq_kernreturn + 10
    1   libsystem_pthread.dylib       	0x00007fffb31a1622 _pthread_wqthread + 1023
    2   libsystem_pthread.dylib       	0x00007fffb31a1211 start_wqthread + 13
    
    Thread 2:: Dispatch queue: com.apple.root.user-interactive-qos
    0   libsystem_kernel.dylib        	0x00007fffb30b93b6 __ulock_wait + 10
    1   libdispatch.dylib             	0x00007fffb2f6ca8e _dispatch_ulock_wait + 40
    2   libdispatch.dylib             	0x00007fffb2f6cc6e _dispatch_thread_event_wait_slow + 85
    3   libdispatch.dylib             	0x00007fffb2f5f5ea _dispatch_barrier_sync_f_slow + 402
    4   com.apple.AppKit              	0x00007fff9b954e83 NSCGSDisableUpdates + 215
    5   com.apple.AppKit              	0x00007fff9b954cb7 NSCGSTransactionRunPreCommitActionsForOrder_ + 147
    6   com.apple.AppKit              	0x00007fff9b954c07 NSCGSTransactionRunPreCommitActions_ + 21
    7   com.apple.AppKit              	0x00007fff9b954be6 __39+[_NSCGSTransaction currentTransaction]_block_invoke + 34
    8   com.apple.QuartzCore          	0x00007fffa37cc1ba CA::Transaction::run_commit_handlers(CATransactionPhase) + 46
    9   com.apple.QuartzCore          	0x00007fffa38d412f CA::Context::commit_transaction(CA::Transaction*) + 959
    10  com.apple.QuartzCore          	0x00007fffa37cad55 CA::Transaction::commit() + 475
    11  com.apple.AppKit              	0x00007fff9b9e4185 -[NSAnimation(NSInternal) _advanceTimeWithDisplayLink:] + 330
    12  com.apple.AppKit              	0x00007fff9b9e3f90 -[NSScreenDisplayLink _fire] + 329
    13  com.apple.CoreFoundation      	0x00007fff9dc89e84 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 20
    14  com.apple.CoreFoundation      	0x00007fff9dc89b13 __CFRunLoopDoTimer + 1075
    15  com.apple.CoreFoundation      	0x00007fff9dc8966a __CFRunLoopDoTimers + 298
    16  com.apple.CoreFoundation      	0x00007fff9dc81231 __CFRunLoopRun + 2081
    17  com.apple.CoreFoundation      	0x00007fff9dc807b4 CFRunLoopRunSpecific + 420
    18  com.apple.Foundation          	0x00007fff9f69ccb2 -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 277
    19  com.apple.AppKit              	0x00007fff9b953af6 -[NSAnimation(NSInternal) _runBlocking] + 403
    20  com.apple.AppKit              	0x00007fff9b95394a -[NSAnimation(NSInternal) _animationThread] + 66
    21  libdispatch.dylib             	0x00007fffb2f5cf5f _dispatch_call_block_and_release + 12
    22  libdispatch.dylib             	0x00007fffb2f54128 _dispatch_client_callout + 8
    23  libdispatch.dylib             	0x00007fffb2f56099 _dispatch_root_queue_drain + 917
    24  libdispatch.dylib             	0x00007fffb2f55cb7 _dispatch_worker_thread3 + 99
    25  libsystem_pthread.dylib       	0x00007fffb31a1736 _pthread_wqthread + 1299
    26  libsystem_pthread.dylib       	0x00007fffb31a1211 start_wqthread + 13
    
    Thread 3:
    0   libsystem_kernel.dylib        	0x00007fffb30b94e6 __workq_kernreturn + 10
    1   libsystem_pthread.dylib       	0x00007fffb31a17b5 _pthread_wqthread + 1426
    2   libsystem_pthread.dylib       	0x00007fffb31a1211 start_wqthread + 13
    
    Thread 4:: QThread
    0   libsystem_kernel.dylib        	0x00007fffb30ba236 poll + 10
    1   org.qt-project.QtCore         	0x00000001117404c0 qt_safe_poll(pollfd*, unsigned int, timespec const*) + 544
    2   org.qt-project.QtCore         	0x0000000111741e88 QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) + 792
    3   org.qt-project.QtCore         	0x00000001116eb171 QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) + 417
    4   org.qt-project.QtCore         	0x000000011152d4e3 QThread::exec() + 115
    5   org.qt-project.QtCore         	0x0000000111530eea QThreadPrivate::start(void*) + 362
    6   libsystem_pthread.dylib       	0x00007fffb31a1aab _pthread_body + 180
    7   libsystem_pthread.dylib       	0x00007fffb31a19f7 _pthread_start + 286
    8   libsystem_pthread.dylib       	0x00007fffb31a1221 thread_start + 13
    
    Thread 5:: com.apple.CFSocket.private
    0   libsystem_kernel.dylib        	0x00007fffb30b8f4e __select + 10
    1   com.apple.CoreFoundation      	0x00007fff9dcbc909 __CFSocketManager + 729
    2   libsystem_pthread.dylib       	0x00007fffb31a1aab _pthread_body + 180
    3   libsystem_pthread.dylib       	0x00007fffb31a19f7 _pthread_start + 286
    4   libsystem_pthread.dylib       	0x00007fffb31a1221 thread_start + 13
    
    Thread 6:: com.apple.NSEventThread
    0   libsystem_kernel.dylib        	0x00007fffb30b141a mach_msg_trap + 10
    1   libsystem_kernel.dylib        	0x00007fffb30b0867 mach_msg + 55
    2   com.apple.CoreFoundation      	0x00007fff9dc81ae4 __CFRunLoopServiceMachPort + 212
    3   com.apple.CoreFoundation      	0x00007fff9dc80f61 __CFRunLoopRun + 1361
    4   com.apple.CoreFoundation      	0x00007fff9dc807b4 CFRunLoopRunSpecific + 420
    5   com.apple.AppKit              	0x00007fff9b95f7d4 _NSEventThread + 205
    6   libsystem_pthread.dylib       	0x00007fffb31a1aab _pthread_body + 180
    7   libsystem_pthread.dylib       	0x00007fffb31a19f7 _pthread_start + 286
    8   libsystem_pthread.dylib       	0x00007fffb31a1221 thread_start + 13
    
    Thread 7:: QThread
    0   libsystem_kernel.dylib        	0x00007fffb30ba236 poll + 10
    1   org.qt-project.QtCore         	0x00000001117404c0 qt_safe_poll(pollfd*, unsigned int, timespec const*) + 544
    2   org.qt-project.QtCore         	0x0000000111741e88 QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) + 792
    3   org.qt-project.QtCore         	0x00000001116eb171 QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) + 417
    4   org.qt-project.QtCore         	0x000000011152d4e3 QThread::exec() + 115
    5   org.qt-project.QtCore         	0x0000000111530eea QThreadPrivate::start(void*) + 362
    6   libsystem_pthread.dylib       	0x00007fffb31a1aab _pthread_body + 180
    7   libsystem_pthread.dylib       	0x00007fffb31a19f7 _pthread_start + 286
    8   libsystem_pthread.dylib       	0x00007fffb31a1221 thread_start + 13
    
    Thread 8:: feathercoin-scriptch
    0   libsystem_kernel.dylib        	0x00007fffb30b8c8a __psynch_cvwait + 10
    1   libsystem_pthread.dylib       	0x00007fffb31a296a _pthread_cond_wait + 712
    2   feathercoin-qt                	0x000000010f97b2fb boost::condition_variable::wait(boost::unique_lock<boost::mutex>&) + 91 (condition_variable.hpp:73)
    3   feathercoin-qt                	0x000000010fb5ff5f CCheckQueue<CScriptCheck>::Loop(bool) + 463 (.checkqueue.h:96)
    4   libboost_thread-mt.dylib      	0x000000011067dafc boost::(anonymous namespace)::thread_proxy(void*) + 124
    5   libsystem_pthread.dylib       	0x00007fffb31a1aab _pthread_body + 180
    6   libsystem_pthread.dylib       	0x00007fffb31a19f7 _pthread_start + 286
    7   libsystem_pthread.dylib       	0x00007fffb31a1221 thread_start + 13
    
    Thread 9:: feathercoin-scriptch
    0   libsystem_kernel.dylib        	0x00007fffb30b8c8a __psynch_cvwait + 10
    1   libsystem_pthread.dylib       	0x00007fffb31a296a _pthread_cond_wait + 712
    2   feathercoin-qt                	0x000000010f97b2fb boost::condition_variable::wait(boost::unique_lock<boost::mutex>&) + 91 (condition_variable.hpp:73)
    3   feathercoin-qt                	0x000000010fb5ff5f CCheckQueue<CScriptCheck>::Loop(bool) + 463 (.checkqueue.h:96)
    4   libboost_thread-mt.dylib      	0x000000011067dafc boost::(anonymous namespace)::thread_proxy(void*) + 124
    5   libsystem_pthread.dylib       	0x00007fffb31a1aab _pthread_body + 180
    6   libsystem_pthread.dylib       	0x00007fffb31a19f7 _pthread_start + 286
    7   libsystem_pthread.dylib       	0x00007fffb31a1221 thread_start + 13
    
    Thread 10:: feathercoin-scriptch
    0   libsystem_kernel.dylib        	0x00007fffb30b8c8a __psynch_cvwait + 10
    1   libsystem_pthread.dylib       	0x00007fffb31a296a _pthread_cond_wait + 712
    2   feathercoin-qt                	0x000000010f97b2fb boost::condition_variable::wait(boost::unique_lock<boost::mutex>&) + 91 (condition_variable.hpp:73)
    3   feathercoin-qt                	0x000000010fb5ff5f CCheckQueue<CScriptCheck>::Loop(bool) + 463 (.checkqueue.h:96)
    4   libboost_thread-mt.dylib      	0x000000011067dafc boost::(anonymous namespace)::thread_proxy(void*) + 124
    5   libsystem_pthread.dylib       	0x00007fffb31a1aab _pthread_body + 180
    6   libsystem_pthread.dylib       	0x00007fffb31a19f7 _pthread_start + 286
    7   libsystem_pthread.dylib       	0x00007fffb31a1221 thread_start + 13
    
    Thread 11:: Dispatch queue: NSCGSDisableUpdates
    0   libsystem_kernel.dylib        	0x00007fffb30b141a mach_msg_trap + 10
    1   libsystem_kernel.dylib        	0x00007fffb30b0867 mach_msg + 55
    2   com.apple.SkyLight            	0x00007fffaf372ea0 _CGSReenableUpdateForConnectionSync + 99
    3   com.apple.SkyLight            	0x00007fffaf2ffcf8 CGSUpdateManager::enable_update(unsigned long long) + 526
    4   libdispatch.dylib             	0x00007fffb2f5cf5f _dispatch_call_block_and_release + 12
    5   libdispatch.dylib             	0x00007fffb2f54128 _dispatch_client_callout + 8
    6   libdispatch.dylib             	0x00007fffb2f6ab97 _dispatch_queue_serial_drain + 896
    7   libdispatch.dylib             	0x00007fffb2f5cd41 _dispatch_queue_invoke + 1046
    8   libdispatch.dylib             	0x00007fffb2f63158 _dispatch_queue_override_invoke + 369
    9   libdispatch.dylib             	0x00007fffb2f55ee0 _dispatch_root_queue_drain + 476
    10  libdispatch.dylib             	0x00007fffb2f55cb7 _dispatch_worker_thread3 + 99
    11  libsystem_pthread.dylib       	0x00007fffb31a1736 _pthread_wqthread + 1299
    12  libsystem_pthread.dylib       	0x00007fffb31a1211 start_wqthread + 13
    
    Thread 12:
    0   libsystem_kernel.dylib        	0x00007fffb30b8c8a __psynch_cvwait + 10
    1   libsystem_pthread.dylib       	0x00007fffb31a296a _pthread_cond_wait + 712
    2   feathercoin-qt                	0x000000010fd12f4b leveldb::(anonymous namespace)::PosixEnv::BGThreadWrapper(void*) + 219 (env_posix.cc:501)
    3   libsystem_pthread.dylib       	0x00007fffb31a1aab _pthread_body + 180
    4   libsystem_pthread.dylib       	0x00007fffb31a19f7 _pthread_start + 286
    5   libsystem_pthread.dylib       	0x00007fffb31a1221 thread_start + 13
    
    Thread 13:: feathercoin-net
    0   libsystem_kernel.dylib        	0x00007fffb30b8f4e __select + 10
    1   feathercoin-qt                	0x000000010fb723c0 ThreadSocketHandler() + 2720 (net.cpp:902)
    2   feathercoin-qt                	0x000000010fb78857 void TraceThread<void (*)()>(char const*, void (*)()) + 135 (.util.h:139)
    3   libboost_thread-mt.dylib      	0x000000011067dafc boost::(anonymous namespace)::thread_proxy(void*) + 124
    4   libsystem_pthread.dylib       	0x00007fffb31a1aab _pthread_body + 180
    5   libsystem_pthread.dylib       	0x00007fffb31a19f7 _pthread_start + 286
    6   libsystem_pthread.dylib       	0x00007fffb31a1221 thread_start + 13
    
    Thread 14:: feathercoin-addcon
    0   libsystem_kernel.dylib        	0x00007fffb30b8c8a __psynch_cvwait + 10
    1   libsystem_pthread.dylib       	0x00007fffb31a296a _pthread_cond_wait + 712
    2   libboost_thread-mt.dylib      	0x000000011067e4ec boost::condition_variable::do_wait_until(boost::unique_lock<boost::mutex>&, timespec const&) + 76
    3   libboost_thread-mt.dylib      	0x000000011067e89f boost::this_thread::hiden::sleep_for(timespec const&) + 191
    4   feathercoin-qt                	0x000000010fb7660d ThreadOpenAddedConnections() + 2349 (list:555)
    5   feathercoin-qt                	0x000000010fb78857 void TraceThread<void (*)()>(char const*, void (*)()) + 135 (.util.h:139)
    6   libboost_thread-mt.dylib      	0x000000011067dafc boost::(anonymous namespace)::thread_proxy(void*) + 124
    7   libsystem_pthread.dylib       	0x00007fffb31a1aab _pthread_body + 180
    8   libsystem_pthread.dylib       	0x00007fffb31a19f7 _pthread_start + 286
    9   libsystem_pthread.dylib       	0x00007fffb31a1221 thread_start + 13
    
    Thread 15:: feathercoin-opencon
    0   libsystem_kernel.dylib        	0x00007fffb30b8c8a __psynch_cvwait + 10
    1   libsystem_pthread.dylib       	0x00007fffb31a296a _pthread_cond_wait + 712
    2   libboost_thread-mt.dylib      	0x000000011067e4ec boost::condition_variable::do_wait_until(boost::unique_lock<boost::mutex>&, timespec const&) + 76
    3   libboost_thread-mt.dylib      	0x000000011067e89f boost::this_thread::hiden::sleep_for(timespec const&) + 191
    4   feathercoin-qt                	0x000000010fb74e5a ThreadOpenConnections() + 650 (net.cpp:1308)
    5   feathercoin-qt                	0x000000010fb78857 void TraceThread<void (*)()>(char const*, void (*)()) + 135 (.util.h:139)
    6   libboost_thread-mt.dylib      	0x000000011067dafc boost::(anonymous namespace)::thread_proxy(void*) + 124
    7   libsystem_pthread.dylib       	0x00007fffb31a1aab _pthread_body + 180
    8   libsystem_pthread.dylib       	0x00007fffb31a19f7 _pthread_start + 286
    9   libsystem_pthread.dylib       	0x00007fffb31a1221 thread_start + 13
    
    Thread 16:: feathercoin-msghand
    0   libsystem_kernel.dylib        	0x00007fffb30b8c8a __psynch_cvwait + 10
    1   libsystem_pthread.dylib       	0x00007fffb31a296a _pthread_cond_wait + 712
    2   libboost_thread-mt.dylib      	0x000000011067e4ec boost::condition_variable::do_wait_until(boost::unique_lock<boost::mutex>&, timespec const&) + 76
    3   libboost_thread-mt.dylib      	0x000000011067e89f boost::this_thread::hiden::sleep_for(timespec const&) + 191
    4   feathercoin-qt                	0x000000010fb774bf ThreadMessageHandler() + 1919 (vector:449)
    5   feathercoin-qt                	0x000000010fb78857 void TraceThread<void (*)()>(char const*, void (*)()) + 135 (.util.h:139)
    6   libboost_thread-mt.dylib      	0x000000011067dafc boost::(anonymous namespace)::thread_proxy(void*) + 124
    7   libsystem_pthread.dylib       	0x00007fffb31a1aab _pthread_body + 180
    8   libsystem_pthread.dylib       	0x00007fffb31a19f7 _pthread_start + 286
    9   libsystem_pthread.dylib       	0x00007fffb31a1221 thread_start + 13
    
    Thread 17:: feathercoin-dumpaddr
    0   libsystem_kernel.dylib        	0x00007fffb30b8c8a __psynch_cvwait + 10
    1   libsystem_pthread.dylib       	0x00007fffb31a296a _pthread_cond_wait + 712
    2   libboost_thread-mt.dylib      	0x000000011067e4ec boost::condition_variable::do_wait_until(boost::unique_lock<boost::mutex>&, timespec const&) + 76
    3   libboost_thread-mt.dylib      	0x000000011067e89f boost::this_thread::hiden::sleep_for(timespec const&) + 191
    4   feathercoin-qt                	0x000000010fb78bb5 void LoopForever<void (*)()>(char const*, void (*)(), long long) + 245 (.util.h:533)
    5   libboost_thread-mt.dylib      	0x000000011067dafc boost::(anonymous namespace)::thread_proxy(void*) + 124
    6   libsystem_pthread.dylib       	0x00007fffb31a1aab _pthread_body + 180
    7   libsystem_pthread.dylib       	0x00007fffb31a19f7 _pthread_start + 286
    8   libsystem_pthread.dylib       	0x00007fffb31a1221 thread_start + 13
    
    Thread 18:: feathercoin-wallet
    0   libsystem_kernel.dylib        	0x00007fffb30b8c8a __psynch_cvwait + 10
    1   libsystem_pthread.dylib       	0x00007fffb31a296a _pthread_cond_wait + 712
    2   libboost_thread-mt.dylib      	0x000000011067e4ec boost::condition_variable::do_wait_until(boost::unique_lock<boost::mutex>&, timespec const&) + 76
    3   libboost_thread-mt.dylib      	0x000000011067e89f boost::this_thread::hiden::sleep_for(timespec const&) + 191
    4   feathercoin-qt                	0x000000010fc81ad6 ThreadFlushWalletDB(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) + 294 (walletdb.cpp:816)
    5   libboost_thread-mt.dylib      	0x000000011067dafc boost::(anonymous namespace)::thread_proxy(void*) + 124
    6   libsystem_pthread.dylib       	0x00007fffb31a1aab _pthread_body + 180
    7   libsystem_pthread.dylib       	0x00007fffb31a19f7 _pthread_start + 286
    8   libsystem_pthread.dylib       	0x00007fffb31a1221 thread_start + 13
    
    Thread 19:
    0   libsystem_kernel.dylib        	0x00007fffb30b8c8a __psynch_cvwait + 10
    1   libsystem_pthread.dylib       	0x00007fffb31a296a _pthread_cond_wait + 712
    2   feathercoin-qt                	0x000000010fbd3f1b boost::asio::detail::task_io_service::do_run_one(boost::asio::detail::scoped_lock<boost::asio::detail::posix_mutex>&, boost::asio::detail::task_io_service_thread_info&, boost::system::error_code const&) + 475 (posix_event.hpp:79)
    3   feathercoin-qt                	0x000000010fbd39f5 boost::asio::detail::task_io_service::run(boost::system::error_code&) + 309 (task_io_service.ipp:153)
    4   feathercoin-qt                	0x000000010fbce249 boost::asio::io_service::run() + 57 (error_code.hpp:365)
    5   libboost_thread-mt.dylib      	0x000000011067dafc boost::(anonymous namespace)::thread_proxy(void*) + 124
    6   libsystem_pthread.dylib       	0x00007fffb31a1aab _pthread_body + 180
    7   libsystem_pthread.dylib       	0x00007fffb31a19f7 _pthread_start + 286
    8   libsystem_pthread.dylib       	0x00007fffb31a1221 thread_start + 13
    
    Thread 0 crashed with X86 Thread State (64-bit):
      rax: 0x00007f82cac3abf0  rbx: 0x15856984b0363bc8  rcx: 0x0000000000000003  rdx: 0x0000000000000000
      rdi: 0x15856984b0363bc8  rsi: 0x00007fff5028b688  rbp: 0x00007fff5028b630  rsp: 0x00007fff5028b620
       r8: 0x0000000000000000   r9: 0x00007f82cac35e60  r10: 0x0000000000000001  r11: 0x0000000000000001
      r12: 0x10cd9016d0fb00f3  r13: 0x00007f82cad62bd0  r14: 0x00007fff5028b688  r15: 0x00007f82cac3a8f0
      rip: 0x000000011098250a  rfl: 0x0000000000010206  cr2: 0x000000010fab3b20
      
    Logical CPU:     2
    Error Code:      0x00000000
    Trap Number:     13
    
    

  • Moderators | Tip Wellenreiter

    @aciddude said in [DEV] MacOS - Build FeathercoinD v0.9.3.1:



    So the above worked to remove the error:

    Dynamic session lookup supported but failed: launchd did not provide a socket path, verify that org.freedesktop.dbus-session.plist is loaded!
    

    now it crashes with just the Segfault 11

    acids-MacBook-Pro:qt acid$ DYLD_LIBRARY_PATH=/usr/local/Cellar/boost155/1.55.0_1/lib/ ./feathercoin-qt
    Segmentation fault: 11
    

    Will post the OSX crash log next.

    It was worth a try, at least. 😉


  • Moderators | Tip AcidD

    All my investigation is pointing to this:

    in the newer versions of Xcode and MacOS, the compiler/command-line tools no longer include GCC. It has sym links or aliases for gcc and g++ that just map back to Apples clang or clang++ …and while Apple claim it is the same, it isnt.

    So I believe to compile on the newer MacOS’ - some of the major dependencies need to be recompiled with Apples clang.

    It seems that boost is the main culprit and possibily QT as well. The problem is a “catch 22” you cant use things that are built with gcc along side things built with clang…or so google tells me…it all has to be built with the same compiler. I also have no idea what compiler homebrew uses to do their builds/bottles but I believe it’s gcc.

    so I reckon if I can get gcc installed without xcode and compile everything with that, it should work…I think.

    Another issue is that with MacOS Sierra specifically, it barely supports QT 5.7.0 - QT 5.6.0 or lower isn’t an option…

    So in my head:
    1 - get GCC installed in a clean environment
    2 - attempt to rebuild boost with 32 and 64 bit binaries
    3 - try to build FTC and everything else with GCC.


  • Regular Member | Tip ghostlander

    The last Apple GCC was v4.2.1. Newer releases directly from the GCC developers don’t support some Apple specific things which are required to compile Qt. It’s still possible to pull v4.2.1 from an old Xcode release and install it manually.


  • Moderators | Tip AcidD

    @ghostlander said in [DEV] MacOS - Build FeathercoinD v0.9.3.1:

    The last Apple GCC was v4.2.1. Newer releases directly from the GCC developers don’t support some Apple specific things which are required to compile Qt. It’s still possible to pull v4.2.1 from an old Xcode release and install it manually.

    Thanks @ghostlander - You being a developer…do you have any recommendations ?


  • Moderators | Tip AcidD

    Update:
    I’ve gone as far back as OSX 10.9.5 inside Vmware.

    I followed Lizhi’s instructions for building Feathercoin-qt …

    without installing xcode, I was able to build everything, the build log looked similar to when you do it on Ubuntu or Centos (minimal warnings, or the warnings I’m used to seeing)

    Still though, QT crashes with a Segfault 11.

    feathercoind runs perfectly, starts syncing the blockchain and all.


  • Moderators | Tip AcidD

    So I’ve managed to build the Wallet on MacOS 10.9.5

    see screenshot here: https://i.snag.gy/ap6m4X.jpg

    I’ve even managed to create a Feathercoin-qt.app (see the screenshot) - the APP is 61MB and I believe it has all the files needed for it to run…unfortunately running this on another mac, I get this error:

    Dyld Error Message:
      Library not loaded: libboost_system-mt.dylib
      Referenced from: /Users/Apple2/Desktop/Feathercoin-Qt-0.9.3.1.app/Contents/Frameworks/libboost_filesystem-mt.dylib
      Reason: image not found
    

    if I use otool on the qt binary it shows me what dylibs Feathercoin-QT is looking for.

    Mac-Admin:~ admin$ otool -L Feathercoin-Qt-0.9.3.1.app/Contents/MacOs/feathercoin-qt
    Feathercoin-Qt-0.9.3.1.app/Contents/MacOs/feathercoin-qt:
            @loader_path/../Frameworks/libiconv.2.dylib (compatibility version 7.0.0, current version 7.0.0)
            @loader_path/../Frameworks/libboost_system-mt.dylib (compatibility version 0.0.0, current version 0.0.0)
            @loader_path/../Frameworks/libboost_filesystem-mt.dylib (compatibility version 0.0.0, current version 0.0.0)
            @loader_path/../Frameworks/libboost_program_options-mt.dylib (compatibility version 0.0.0, current version 0.0.0)
            @loader_path/../Frameworks/libboost_thread-mt.dylib (compatibility version 0.0.0, current version 0.0.0)
            @loader_path/../Frameworks/libboost_chrono-mt.dylib (compatibility version 0.0.0, current version 0.0.0)
            @loader_path/../Frameworks/QtNetwork (compatibility version 5.5.0, current version 5.5.1)
            @loader_path/../Frameworks/QtPrintSupport (compatibility version 5.5.0, current version 5.5.1)
            @loader_path/../Frameworks/QtWidgets (compatibility version 5.5.0, current version 5.5.1)
            @loader_path/../Frameworks/QtGui (compatibility version 5.5.0, current version 5.5.1)
            @loader_path/../Frameworks/QtCore (compatibility version 5.5.0, current version 5.5.1)
            /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation (compatibility version 300.0.0, current version 1056.16.0)
            /System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices (compatibility version 1.0.0, current version 48.0.0)
            /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit (compatibility version 45.0.0, current version 1265.21.0)
            @loader_path/../Frameworks/libprotobuf.11.dylib (compatibility version 12.0.0, current version 12.0.0)
            @loader_path/../Frameworks/libdb_cxx-4.8.dylib (compatibility version 0.0.0, current version 0.0.0)
            @loader_path/../Frameworks/libqrencode.3.dylib (compatibility version 8.0.0, current version 8.4.0)
            @loader_path/../Frameworks/libssl.1.0.0.dylib (compatibility version 1.0.0, current version 1.0.0)
            @loader_path/../Frameworks/libcrypto.1.0.0.dylib (compatibility version 1.0.0, current version 1.0.0)
            /usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 120.0.0)
            /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1197.1.1)
            /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 855.17.0)
            /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices (compatibility version 1.0.0, current version 59.0.0)
            /usr/lib/libobjc.A.dylib (compatibility version 1.0.0, current version 228.0.0)
    

    The @loader_path points to my Frameworks directory inside the app.


  • Moderators | Tip AcidD

    Fyi I had to build the Feathercoin-qt.App Manually as doing a “make deploy” shows the below

    Mac-Admin:FTC0931 admin$ make deploy
    ./contrib/macdeploy/macdeployqtplus Feathercoin-Qt.app -add-qt-tr da,de,es,hu,ru,uk,zh_CN,zh_TW -dmg -fancy ./contrib/macdeploy/fancy.plist -verbose 2
    + Removing old dist folder +
    + Copying source bundle +
    + Deploying frameworks +
    Processing libboost_system.dylib ...
    Error: No file at libboost_system.dylib
    Traceback (most recent call last):
      File "./contrib/macdeploy/macdeployqtplus", line 583, in <module>
        sys.exit(ret)
    NameError: name 'ret' is not defined
    make: *** [Feathercoin-Qt.dmg] Error 1
    
    

    I swear I was able to create a static 160MB file on Centos for Feathercoin that included everything needed for it to run as “portable” or “standalone” I just cant remember the switches…

    LDFLAGS=-static doesn’t seem to do anything.


  • Moderators | Tip AcidD

    Ok so I believe …as per this http://stackoverflow.com/questions/5259249/creating-static-mac-os-x-c-build

    that we cannot use -static since OSX doesnt like/support it.


  • Moderators | Tip wrapper

    Can we get away without the static build?


  • Moderators | Tip AcidD

    Hi All,

    Finally!! after many moons and sleepless nights, I’ve done it!!

    I have a Static Binary that worked on a clean MacOS Sierra install…no other dependancies or software were installed on the test machine.

    This was build with MacOS Sierra, Boost155, Protobuf260, QT 5.7.0.

    Full 64-bit, none of this going back generations of OS’s just to get it to build…No nonsense from Acid!

    EDIT========The below link is for the Feathercoin-Qt.app file only.
    Download link here:
    https://ufile.io/09c25


  • Moderators | Tip AcidD

    Love a good screenshot!

    https://i.snag.gy/wDoxJk.jpg