The base distribution gcc won't be updated, but you can use a newer gcc as part of the Developer Tool Suite, or DTS.
To install the updated tooling:
yum install centos-release-scl-rh
enable the testing repository in /etc/yum.repos.d/CentOS-SCLo-scl-rh.repo
then yum install devtoolset-6 for gcc6 or devtoolset-7 for gcc7.
To use them, see the directions here ->
https://www.softwarecollections.org/en/scls/rhscl/devtoolset-7/
On 02/23/2018 06:55 PM, Zhou Wang wrote:
Hi,
We use CentOS7(1708) aarch64 to compile MySQL(5.7.21) and Percona(5.7.20-19).
Compiling will fail with below error log:
Built target myisamchk Building CXX object libmysqld/CMakeFiles/sql_embedded.dir/__/sql/net_serv.cc.o Building CXX object libmysqld/CMakeFiles/sql_embedded.dir/__/sql/opt_costmodel.cc.o Building CXX object libmysqld/CMakeFiles/sql_embedded.dir/__/sql/opt_costconstants.cc.o /home/mysql-5.7.21/storage/innobase/fts/fts0fts.cc: In function ‘dberr_t fts_sync_index(fts_sync_t*, fts_index_cache_t*)’: /home/mysql-5.7.21/storage/innobase/fts/fts0fts.cc:4495:1: error: could not split insn } ^ (insn 739 2247 2253 (parallel [ (set (reg:DI 0 x0 [orig:150 D.108431 ] [150]) (plus:DI (mem/v:DI (reg/f:DI 19 x19 [orig:98 D.108442 ] [98]) [-1 S8 A64]) (const_int 536870912 [0x20000000]))) (set (mem/v:DI (reg/f:DI 19 x19 [orig:98 D.108442 ] [98]) [-1 S8 A64]) (unspec_volatile:DI [ (mem/v:DI (reg/f:DI 19 x19 [orig:98 D.108442 ] [98]) [-1 S8 A64]) (const_int 536870912 [0x20000000]) (const_int 5 [0x5]) ] UNSPECV_ATOMIC_OP)) (clobber (reg:CC 66 cc)) (clobber (reg:SI 1 x1)) ]) /home/mysql-5.7.21/storage/innobase/include/sync0rw.ic:309 1855 {atomic_add_fetchdi} (expr_list:REG_UNUSED (reg:CC 66 cc) (expr_list:REG_UNUSED (reg:SI 1 x1) (nil)))) /home/mysql-5.7.21/storage/innobase/fts/fts0fts.cc:4495:1: internal compiler error: in final_scan_insn, at final.c:2897 Please submit a full bug report, with preprocessed source if appropriate. See http://bugzilla.redhat.com/bugzilla for instructions. [ 70%] [ 70%] [ 70%] [ 70%] Building CXX object libmysqld/CMakeFiles/sql_embedded.dir/__/sql/opt_explain.cc.o Building CXX object libmysqld/CMakeFiles/sql_embedded.dir/__/sql/opt_explain_traditional.cc.o Building CXX object libmysqld/CMakeFiles/sql_embedded.dir/__/sql/opt_explain_json.cc.o Building CXX object libmysqld/CMakeFiles/sql_embedded.dir/__/sql/opt_hints.cc.o [ 70%] [ 70%] [ 70%] [ 70%] Building CXX object libmysqld/CMakeFiles/sql_embedded.dir/__/sql/opt_range.cc.o Building CXX object libmysqld/CMakeFiles/sql_embedded.dir/__/sql/opt_statistics.cc.o Building CXX object libmysqld/CMakeFiles/sql_embedded.dir/__/sql/opt_sum.cc.o [ 71%] Linking CXX static library ../archive_output_directory/libmysqlcheck_core.a Building CXX object libmysqld/CMakeFiles/sql_embedded.dir/__/sql/opt_trace.cc.o /home/mysql-5.7.21/storage/innobase/fts/fts0fts.cc: In function ‘dberr_t fts_sync_index(fts_sync_t*, fts_index_cache_t*)’: /home/mysql-5.7.21/storage/innobase/fts/fts0fts.cc:4495:1: error: could not split insn } ^ (insn 737 2253 2259Building CXX object libmysqld/CMakeFiles/sql_embedded.dir/__/sql/opt_trace2server.cc.o [ 71%] (parallel [ (set (reg:DI 0 x0 [orig:150 D.108021 ] [150]) (plus:DI (mem/v:DI (reg/f:DI 19 x19 [orig:98 D.108032 ] [98]) [-1 S8 A64]) (const_int 536870912 [0x20000000]))) (set (mem/v:DI (reg/f:DI 19 x19 [orig:98 D.108032 ] [98]) [-1 S8 A64]) (unspec_volatile:DI [ (mem/v:DI (reg/f:DI 19 x19 [orig:98 D.108032 ] [98]) [-1 S8 A64]) (const_int[ 71%] 536870912 [0x20000000]) (const_int 5 [0x5]) ] UNSPECV_ATOMIC_OP)) (clobber (reg:CC 66 cc)) (clobber (reg:SI 1 x1)) ]) /home/mysql-5.7.21/storage/innobase/include/sync0rw.ic:309 1855 {atomic_add_fetchdi} (expr_list:REG_UNUSED (reg:CC 66 cc) (expr_list:REG_UNUSED (reg:SI 1 x1) (nil)))) /home/mysql-5.7.21/storage/innobase/fts/fts0fts.cc:4495:1: internal compiler error: in final_scan_insn, at final.c:2897 [ 71%] Please submit a full bug report, with preprocessed source if appropriate. [ 71%] See http://bugzilla.redhat.com/bugzilla for instructions. [ 71%] Building CXX object libmysqld/CMakeFiles/sql_embedded.dir/__/sql/parse_file.cc.o Building CXX object libmysqld/CMakeFiles/sql_embedded.dir/__/sql/parse_tree_helpers.cc.o Building CXX object libmysqld/CMakeFiles/sql_embedded.dir/__/sql/parse_tree_hints.cc.o Building CXX object libmysqld/CMakeFiles/sql_embedded.dir/__/sql/parse_tree_items.cc.o Building CXX object libmysqld/CMakeFiles/sql_embedded.dir/__/sql/parse_tree_node_base.cc.o [ 71%] Built target mysqlcheck_core [ 71%] [ 71%] [ 71%] [ 71%] Linking CXX executable protoc
It seems we need update gcc to solve this problem.
It will be great if any suggestion can be got about this problem.
Best and thanks, Zhou
Arm-dev mailing list Arm-dev@centos.org https://lists.centos.org/mailman/listinfo/arm-dev