Author

Topic: Re: errors compiling OSX qt . Qt libraries not deployed in static compile (Read 1442 times)

newbie
Activity: 14
Merit: 0
nice i had the same issue with the notification, it appear is the code is written for old architecture ,, so i had to update the notification code as well as adding the notification handlers files.
legendary
Activity: 1204
Merit: 1000
to your stations, man the pineapples!!!
now the next problem is a static build using QtPrintSupport library

macdeployqt seems to package QtCore.framework and QtGui.framework but not
QtPrintSupport.framework

just wondering how to go about this.
can i just copy the folders into the qt.app and use install_name_tool akin to this

Code:
install_name_tool -change "/opt/local/lib/db48/libdb_cxx-4.8.dylib" "@executable_path/../Frameworks/libdb_cxx-4.8.dylib" deploy/Peerunity-Qt.app/Contents/MacOS/Peerunity-Qt

this is where it's looking for the libraries. it's moved all the other libs over ok. just ignored QtPrintSupport QtWidgets and QtNetwork

Code:
       0x10d556000 -        0x10d58bfff +org.qt-project.QtPrintSupport (5.5 - 5.5.0) <5116A322-CA11-3C44-9029-81FB53B51F3F> /Users/USER/*/QtPrintSupport.framework/Versions/5/QtPrintSupport
       0x10d5b4000 -        0x10dac8ff7 +org.qt-project.QtWidgets (5.5 - 5.5.0) /Users/USER/*/QtWidgets.framework/Versions/5/QtWidgets
       0x10dc8c000 -        0x10e11fff7 +org.qt-project.QtGui (5.5 - 5.5.0) /Users/USER/*/QtGui.framework/Versions/5/QtGui
       0x10e25f000 -        0x10e76dfff +org.qt-project.QtCore (5.5 - 5.5.0) /Users/USER/*/QtCore.framework/Versions/5/QtCore
       0x10e867000 -        0x10e983fff +org.qt-project.QtNetwork (5.5 - 5.5.0) /Users/USER/*/QtNetwork.framework/Versions/5/QtNetwork



EDIT.  SEEMS A QT VERSION ISSUE.

it looks ok using Qt5.3.2.

it seems like a Qt5.5.0 bug
https://bugreports.qt.io/browse/QTBUG-47868
legendary
Activity: 1204
Merit: 1000
to your stations, man the pineapples!!!

this commit to blackcoin also. seems to work now Cheesy

https://github.com/rat4/blackcoin/commit/7d766db4014403c4d1562da13247262a5c76e03a



it's strange though, empocredits is a clone of nanas.
and there are other similar coins, and i had no luck with compiling any of them.


but i see that https://github.com/cryptbit/cryptbit has at least this last change implemented.
legendary
Activity: 1204
Merit: 1000
to your stations, man the pineapples!!!

yeh i've read a lot of threads over the last few weeks Cheesy

the impression i get is that this problem has to do with qt version (tbh i cant really work out which version does what), i think this needs >5 at least

and boost, i've noticed both qt and boost seem to have updated a few times and broke earlier builds


..


heh i'm trying to go back and work out how i got to where i was ..

in addition to the changes in my quote above, i also remembered i changed notificator.h and .cpp

basically this commit from darkcoin
https://github.com/zone117x/darkcoin/commit/896c509dac9179645e94c24768e58e390450fdb7#diff-e442fb9c2fb920f5b5ba588b3e81cce9

.i've crossed out some stuff from earlier post as they dont seem necessary

legendary
Activity: 980
Merit: 1001
aka "whocares"
Compiling Mac is not an easy task, I think the problems started a while back. There are actually a lot of threads on BCT and other forums with similar problems and most people have had to go back to earlier OS X to get it working correctly.  The problem now is that if you go back to earlier OS X systems using Brew or whatever doesn't work the same.  

Gavin Andersen has actually addressed the issue with compiling on Macs and it is still a pain in the ass.  

Here are a few links to make help out-

http://gavintech.blogspot.com/2011/11/deploying-bitcoin-qt-on-osx.html

this is a fun read- lol

https://bitcointalk.org/index.php?topic=337294.0;all

probably helpful

https://bitcoin.org/en/release/v0.9.0

and the list goes on and on--

good luck

btw-- the issue is with the 32 and 64 bit architecture
legendary
Activity: 1204
Merit: 1000
to your stations, man the pineapples!!!
Code:
Undefined symbols for architecture x86_64:
  "qt_mac_execute_apple_script(QString const&, AEDesc*)", referenced from:
      Notificator::notifyGrowl(Notificator::Class, QString const&, QString const&, QIcon const&) in notificator.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

i got past the above error by copying the appropriate files and adding these lines to the .pro

macx:HEADERS += src/qt/macdockiconhandler.h src/qt/macnotificationhandler.h
macx:OBJECTIVE_SOURCES += src/qt/macdockiconhandler.mm src/qt/macnotificationhandler.mm

also by adding

macx:QMAKE_CFLAGS_THREAD += -pthread -no-integrated-as
macx:QMAKE_LFLAGS_THREAD += -pthread -no-integrated-as
macx:QMAKE_CXXFLAGS_THREAD += -pthread -no-integrated-as



however it ends with compiling a non -functioning Qt.
giving the error

Code:
Assertion failed: (!pthread_mutex_lock(&m)), function lock, file /opt/local/include/boost/thread/pthread/recursive_mutex.hpp, line 110.


edit. also changed notificator.h and .cpp
see https://github.com/zone117x/darkcoin/commit/896c509dac9179645e94c24768e58e390450fdb7#diff-e442fb9c2fb920f5b5ba588b3e81cce9
legendary
Activity: 1288
Merit: 1036
This is a linker problem. My guess would be that your Mac OSX version is conflicting somehow with your requirement to build with the x86_64 architecture.
tyz
legendary
Activity: 3346
Merit: 1530
As a MacOSX user, it pretty seems to me that the software is not written for your architecture. You are probably using 32bit and the software is designed for 64bit or vice-versa.
legendary
Activity: 1204
Merit: 1000
to your stations, man the pineapples!!!
i'm trying to compile XEMP EmpoEx coin using qt5
and have hit an error

anyone have any suggestions ?

Code:
Undefined symbols for architecture x86_64:
  "qt_mac_execute_apple_script(QString const&, AEDesc*)", referenced from:
      Notificator::notifyGrowl(Notificator::Class, QString const&, QString const&, QIcon const&) in notificator.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)


Jump to: