← Back to team overview

maria-discuss team mailing list archive

Re: Cross compile error

 

On 16.05.2017 09:42, Игорь Пашев wrote:
I found this: https://forum.lede-project.org/t/solved-mariadb-mysql-update/2337

Marked as solved :)

2017-03-25 18:52 GMT+03:00 Lucian Cristian <luci@xxxxxxxxxx>:
Hi

I'm trying to cross compile (any 10.* versions) using musl and uClibc++ for
a LEDE/Openwrt system and I have problems with these errors:


staging_dir/target-x86_64_musl/usr/include/uClibc++/associative_base:444:8:
error: 'void std::__base_associative<Key, ValueType, Compare,
Allocator>::swap(std::__base_associative<Key, ValueType, Compare,
Allocator>&) [with Key = dict_foreign_t*; ValueType = dict_foreign_t*;
Compare = dict_foreign_compare; Allocator = ut_allocator<dict_foreign_t*>]'
is protected
    void __base_associative<Key, ValueType, Compare,
Allocator>::swap(__base_associative<Key, ValueType, Compare, Allocator>& m)
         ^
build_dir/target-x86_64_musl/mariadb-10.2.4/storage/innobase/dict/dict0dict.cc:1996:32:
error: within this context
   table->foreign_set.swap(fk_set);
                                 ^
storage/innobase/CMakeFiles/innobase.dir/build.make:542: recipe for target
'storage/innobase/CMakeFiles/innobase.dir/dict/dict0dict.cc.o' failed



staging_dir/target-x86_64_musl/usr/include/uClibc++/map: In instantiation of
'std::map<Key, T, Compare, Allocator>::reference std::map<Key, T, Compare,
Allocator>::operator[](const key_type&) [with Key = const char*; T =
dict_index_t*; Compare = ut_strcmp_functor; Allocator =
ut_allocator<std::pair<const char*, dict_index_t*> >; std::map<Key, T,
Compare, Allocator>::reference = std::pair<const char*, dict_index_t*>&;
std::map<Key, T, Compare, Allocator>::key_type = const char*]':
build_dir/target-x86_64_musl/mariadb-10.2.4/storage/innobase/dict/dict0stats.cc:2518:22:
required from here
staging_dir/target-x86_64_musl/usr/include/uClibc++/map:143:13: error:
invalid initialization of reference of type 'std::map<const char*,
dict_index_t*, ut_strcmp_functor, ut_allocator<std::pair<const char*,
dict_index_t*> > >::reference {aka std::pair<const char*, dict_index_t*>&}'
from expression of type 'dict_index_t*'
    return i->second;
              ^
storage/innobase/CMakeFiles/innobase.dir/build.make:614: recipe for target
'storage/innobase/CMakeFiles/innobase.dir/dict/dict0stats.cc.o' failed



build_dir/target-x86_64_musl/mariadb-10.2.4/plugin/handler_socket/handlersocket/hstcpsvr.cpp:
In constructor 'dena::hstcpsvr::hstcpsvr(const dena::config&)':
build_dir/target-x86_64_musl/mariadb-10.2.4/plugin/handler_socket/handlersocket/hstcpsvr.cpp:92:37:
error: invalid initialization of non-const reference of type
'std::auto_ptr<volatile dena::database_i>&' from an rvalue of type
'dena::database_ptr {aka std::auto_ptr<volatile dena::database_i>}'
    cshared.dbptr = database_i::create(c);
                                      ^
In file included from
staging_dir/target-x86_64_musl/usr/include/uClibc++/vector:22:0,
                  from
build_dir/target-x86_64_musl/mariadb-10.2.4/plugin/handler_socket/handlersocket/hstcpsvr.cpp:12:
staging_dir/target-x86_64_musl/usr/include/uClibc++/memory:137:12: note:
initializing argument 1 of 'std::auto_ptr<T>&
std::auto_ptr<T>::operator=(std::auto_ptr<T>&) [with T = volatile
dena::database_i]'
   auto_ptr& operator=(auto_ptr& p) throw(){
             ^
plugin/handler_socket/CMakeFiles/handlersocket.dir/build.make:134: recipe
for target
'plugin/handler_socket/CMakeFiles/handlersocket.dir/handlersocket/hstcpsvr.cpp.o'
failed
make[5]: ***
[plugin/handler_socket/CMakeFiles/handlersocket.dir/handlersocket/hstcpsvr.cpp.o]
Error 1


this is the command line

(cd /build_dir/target-x86_64_musl/mariadb-10.2.4; CFLAGS="-Os -pipe
-fno-caller-saves -fno-plt -fhonour-copts -Wno-error=unused-but-set-variable
-Wno-error=unused-result
-iremap/build_dir/target-x86_64_musl/mariadb-10.2.4:mariadb-10.2.4 -Wformat
-Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now
-Wl,-z,relro -fpic " CXXFLAGS="-Os -pipe -fno-caller-saves -fno-plt
-fhonour-copts -Wno-error=unused-but-set-variable -Wno-error=unused-result
-iremap/build_dir/target-x86_64_musl/mariadb-10.2.4:mariadb-10.2.4 -Wformat
-Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now
-Wl,-z,relro -fpic " LDFLAGS="-L/staging_dir/target-x86_64_musl/usr/lib
-L/staging_dir/target-x86_64_musl/lib
-L/staging_dir/toolchain-x86_64_gcc-5.4.0_musl/usr/lib
-L/staging_dir/toolchain-x86_64_gcc-5.4.0_musl/lib -znow -zrelro " cmake
-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_SYSTEM_VERSION=1
-DCMAKE_SYSTEM_PROCESSOR=x86_64 -DCMAKE_BUILD_TYPE=Release
-DCMAKE_C_FLAGS_RELEASE="-DNDEBUG" -DCMAKE_CXX_FLAGS_RELEASE="-DNDEBUG"
-DCMAKE_C_COMPILER="/staging_dir/toolchain-x86_64_gcc-5.4.0_musl/bin/x86_64-openwrt-linux-musl-gcc"
-DCMAKE_C_COMPILER_ARG1=""
-DCMAKE_CXX_COMPILER="/staging_dir/toolchain-x86_64_gcc-5.4.0_musl/bin/g++-uc"
-DCMAKE_CXX_COMPILER_ARG1=""
-DCMAKE_ASM_COMPILER="/staging_dir/toolchain-x86_64_gcc-5.4.0_musl/bin/x86_64-openwrt-linux-musl-gcc"
-DCMAKE_ASM_COMPILER_ARG1=""
-DCMAKE_EXE_LINKER_FLAGS:STRING="-L/staging_dir/target-x86_64_musl/usr/lib
-L/staging_dir/target-x86_64_musl/lib
-L/staging_dir/toolchain-x86_64_gcc-5.4.0_musl/usr/lib
-L/staging_dir/toolchain-x86_64_gcc-5.4.0_musl/lib -znow -zrelro"
-DCMAKE_MODULE_LINKER_FLAGS:STRING="-L/staging_dir/target-x86_64_musl/usr/lib
-L/staging_dir/target-x86_64_musl/lib
-L/staging_dir/toolchain-x86_64_gcc-5.4.0_musl/usr/lib
-L/staging_dir/toolchain-x86_64_gcc-5.4.0_musl/lib -znow -zrelro
-Wl,-Bsymbolic-functions"
-DCMAKE_SHARED_LINKER_FLAGS:STRING="-L/staging_dir/target-x86_64_musl/usr/lib
-L/staging_dir/target-x86_64_musl/lib
-L/staging_dir/toolchain-x86_64_gcc-5.4.0_musl/usr/lib
-L/staging_dir/toolchain-x86_64_gcc-5.4.0_musl/lib -znow -zrelro
-Wl,-Bsymbolic-functions"
-DCMAKE_AR="/staging_dir/toolchain-x86_64_gcc-5.4.0_musl/bin/x86_64-openwrt-linux-musl-gcc-ar"
-DCMAKE_NM="/staging_dir/toolchain-x86_64_gcc-5.4.0_musl/bin/x86_64-openwrt-linux-musl-gcc-nm"
-DCMAKE_RANLIB="/staging_dir/toolchain-x86_64_gcc-5.4.0_musl/bin/x86_64-openwrt-linux-musl-gcc-ranlib"
-DCMAKE_FIND_ROOT_PATH="/staging_dir/target-x86_64_musl/usr;/staging_dir/toolchain-x86_64_gcc-5.4.0_musl"
-DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=BOTH
-DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=ONLY
-DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=ONLY -DCMAKE_STRIP=:
-DCMAKE_INSTALL_PREFIX=/usr -DDL_LIBRARY=/staging_dir/target-x86_64_musl
-DCMAKE_PREFIX_PATH=/staging_dir/target-x86_64_musl -DCMAKE_SKIP_RPATH=TRUE
-DCMAKE_SYSTEM_NAME=Linux -DSTACK_DIRECTION=-1 -DWITH_WSREP=ON
-DWITH_INNODB_DISALLOW_WRITES=1 -DCONNECT_WITH_JDBC=OFF -DWITHOUT_TOKUDB=1
-DIMPORT_EXECUTABLES=/build_dir/hostpkg/mariadb-10.2.4/host/import_executables.cmake
/build_dir/target-x86_64_musl/mariadb-10.2.4 )


can someone give me an advice ?

Regards


_______________________________________________
Mailing list: https://launchpad.net/~maria-discuss
Post to     : maria-discuss@xxxxxxxxxxxxxxxxxxx
Unsubscribe : https://launchpad.net/~maria-discuss
More help   : https://help.launchpad.net/ListHelp

thanks !

it was me :)

for now I'm good with 5.5.x

regards!



References