[ 
https://issues.apache.org/jira/browse/KUDU-3475?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Joe McDonnell resolved KUDU-3475.
---------------------------------
    Fix Version/s: 1.17.0
         Assignee: Joe McDonnell
       Resolution: Fixed

> Build on Ubuntu 20 ARM hits errors due to redeclaration of vld1q_u8_x4
> ----------------------------------------------------------------------
>
>                 Key: KUDU-3475
>                 URL: https://issues.apache.org/jira/browse/KUDU-3475
>             Project: Kudu
>          Issue Type: Bug
>          Components: build
>    Affects Versions: 1.17.0
>            Reporter: Joe McDonnell
>            Assignee: Joe McDonnell
>            Priority: Major
>             Fix For: 1.17.0
>
>
> When building on an Ubunu 20 ARM machine, it now uses GCC 9.4, which includes 
> a definition of vld1q_u8_x4. The build fails with messages like this:
> {noformat}
> 20:28:53 In file included from 
> /home/ubuntu/kudu/src/kudu/util/group_varint-inl.h:25,
> 20:28:53                  from 
> /home/ubuntu/kudu/src/kudu/util/group_varint.cc:18:
> 20:28:53 /home/ubuntu/kudu/src/kudu/util/sse2neon.h:184:27: error: 
> ‘uint8x16x4_t vld1q_u8_x4(const uint8_t*)’ redeclared inline without 
> ‘gnu_inline’ attribute
> 20:28:53   184 | FORCE_INLINE uint8x16x4_t vld1q_u8_x4(const uint8_t *p) {
> 20:28:53       |                           ^~~~~~~~~~~
> 20:28:53 In file included from /home/ubuntu/kudu/src/kudu/util/sse2neon.h:66,
> 20:28:53                  from 
> /home/ubuntu/kudu/src/kudu/util/group_varint-inl.h:25,
> 20:28:53                  from 
> /home/ubuntu/kudu/src/kudu/util/group_varint.cc:18:
> 20:28:53 /usr/lib/gcc/aarch64-linux-gnu/9/include/arm_neon.h:18122:1: note: 
> ‘uint8x16x4_t vld1q_u8_x4(const uint8_t*)’ previously defined here
> 20:28:53 18122 | vld1q_u8_x4 (const uint8_t *__a)
> 20:28:53       | ^~~~~~~~~~~{noformat}
> There have been major changes in the logic of sse2neon.h over the past couple 
> years. The code uses a different name to avoid collisions and it has more 
> sophisticated version checks.
> See these commits: 
> [https://github.com/DLTcollab/sse2neon/commit/e96c9818e25f019629a6b96f62382d42179eab3c]
> [https://github.com/DLTcollab/sse2neon/commit/26011f2ca7f22fd2b93b85fa84a2465ffc489710]
> One possible fix is to update sse2neon to a more recent version.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to