rpmalloc icon indicating copy to clipboard operation
rpmalloc copied to clipboard

Building `develop` as part of LLVM with the built-in option fails on Windows

Open tru opened this issue 1 year ago • 3 comments

With clang-cl 18.1, LLVM release/18.x branch, latest develop branch 137bc8451cbfb3892c7342572c68f42157302b8e

14:58:35 C:\code\llvm\llvm.packageci\git\rpmalloc\rpmalloc\rpmalloc.c(268,17): error : call to undeclared function '_lzcnt_u64'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
14:58:35   268 |         return (size_t)_lzcnt_u64(x);
14:58:35       |                        ^
14:58:35 In file included from C:\code\llvm\llvm.packageci\git\rpmalloc\rpmalloc\rpmalloc.c:2337:
14:58:35 C:\code\llvm\llvm.packageci\git\rpmalloc\rpmalloc/malloc.c(134,15): error : restrict requires a pointer or reference ('void' is invalid)
14:58:35   134 | extern inline RPMALLOC_RESTRICT void* RPMALLOC_CDECL _malloc_base(size_t size) { return rpmalloc(size); }
14:58:35       |               ^
14:58:35 C:\code\llvm\llvm.packageci\git\rpmalloc\rpmalloc/rpmalloc.h(23,27): note: expanded from macro 'RPMALLOC_RESTRICT'
14:58:35    23 | #define RPMALLOC_RESTRICT __restrict
14:58:35       |                           ^
14:58:35 In file included from C:\code\llvm\llvm.packageci\git\rpmalloc\rpmalloc\rpmalloc.c:2337:
14:58:35 C:\code\llvm\llvm.packageci\git\rpmalloc\rpmalloc/malloc.c(136,15): error : restrict requires a pointer or reference ('void' is invalid)
14:58:35   136 | extern inline RPMALLOC_RESTRICT void* RPMALLOC_CDECL _calloc_base(size_t count, size_t size) { return rpcalloc(count, size); }
14:58:35       |               ^
14:58:35 C:\code\llvm\llvm.packageci\git\rpmalloc\rpmalloc/rpmalloc.h(23,27): note: expanded from macro 'RPMALLOC_RESTRICT'
14:58:35    23 | #define RPMALLOC_RESTRICT __restrict
14:58:35       |                           ^
14:58:35 In file included from C:\code\llvm\llvm.packageci\git\rpmalloc\rpmalloc\rpmalloc.c:2337:
14:58:35 C:\code\llvm\llvm.packageci\git\rpmalloc\rpmalloc/malloc.c(139,15): error : restrict requires a pointer or reference ('void' is invalid)
14:58:35   139 | extern inline RPMALLOC_RESTRICT void* RPMALLOC_CDECL _realloc_base(void* ptr, size_t size) { return rprealloc(ptr, size); }
14:58:35       |               ^
14:58:35 C:\code\llvm\llvm.packageci\git\rpmalloc\rpmalloc/rpmalloc.h(23,27): note: expanded from macro 'RPMALLOC_RESTRICT'
14:58:35    23 | #define RPMALLOC_RESTRICT __restrict
14:58:35       |                           ^
14:58:35 4 errors generated.

tru avatar May 03 '24 13:05 tru

Did some fixes blind, cannot test right now as I'm on my Mac - could you give it a try?

mjansson avatar May 12 '24 19:05 mjansson

Link error on mac/m2 . it's no problem use eraly version

duplicate symbol '__ZdaPv' in: /Users/Carolin.Huang/Downloads/quic120/benchmark/client/CMakeFiles/bclient.dir/client.cpp.o /Users/Carolin.Huang/Downloads/quic120/benchmark/client/CMakeFiles/bclient.dir/Users/Carolin.Huang/Downloads/quic120/sdk/rpmalloc/rpmalloc.c.o duplicate symbol '__ZdlPv' in: /Users/Carolin.Huang/Downloads/quic120/benchmark/client/CMakeFiles/bclient.dir/client.cpp.o /Users/Carolin.Huang/Downloads/quic120/benchmark/client/CMakeFiles/bclient.dir/Users/Carolin.Huang/Downloads/quic120/sdk/rpmalloc/rpmalloc.c.o duplicate symbol '__ZnwmRKSt9nothrow_t' in: /Users/Carolin.Huang/Downloads/quic120/benchmark/client/CMakeFiles/bclient.dir/client.cpp.o /Users/Carolin.Huang/Downloads/quic120/benchmark/client/CMakeFiles/bclient.dir/Users/Carolin.Huang/Downloads/quic120/sdk/rpmalloc/rpmalloc.c.o duplicate symbol '__ZnamSt11align_val_t' in: /Users/Carolin.Huang/Downloads/quic120/benchmark/client/CMakeFiles/bclient.dir/client.cpp.o /Users/Carolin.Huang/Downloads/quic120/benchmark/client/CMakeFiles/bclient.dir/Users/Carolin.Huang/Downloads/quic120/sdk/rpmalloc/rpmalloc.c.o duplicate symbol '__Znam' in: /Users/Carolin.Huang/Downloads/quic120/benchmark/client/CMakeFiles/bclient.dir/client.cpp.o /Users/Carolin.Huang/Downloads/quic120/benchmark/client/CMakeFiles/bclient.dir/Users/Carolin.Huang/Downloads/quic120/sdk/rpmalloc/rpmalloc.c.o

ktprime avatar May 15 '24 03:05 ktprime

Thanks, my problem is now solved!

tru avatar May 22 '24 11:05 tru