Failed build: QxOrm 1.2.5/Boost 1.53.0 on OS X 10.8

Forum for posting problems using QxOrm library

Failed build: QxOrm 1.2.5/Boost 1.53.0 on OS X 10.8

Postby Skh1002 » Wed Jun 26, 2013 9:11 pm

Hi everyone,

I am building QxOrm 1.2.5 (taken from the official download page) and so far I haven't succeeded. I have Qt 5.1.0 beta and 5.0.2 both installed and working properly, I also compiled and installed Boost 1.53.0 (I did not run the entire test suite on it, but quite a few tests that I did run were passed except long double). Now, when I try building QxOrm either with qmake or with Qt Creator, I get a missing header file error:

/Volumes/Data/Serge/Developer/QxOrm/include/QxSerialize/boost/portable_binary/portable_iarchive.hpp:88: error: 'boost/spirit/home/support/detail/integer/endian.hpp' file not found
#include <boost/spirit/home/support/detail/integer/endian.hpp>
^


I have checked out the Boost include folder and indeed, this file is absent. I wonder how to rectify this problem. Is this because QxOrm needs an earlier version of Boost? I did not find any information on version compatibility other than that it can't be older than 1.38.

Thanks in advance for help.
Skh1002
 
Posts: 4
Joined: Fri Jun 21, 2013 10:31 pm

Re: Failed build: QxOrm 1.2.5/Boost 1.53.0 on OS X 10.8

Postby qxorm » Thu Jun 27, 2013 7:45 am

Hi,

First : QxOrm works fine with boost 1.53 !

I just tested and I have the same problem with boost 1.53 : by default, this option (portable_binary) is not enabled in QxOrm.pri file (and is not officialy supported by boost).
So, you have modified QxOrm.pri file to enable this option.

My advice : if you just start working with QxOrm library, keep default parameters in QxOrm.pri file (just change boost directory + boost lib name if necessary).
Then, test all samples projects available in ./test/ directory of QxOrm package to check your dev environment...

If you really need portable_binary feature (FYI, XML serialization is portable), just change your boost version (it should work with boost 1.4X version).

I will fix this issue with boost 1.53 and portable_binary in the next release of QxOrm library...
qxorm
Site Admin
 
Posts: 483
Joined: Mon Apr 12, 2010 7:45 am

Re: Failed build: QxOrm 1.2.5/Boost 1.53.0 on OS X 10.8

Postby Skh1002 » Thu Jun 27, 2013 9:17 pm

Hi there,

I have, indeed, enabled the portable_binary option in QxOrm.pri file (since I will eventually need to support platforms with different endianness). After cleaning the project and disabling this option, I no longer have this error. In the end, after fiddling some more with the .pri file I was able to build the library and the server/client test, which seem to run correctly. Thank you for your very effective advice.

Meanwhile, I still have a question regarding QxOrm.pri serialisation module options. My Boost build contains the following libraries: libboost_serialization.a and libboost_serialization.dylib. However, when I specify their names (with or without the extension) for the QX_BOOST_LIB_SERIALIZATION_... variables I get a linker error (cannot find file for -llibboost_serialization). I tried many tricks, and in the end what seems to work is stripping the 'lib' part from the file name, so it becomes boost_serialization. This looks contrary to common logic and I wonder why it is so.

Thank you in advance.
Skh1002
 
Posts: 4
Joined: Fri Jun 21, 2013 10:31 pm

Re: Failed build: QxOrm 1.2.5/Boost 1.53.0 on OS X 10.8

Postby qxorm » Fri Jun 28, 2013 7:53 am

I was able to build the library and the server/client test, which seem to run correctly.

Great !

and in the end what seems to work is stripping the 'lib' part from the file name

Yes, it seems that is the way to do that for UNIX platform.
I'm not an expert on UNIX systems, so maybe you could have an answer using google (or other :) ) : "unix shared library remove lib prefix"...
qxorm
Site Admin
 
Posts: 483
Joined: Mon Apr 12, 2010 7:45 am


Return to QxOrm - Help

Who is online

Users browsing this forum: No registered users and 5 guests

cron