Cross Compile Gcc 10.2.0

Christer Solskogen christer.solskogen@gmail.com
Sat Aug 15 17:00:41 GMT 2020


On 14.08.2020 23:21, Casey St.Fleur via Gcc-help wrote:
> Hi all,
> 
> I am trying to build GCC 10.2 using Ubuntu's Arm cross compiler.
> 
> But I am getting the following error,
> 
> ../../../../../gcc-10.2.0/libstdc++-v3/src/c++17/memory_resource.cc:92:5: error: ‘__constinit’ does not name a type
>     92 |     __constinit constant_init<newdel_res_t> newdel_res{};
>        |     ^~~~~~~~~~~
> ../../../../../gcc-10.2.0/libstdc++-v3/src/c++17/memory_resource.cc:93:5: error: ‘__constinit’ does not name a type
>     93 |     __constinit constant_init<null_res_t> null_res{};
>        |     ^~~~~~~~~~~
> ../../../../../gcc-10.2.0/libstdc++-v3/src/c++17/memory_resource.cc:146:5: error: ‘__constinit’ does not name a type
>    146 |     __constinit constant_init<atomic_mem_res> default_res{&newdel_res.obj};
>        |     ^~~~~~~~~~~
> ../../../../../gcc-10.2.0/libstdc++-v3/src/c++17/memory_resource.cc: In function ‘std::pmr::memory_resource* std::pmr::new_delete_resource()’:
> ../../../../../gcc-10.2.0/libstdc++-v3/src/c++17/memory_resource.cc:154:13: error: ‘newdel_res’ was not declared in this scope
>    154 |   { return &newdel_res.obj; }
>        |             ^~~~~~~~~~
> ../../../../../gcc-10.2.0/libstdc++-v3/src/c++17/memory_resource.cc: In function ‘std::pmr::memory_resource* std::pmr::null_memory_resource()’:
> ../../../../../gcc-10.2.0/libstdc++-v3/src/c++17/memory_resource.cc:158:13: error: ‘null_res’ was not declared in this scope
>    158 |   { return &null_res.obj; }
>        |             ^~~~~~~~
> ../../../../../gcc-10.2.0/libstdc++-v3/src/c++17/memory_resource.cc: In function ‘std::pmr::memory_resource* std::pmr::set_default_resource(std::pmr::memory_resource*)’:
> ../../../../../gcc-10.2.0/libstdc++-v3/src/c++17/memory_resource.cc:165:12: error: ‘default_res’ was not declared in this scope; did you mean ‘default_delete’?
>    165 |     return default_res.obj.exchange(r);
>        |            ^~~~~~~~~~~
>        |            default_delete
> ../../../../../gcc-10.2.0/libstdc++-v3/src/c++17/memory_resource.cc: In function ‘std::pmr::memory_resource* std::pmr::get_default_resource()’:
> ../../../../../gcc-10.2.0/libstdc++-v3/src/c++17/memory_resource.cc:170:12: error: ‘default_res’ was not declared in this scope; did you mean ‘default_delete’?
>    170 |   { return default_res.obj.load(); }
>        |            ^~~~~~~~~~~
>        |            default_delete
> 
> It looks like build is failing because it is trying to build a C++ 17 feature using a C++ 20 keyword. I am not sure what to do from here, any help is greatly appreciated .
> 
> Here are the configure parameters I used to set up the build:
> 
> ../gcc-10.2.0/configure  --prefix=/opt/gcc-10.2.0 --build=$MACHTYPE --host=arm-linux-gnueabihf --target=arm-linux-gnueabihf --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++ --with-gcc-major-version-only --program-suffix=-10.2 --program-prefix=arm-linux-gnueabihf- --enable-shared  --without-included-gettext --enable-threads=posix --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libitm --disable-libquadmath --disable-libquadmath-support --enable-plugin --with-system-zlib --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-sjlj-exceptions --with-arch=armv6 --with-fpu=vfp --with-float=hard --disable-werror --enable-checking=release
> 

Try with fewer options. For example --enable-bootstrap won't and can't 
work with this setup.

-- 
chs



More information about the Gcc-help mailing list