tech-pkg archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: chromium update
>> "ccache: error: Could not find compiler \"clang\" in PATH\n"
>>
>> ccache? I have clang version 17.0.6nb1 in /usr/pkg/bin (based on
>> earlier comments about llvm 18 vs. llvm 17, I date-fixed the llvm
>> and related packages to "just before update to 18", since I
>> already had llvm 17 installed), but the pkgsrc build runs with a
>> restricted PATH, but ...
>
> I forgot to remove ".include "../../mk/compiler/ccache.mk" line from
> Makefile. Try to remove this.
OK, that got me over that hurdle.
Next one is that a compile fell flat on it's face with
: {165} ls -ltr work/chromium-127.0.6533.99/out/Release//clang++.core
-rw------- 1 he 125 439161640 Aug 19 04:57 work/chromium-127.0.6533.99/out/Release//clang++.core
: {166}
: {164} file work/chromium-127.0.6533.99/out/Release/clang++.core
work/chromium-127.0.6533.99/out/Release/clang++.core: ELF 64-bit LSB core file, x86-64, version 1 (SYSV), NetBSD-style, from 'clang++', pid=15024, uid=1000, gid=100, nlwps=1, lwp=0 (signal 4/code 32767)
: {165}
(there's no message in the build log related to the signal exit,
though, just the copy of the invocation which "failed" -- not
your fault, I'm sure.)
Running gdb on this shows:
Core was generated by `clang++'.
Program terminated with signal SIGILL, Illegal instruction.
#0 0x00007b286d1a6f54 in clang::CodeGen::CodeGenFunction::EmitCXXMemberOrOperatorMemberCallExpr(clang::CallExpr const*, clang::CXXMethodDecl const*, clang::CodeGen::ReturnValueSlot, bool, clang::NestedNameSpecifier*, bool, clang::Expr const*) () from /usr/pkg/lib/libclang-cpp.so.17
(gdb) where
#0 0x00007b286d1a6f54 in clang::CodeGen::CodeGenFunction::EmitCXXMemberOrOperatorMemberCallExpr(clang::CallExpr const*, clang::CXXMethodDecl const*, clang::CodeGen::ReturnValueSlot, bool, clang::NestedNameSpecifier*, bool, clang::Expr const*) () from /usr/pkg/lib/libclang-cpp.so.17
#1 0x00007b286d1a905c in clang::CodeGen::CodeGenFunction::EmitCXXMemberCallExpr(clang::CXXMemberCallExpr const*, clang::CodeGen::ReturnValueSlot) ()
from /usr/pkg/lib/libclang-cpp.so.17
#2 0x00007b286d17e609 in clang::CodeGen::CodeGenFunction::EmitCallExpr(clang::CallExpr const*, clang::CodeGen::ReturnValueSlot) ()
...
SIGILL?!?
(gdb) i reg
...
rip 0x7b286d1a6f54 0x7b286d1a6f54 <clang::CodeGen::CodeGenFunction::EmitCXXMemberOrOperatorMemberCallExpr(clang::CallExpr const*, clang::CXXMethodDecl const*, clang::CodeGen::ReturnValueSlot, bool, clang::NestedNameSpecifier*, bool, clang::Expr const*)+20>
...
(gdb) x/i 0x7b286d1a6f54
=> 0x7b286d1a6f54 <_ZN5clang7CodeGen15CodeGenFunction37EmitCXXMemberOrOperatorMemberCallExprEPKNS_8CallExprEPKNS_13CXXMethodDeclENS0_15ReturnValueSlotEbPNS_19NestedNameSpecifierEbPKNS_4ExprE+20>: mov %rdi,-0xc00(%rbp)
(gdb)
Huh? That should not be an illegal instruction, surely?
And neither are any of the preceding ones either:
(gdb) x/20i _ZN5clang7CodeGen15CodeGenFunction37EmitCXXMemberOrOperatorMemberCallExprEPKNS_8CallExprEPKNS_13CXXMethodDeclENS0_15ReturnValueSlotEbPNS_19NestedNameSpecifierEbPKNS_4ExprE
0x7b286d1a6f40 <_ZN5clang7CodeGen15CodeGenFunction37EmitCXXMemberOrOperatorMemberCallExprEPKNS_8CallExprEPKNS_13CXXMethodDeclENS0_15ReturnValueSlotEbPNS_19NestedNameSpecifierEbPKNS_4ExprE>: push %rbp
0x7b286d1a6f41 <_ZN5clang7CodeGen15CodeGenFunction37EmitCXXMemberOrOperatorMemberCallExprEPKNS_8CallExprEPKNS_13CXXMethodDeclENS0_15ReturnValueSlotEbPNS_19NestedNameSpecifierEbPKNS_4ExprE+1>: mov %rsp,%rbp
0x7b286d1a6f44 <_ZN5clang7CodeGen15CodeGenFunction37EmitCXXMemberOrOperatorMemberCallExprEPKNS_8CallExprEPKNS_13CXXMethodDeclENS0_15ReturnValueSlotEbPNS_19NestedNameSpecifierEbPKNS_4ExprE+4>: push %r15
0x7b286d1a6f46 <_ZN5clang7CodeGen15CodeGenFunction37EmitCXXMemberOrOperatorMemberCallExprEPKNS_8CallExprEPKNS_13CXXMethodDeclENS0_15ReturnValueSlotEbPNS_19NestedNameSpecifierEbPKNS_4ExprE+6>: push %r14
0x7b286d1a6f48 <_ZN5clang7CodeGen15CodeGenFunction37EmitCXXMemberOrOperatorMemberCallExprEPKNS_8CallExprEPKNS_13CXXMethodDeclENS0_15ReturnValueSlotEbPNS_19NestedNameSpecifierEbPKNS_4ExprE+8>: push %r13
0x7b286d1a6f4a <_ZN5clang7CodeGen15CodeGenFunction37EmitCXXMemberOrOperatorMemberCallExprEPKNS_8CallExprEPKNS_13CXXMethodDeclENS0_15ReturnValueSlotEbPNS_19NestedNameSpecifierEbPKNS_4ExprE+10>: push %r12
0x7b286d1a6f4c <_ZN5clang7CodeGen15CodeGenFunction37EmitCXXMemberOrOperatorMemberCallExprEPKNS_8CallExprEPKNS_13CXXMethodDeclENS0_15ReturnValueSlotEbPNS_19NestedNameSpecifierEbPKNS_4ExprE+12>: push %rbx
0x7b286d1a6f4d <_ZN5clang7CodeGen15CodeGenFunction37EmitCXXMemberOrOperatorMemberCallExprEPKNS_8CallExprEPKNS_13CXXMethodDeclENS0_15ReturnValueSlotEbPNS_19NestedNameSpecifierEbPKNS_4ExprE+13>: sub $0xd78,%rsp
=> 0x7b286d1a6f54 <_ZN5clang7CodeGen15CodeGenFunction37EmitCXXMemberOrOperatorMemberCallExprEPKNS_8CallExprEPKNS_13CXXMethodDeclENS0_15ReturnValueSlotEbPNS_19NestedNameSpecifierEbPKNS_4ExprE+20>: mov %rdi,-0xc00(%rbp)
0x7b286d1a6f5b <_ZN5clang7CodeGen15CodeGenFunction37EmitCXXMemberOrOperatorMemberCallExprEPKNS_8CallExprEPKNS_13CXXMethodDeclENS0_15ReturnValueSlotEbPNS_19NestedNameSpecifierEbPKNS_4ExprE+27>: mov %rsi,%r15
...
?!?!?
Even though this doesn't really make any sense, I guess it's on
to upgrading LLVM and associated packages to LLVM 18 and re-try
the build.
(This build host also has ECC memory, so I don't think it's that
either.)
> I built chromium with the ~freshest pkgsrc trunk tree, with llvm 18,
> however earlier I built successfull with llvm 17 as well.
OK, noted, but as seen above I could not reproduce the build with
the newest LLVM 17.x.
Regards,
- Håvard
Home |
Main Index |
Thread Index |
Old Index