← Back to team overview

maria-developers team mailing list archive

Re: Build and/or support of MariaDB on AIX

 

your outoput contains "#error directive: threadpool is not available
on this platform" which clearly states you must not configure
"-DHAVE_POOL_OF_THREADS" on your platform

Am 23.06.2013 12:12, schrieb Frank Fegert:
> i'm currently running MySQL 5.1.62 on IBM Power LPARs with AIX 6.1. I'll
> spare you the discussion of why AIX and not Linux and will just say "it
> is what it is ATM" ;-) Anyhow, with things proceeding as they are, i guess
> chances are that Oracle and IBM are not going to get any more friendly
> with each other, so i'm looking for an alternative way to move forward.
> That being said, i'd like to get an idea of the general feeling around
> the MariaDB development team on the support of non-(Linux|*BSD|Windows)
> platforms. Are there currently any plans? Would you be willing to invest
> some time in helping to get MariaDB running on AIX?
> 
> Right now, i can successfully build stock MySQL 5.1.70 with some minor
> patches and stock MySQL 5.5.32 with some minor patches and the option
> "DWITHOUT_PERFSCHEMA_STORAGE_ENGINE=ON". With performance schema enabled
> the build fails at linking the unittests in "storage/perfschema/unittest/",
> see below for a full error output. The MariaDB 5.5.31 build does currently
> not even go that far, if fails earlier on the threadpool code, see below.
> Unfortunately my C/C++-fu is not strong enough to determine what might
> be considered a sound alternative to the epoll/kevent/port_event calls
> on AIX to do an alteration like the one in MDEV-4174. Can someone please
> help me out here?
> 
> My build environment:
> Compiler:
>   IBM XL C/C++ for AIX, V11.1 (5724-X13)
>   Version: 11.01.0000.0009
> AIX oslevel: 6100-08-01-1245
> 
> Thanks & best regards,
> 
>     Frank Fegert
> 
> 
> ## Begin: MariaDB 5.5.31 ##############################################
> ...
> [ 37%] Building CXX object sql/CMakeFiles/sql.dir/threadpool_unix.cc.o
> cd /home/user/rpmbuild/tmp/mariadb-5.5.31/build-mysql/sql && /usr/vacpp/bin/xlC_r  -+ -DHAVE_CONFIG_H -DHAVE_EVENT_SCHEDULER -DHAVE_OPENSSL -DHAVE_POOL_OF_THREADS -DMYSQL_SERVER -ma -O2 -qlanglvl=extc99 -qstrict -qoptimize=2 -qmaxmem=16384 -DSYSV -D_AIX -D_AIX32 -D_AIX41 -D_AIX43 -D_AIX51 -D_AIX52 -D_AIX53 -D_AIX61 -D_ALL_SOURCE -DFUNCPROTO=15 -I/opt/freeware/include -qthreaded -qhalt=e -qstaticinline -g -DDBUG_OFF -I/home/user/rpmbuild/tmp/mariadb-5.5.31/build-mysql/include -I/home/user/rpmbuild/tmp/mariadb-5.5.31/include -I/home/user/rpmbuild/tmp/mariadb-5.5.31/sql -I/home/user/rpmbuild/tmp/mariadb-5.5.31/regex -I/home/user/rpmbuild/tmp/mariadb-5.5.31/build-mysql/sql    -o CMakeFiles/sql.dir/threadpool_unix.cc.o -c /home/user/rpmbuild/tmp/mariadb-5.5.31/sql/threadpool_unix.cc
> "/home/user/rpmbuild/tmp/mariadb-5.5.31/sql/threadpool_unix.cc", line 39.2: 1540-0859 (S) #error directive: threadpool is not available on this platform.
> gmake[2]: *** [sql/CMakeFiles/sql.dir/threadpool_unix.cc.o] Error 1
> gmake[2]: Leaving directory `/home/user/rpmbuild/tmp/mariadb-5.5.31/build-mysql'
> gmake[1]: *** [sql/CMakeFiles/sql.dir/all] Error 2
> gmake[1]: Leaving directory `/home/user/rpmbuild/tmp/mariadb-5.5.31/build-mysql'
> gmake: *** [all] Error 2
> ## End: MariaDB 5.5.31 ################################################
> 
> ## Begin: MySQL 5.5.32 ################################################
> ...
> Linking CXX executable pfs-t
> cd /home/user/rpmbuild/tmp/mysql-5.5.32/build-mysql/storage/perfschema/unittest && /opt/freeware/bin/cmake -E cmake_link_script CMakeFiles/pfs-t.dir/lin
> k.txt --verbose=1
> /usr/vacpp/bin/xlC_r   -ma -O2 -qlanglvl=extc99 -qstrict -qoptimize=2 -qmaxmem=16384 -DSYSV -D_AIX -D_AIX32 -D_AIX41 -D_AIX43 -D_AIX51 -D_AIX52 -D_AIX53 -D_A
> IX61 -D_ALL_SOURCE -DFUNCPROTO=15 -I/opt/freeware/include -qthreaded -qhalt=e -qstaticinline     -L/opt/freeware/lib/mysql -L/opt/freeware/lib -Wl,-bmaxdata:0x80000000  CMakeFiles/pfs-t.dir/pfs-t.cc.o  -o pfs-t -Wl,-brtl,-bnoipath,-bexpfull ../../../unittest/mytap/libmytap.a ../libperfschema.a ../../../mysys/libmysys.a ../../../dbug/libdbug.a ../../../mysys/libmysys.a ../../../dbug/libdbug.a ../../../strings/libstrings.a -lz -lm -Wl,-blibpath:/opt/freeware/lib:/usr/lib:/lib
> ld: 0711-317 ERROR: Undefined symbol: .MDL_request::init(MDL_key::enum_mdl_namespace,const char*,const char*,enum_mdl_type,enum_mdl_duration)
> ld: 0711-317 ERROR: Undefined symbol: .LEX::LEX()
> ld: 0711-317 ERROR: Undefined symbol: .lex_start(THD*)
> ld: 0711-317 ERROR: Undefined symbol: Virtual table for class "DML_prelocking_strategy": Some possible causes are: first non-inline virtual function in "DML_prelocking_strategy" is not defined; or the class is a template instantiation and an explicit instantiation definition of the class is missing.
> ld: 0711-317 ERROR: Undefined symbol: .open_and_lock_tables(THD*,TABLE_LIST*,bool,unsigned int,Prelocking_strategy*)
> ld: 0711-317 ERROR: Undefined symbol: .Table_check_intact::check(TABLE*,const st_table_field_def*)
> ld: 0711-317 ERROR: Undefined symbol: .close_thread_tables(THD*)
> ld: 0711-317 ERROR: Undefined symbol: .lex_end(LEX*)
> ld: 0711-317 ERROR: Undefined symbol: .Query_tables_list::destroy_query_tables_list()
> ld: 0711-317 ERROR: Undefined symbol: .plugin_unlock_list(THD*,st_plugin_int**,unsigned int)
> ld: 0711-317 ERROR: Undefined symbol: THR_THD
> ld: 0711-317 ERROR: Undefined symbol: .sql_print_error(const char*,...)
> ld: 0711-317 ERROR: Undefined symbol: Virtual table for class "st_select_lex_node": Some possible causes are: first non-inline virtual function in "st_select_lex_node" is not defined; or the class is a template instantiation and an explicit instantiation definition of the class is missing.
> ld: 0711-317 ERROR: Undefined symbol: lower_case_table_names
> ld: 0711-317 ERROR: Undefined symbol: .Field_enum::store_type(unsigned long long)
> ld: 0711-317 ERROR: Undefined symbol: .ACL_internal_schema_registry::register_schema(const st_mysql_lex_string*,const ACL_internal_schema_access*)
> ld: 0711-317 ERROR: Undefined symbol: handler::clone(const char*,st_mem_root*)
> ld: 0711-317 ERROR: Undefined symbol: handler::get_error_message(int,String*)
> ld: 0711-317 ERROR: Undefined symbol: handler::column_bitmaps_signal()
> ld: 0711-317 ERROR: Undefined symbol: handler::index_read_idx_map(unsigned char*,unsigned int,const unsigned char*,unsigned long,ha_rkey_function)
> ld: 0711-317 ERROR: Undefined symbol: handler::index_next_same(unsigned char*,const unsigned char*,unsigned int)
> ld: 0711-317 ERROR: Undefined symbol: handler::read_multi_range_first(st_key_multi_range**,st_key_multi_range*,unsigned int,bool,st_handler_buffer*)
> ld: 0711-317 ERROR: Undefined symbol: handler::read_multi_range_next(st_key_multi_range**)
> ld: 0711-317 ERROR: Undefined symbol: handler::read_range_first(const st_key_range*,const st_key_range*,bool,bool)
> ld: 0711-317 ERROR: Undefined symbol: handler::read_range_next()
> ld: 0711-317 ERROR: Undefined symbol: handler::read_first_row(unsigned char*,unsigned int)
> ld: 0711-317 ERROR: Undefined symbol: handler::get_dynamic_partition_info(PARTITION_STATS*,unsigned int)
> ld: 0711-317 ERROR: Undefined symbol: handler::get_auto_increment(unsigned long long,unsigned long long,unsigned long long,unsigned long long*,unsigned long long*)
> ld: 0711-317 ERROR: Undefined symbol: handler::drop_table(const char*)
> ld: 0711-317 ERROR: Undefined symbol: Virtual table for class "handler": Some possible causes are: first non-inline virtual function in "handler" is not defined; or the class is a template instantiation and an explicit instantiation definition of the class is missing.
> ld: 0711-317 ERROR: Undefined symbol: .handler::ha_table_share_psi(const TABLE_SHARE*) const
> ld: 0711-317 ERROR: Undefined symbol: .handler::ha_statistic_increment(unsigned long system_status_var::*) const
> ld: 0711-317 ERROR: Undefined symbol: .handler::print_error(int,int)
> ld: 0711-317 ERROR: Undefined symbol: key_map_empty
> ld: 0711-317 ERROR: Undefined symbol: .calculate_key_len(TABLE*,unsigned int,const unsigned char*,unsigned long)
> ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
> gmake[2]: *** [storage/perfschema/unittest/pfs-t] Error 8
> gmake[2]: Leaving directory `/home/user/rpmbuild/tmp/mysql-5.5.32/build-mysql'
> gmake[1]: *** [storage/perfschema/unittest/CMakeFiles/pfs-t.dir/all] Error 2
> gmake[1]: Leaving directory `/home/user/rpmbuild/tmp/mysql-5.5.32/build-mysql'
> gmake: *** [all] Error 2
> ###End: MySQL 5.5.32 ##################################################

Attachment: signature.asc
Description: OpenPGP digital signature


References