geobra / harbour-shmoose

XMPP Client for Sailfish OS
Other
34 stars 14 forks source link

Any news harbour-shmoose ?? #11

Closed ghost closed 7 years ago

ghost commented 7 years ago

Add:

under the line 'env.SConscript = SConscript' on line 14

geobra commented 7 years ago

Development is slowed down currently because of lots of work at my real job. But I will speed up again in few month.

You are right, the documentation is not very good at the point, which file to patch. Use this one: BuildTools/SCons/SConstruct

ghost commented 7 years ago

I get this Error SailfishOSSDK-Beta-1701-1

CXX Swiften/Session/SessionStream.o CXX Swiften/Session/BasicSessionStream.o CXX Swiften/Session/BOSHSessionStream.o armv7hl-meego-linux-gnueabi-g++: internal compiler error: Killed (program cc1plus) Please submit a full bug report, with preprocessed source if appropriate. See http://bugs.merproject.org/ for instructions. scons: *** [Swiften/Session/BOSHSessionStream.o] Error 4 scons: building terminated because of errors.

geobra commented 7 years ago

That's an error from the MER virtual machine. Increase memory (RAM) of the VM to 4 GB and try again.

ghost commented 7 years ago

thanks you very much.. i will try.

ghost commented 7 years ago

Warning: Qt installation is missing packages. The following are required: Qt5Core Qt5WebKit Qt5Gui Qt5Widgets Qt5WebKitWidgets Qt5Multimedia Qt5X11Extras Qt5DBus Qt5Network

Build Configuration

Projects: Limber Swiften Sluift

XML Parsers: Expat TLS Support: OpenSSL DNSSD Support: Disabled

scons: done reading SConscript files. scons: Building targets ... CC 3rdParty/LibMiniUPnPc/src/miniupnpc/miniupnpc.o 3rdParty/LibMiniUPnPc/src/miniupnpc/miniupnpc.c:77:8: error: redefinition of 'struct ip_mreqn' struct ip_mreqn ^ In file included from /usr/include/netinet/in.h:37:0, from 3rdParty/LibMiniUPnPc/src/miniupnpc/miniupnpc.c:55: /usr/include/bits/in.h:119:8: note: originally defined here struct ip_mreqn ^ scons: *** [3rdParty/LibMiniUPnPc/src/miniupnpc/miniupnpc.o] Error 1 scons: building terminated because of errors.

geobra commented 7 years ago

That error I only got one time. On following new builds with fresh source trees, I never run into this problem again.

Comment out the complete struct ip_mreqn in 3rdParty/LibMiniUPnPc/src/miniupnpc/miniupnpc.c:77

ghost commented 7 years ago

i get this error with fresh source trees , also i did this > 3rdParty/LibMiniUPnPc/src/miniupnpc/miniupnpc.c:77 #struct ip_mreqn

CC 3rdParty/LibIDN/src/gl/c-strcasecmp.o CC 3rdParty/LibIDN/src/gl/c-strncasecmp.o CC 3rdParty/LibIDN/src/gl/unistr/u8-check.o CC 3rdParty/LibMiniUPnPc/src/miniupnpc/igd_desc_parse.o CC 3rdParty/LibMiniUPnPc/src/miniupnpc/miniupnpc.o 3rdParty/LibMiniUPnPc/src/miniupnpc/miniupnpc.c:77:2: error: invalid preprocessing directive #struct

struct ip_mreqn

^ 3rdParty/LibMiniUPnPc/src/miniupnpc/miniupnpc.c:78:1: error: expected identifier or '(' before '{' token { ^ scons: *** [3rdParty/LibMiniUPnPc/src/miniupnpc/miniupnpc.o] Error 1 scons: building terminated because of errors.

ghost commented 7 years ago

All the help is much appreciated = )

geobra commented 7 years ago

Make sure your commented code looks like this:

//struct ip_mreqn
//{
//    struct in_addr  imr_multiaddr;      /* IP multicast address of group */
//    struct in_addr  imr_address;        /* local IP address of interface */
//    int     imr_ifindex;        /* Interface index */
//};
ghost commented 7 years ago

ok i get SUCCESS build on scons = ) but what is the next ? [mersdk@SailfishSDK harbour-shmoose]$ mb2 -t SailfishOS-armv7hl build

Building target platforms: armv7hl-meego-linux Building for target armv7hl-meego-linux Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.t5RrPI

RPM build errors: Bad exit status from /var/tmp/rpm-tmp.t5RrPI (%build) [mersdk@SailfishSDK harbour-shmoose]$

ghost commented 7 years ago

[mersdk@SailfishSDK harbour-shmoose]$ mb2 -t SailfishOS-armv7hl build Swiften

Building target platforms: armv7hl-meego-linux Building for target armv7hl-meego-linux Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.RRkoHg

RPM build errors: Bad exit status from /var/tmp/rpm-tmp.RRkoHg (%build) [mersdk@SailfishSDK harbour-shmoose]$

geobra commented 7 years ago

Move the swift folder back to its original location. Then make sure the path to swift in the shmosse.pro file reflacts your setup. I did a host x86 and arm build of the swift library. The path in the original pro file may be different then in you locale configuration.

ghost commented 7 years ago

.

ghost commented 7 years ago

RPM build errors: Bad exit status from /var/tmp/rpm-tmp.DHjmdT (%build) [mersdk@SailfishSDK harbour-shmoose]$

geobra commented 7 years ago

You are almost done :-). It's just the last step, the linking of the binary, which fails. After that, the rpm packages gets build.

As the error message says, the swift library has to be build with 'Position Independent Code' (-fPIC). Because of this, one has to patch the swift library in the first step (modify the SConstruct file).

What could be wrong on your side:

As you now have all items of the puzzle in place, I suggest you do a rm -rf on your build directory and restart from scratch with a clean setup.

ghost commented 7 years ago

geobra: Can you teach me how build with Position Independent Code ? i am learnig programing , i am yet green of this : /

geobra commented 7 years ago

Of course. Look at your first questions and my answer on it in this thread.

ghost commented 7 years ago
ghost commented 7 years ago

z -lssl -lcrypto -lxml2 -lresolv -ldl -lm -lc -lstdc++ -liphb -pie -rdynamic -lsailfishapp -lmdeclarativecache5 -lQt5Quick -lQt5Gui -lQt5Qml -lQt5Network -lQt5Sql -lQt5Xml -lQt5Concurrent -lQt5Core -lGLESv2 -lpthread /opt/cross/bin/armv7hl-meego-linux-gnueabi-ld: cannot find -lxml2 collect2: error: ld returned 1 exit status make: *** [shmoose] Error 1 error: Bad exit status from /var/tmp/rpm-tmp.QKCFCh (%build)

RPM build errors: Bad exit status from /var/tmp/rpm-tmp.QKCFCh (%build)

ghost commented 7 years ago
ghost commented 7 years ago

ence.o moc_HttpFileuploader.o moc_HttpFileUploadManager.o moc_DownloadManager.o moc_FileModel.o moc_System.o moc_IpHeartBeatWatcher.o moc_MucManager.o -Lswift-3.0-arm/Swiften -Lswift-3.0-arm/3rdParty/Boost -lSwiften -lSwiften_Boost -lrt -lz -lssl -lcrypto -lxml2 -lresolv -ldl -lm -lc -lstdc++ -liphb -pie -rdynamic -lsailfishapp -lmdeclarativecache5 -lQt5Quick -lQt5Gui -lQt5Qml -lQt5Network -lQt5Sql -lQt5Xml -lQt5Concurrent -lQt5Core -lGLESv2 -lpthread /opt/cross/bin/armv7hl-meego-linux-gnueabi-ld: swift-3.0-arm/Swiften/libSwiften.a(ExpatParser.o): undefined reference to symbol 'XML_SetUserData' /srv/mer/targets/SailfishOS-armv7hl/usr/lib/libexpat.so.1: error adding symbols: DSO missing from command line collect2: error: ld returned 1 exit status make: *** [shmoose] Error 1 error: Bad exit status from /var/tmp/rpm-tmp.74fLNZ (%build)

RPM build errors: Bad exit status from /var/tmp/rpm-tmp.74fLNZ (%build) [mersdk@SailfishSDK harbour-shmoose]$

ghost commented 7 years ago

[mersdk@SailfishSDK ~]$ sb2 -t SailfishOS-armv7hl -m sdk-install -R zypper in expat-devel Loading repository data... Reading installed packages... 'expat-devel' is already installed. No update candidate for 'expat-devel-2.1.0-1.1.4.armv7hl'. The highest available version is already installed. Resolving package dependencies...

Nothing to do. [mersdk@SailfishSDK ~]$

ghost commented 7 years ago

.

ghost commented 7 years ago
ghost commented 7 years ago

thank you so so much geobra for the full support.

geobra commented 7 years ago

Great that you finally had success on building shmoose. Please be aware of the fact that the database format has changed due to some new features. So if you do an upgrade from a previous version, you won't see your 'old' messages any longer with this new version.

ghost commented 7 years ago

ok.