Dear Sergei,

After spent a lot of time on try-and-error method, I find out a solution.
This issue happened because it conflicts to berkeleyDB db.h and db_cxx.h 
include files, so you just remove these two files before cross compiling 
mariaDB.
It's work but this is not my solution.

Because my mariaDB include path is set to sysroot/include and 
sysroot/usr/include, and my berkeleyDB installed path is also set to 
"sysroot/usr" (sysroot/usr/include, sysroot/usr/lib/, ..), I just correct my 
berkeleyDB installed path from "sysroot/usr" to "sysroot/usr/local".
It can solve data structure conflict issue between berkeleyDB and mariaDB, like 
DB_TXN ...


Best Regards,
Johnson

-----Original Message-----
From: Sergei Golubchik [mailto:[email protected]] 
Sent: Thursday, September 03, 2015 9:00 PM
To: Johnson Cheng
Cc: [email protected]
Subject: Re: [Maria-discuss] Cross compile issue

Hi, Johnson!

On Sep 03, Johnson Cheng wrote:
> Dear Sergei,
> 
> Thanks for your reply.
> I am not sure what it happened because it is disappeared when I 
> re-cross-compile mariaDB at another new environment.
> Actually I am dig out a problem about DB_TXN error message as below,
>   [ 80%] Building CXX object 
> storage/tokudb/CMakeFiles/tokudb.dir/ha_tokudb.cc.o
>   In file included from 
> /home/johnson/SanSoft/model/Phoenix_130313-0901/Package/maria/mariadb-10.0.21/storage/tokudb/ha_tokudb.cc:122:0:
>   
> /home/johnson/SanSoft/model/Phoenix_130313-0901/Package/maria/mariadb-10.0.21/storage/tokudb/hatoku_defines.h:
>  In function int txn_begin(DB_ENV*, DB_TXN*, DB_TXN**, uint32_t, THD*):
>   
> /home/johnson/SanSoft/model/Phoenix_130313-0901/Package/maria/mariadb-10.0.21/storage/tokudb/hatoku_defines.h:407:19:
>  error: DB_TXN has no member named ‘set_client_id
>          this_txn->set_client_id(this_txn, thd_get_thread_id(thd));
>                    ^
> Fortunately, I find out the root cause because I have installed BerkeleyDB at 
> first.
> It seems mariaDB and BerkeleyDB can't co-exist.

Yes, TokuDB uses uses data types with the same name.
But they can coexist (they do on my laptop), so that must be something related 
to cross compilation again, may be cmake gets include paths incorrectly...

> Now I can cross compile mariaDB every time, and I am doing the final fine 
> tune.

Congrats!

Regards,
Sergei

_______________________________________________
Mailing list: https://launchpad.net/~maria-discuss
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~maria-discuss
More help   : https://help.launchpad.net/ListHelp

Reply via email to