Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

.../Clang No such file or directory #3

Open
omerguzelelectronicguy opened this issue Oct 24, 2022 · 0 comments
Open

.../Clang No such file or directory #3

omerguzelelectronicguy opened this issue Oct 24, 2022 · 0 comments

Comments

@omerguzelelectronicguy
Copy link

omerguzelelectronicguy commented Oct 24, 2022

Hello,
I am using Ubuntu 20.04. I applied all the steps in this readme.riscv-linux.
At this line I am having such an error:

omerguzel@omerguzel-HP-Pro:~/Projects/pocl_example/riscv-gnu-toolchain/build/llvm/build$ $RISCV_TOOLCHAIN_PATH/clang hello.c
bash: /home/omerguzel/Projects/pocl_example/riscv-gnu-toolchain/build/../drops/clang: No such file or directory

Why does this happen? did I make a mistake during the building?

When I change it to this

omerguzel@omerguzel-HP-Pro:~/Projects/pocl_example/riscv-gnu-toolchain/build/llvm/build$ clang hello.c
hello.c:1:10: fatal error: 'stdio.h' file not found
#include <stdio.h>
         ^~~~~~~~~
1 error generated.

It gives such an error. Could you help me with that, please?

Edit: I used the last version of the llvm because the version 10.x caused such an error:

0  lib/libLLVMBinaryFormat.so.10  lib/libLLVMSupport.so.10  -Wl,-rpath-link,/home/omerguzel/Projects/pocl_example/riscv-gnu-toolchain/build/llvm/build/lib && :
/usr/bin/ld: lib/Object/CMakeFiles/LLVMObject.dir/ArchiveWriter.cpp.o: in function `llvm::writeArchive(llvm::StringRef, llvm::ArrayRef<llvm::NewArchiveMember>, bool, llvm::object::Archive::Kind, bool, bool, std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer> >)':
ArchiveWriter.cpp:(.text._ZN4llvm12writeArchiveENS_9StringRefENS_8ArrayRefINS_16NewArchiveMemberEEEbNS_6object7Archive4KindEbbSt10unique_ptrINS_12MemoryBufferESt14default_deleteIS8_EE+0x1ab6): undefined reference to `llvm::raw_string_ostream::current_pos() const'
/usr/bin/ld: ArchiveWriter.cpp:(.text._ZN4llvm12writeArchiveENS_9StringRefENS_8ArrayRefINS_16NewArchiveMemberEEEbNS_6object7Archive4KindEbbSt10unique_ptrINS_12MemoryBufferESt14default_deleteIS8_EE+0x1ae9): undefined reference to `llvm::raw_string_ostream::current_pos() const'
/usr/bin/ld: ArchiveWriter.cpp:(.text._ZN4llvm12writeArchiveENS_9StringRefENS_8ArrayRefINS_16NewArchiveMemberEEEbNS_6object7Archive4KindEbbSt10unique_ptrINS_12MemoryBufferESt14default_deleteIS8_EE+0x1b16): undefined reference to `llvm::raw_string_ostream::current_pos() const'
/usr/bin/ld: ArchiveWriter.cpp:(.text._ZN4llvm12writeArchiveENS_9StringRefENS_8ArrayRefINS_16NewArchiveMemberEEEbNS_6object7Archive4KindEbbSt10unique_ptrINS_12MemoryBufferESt14default_deleteIS8_EE+0x1b41): undefined reference to `llvm::raw_string_ostream::current_pos() const'
/usr/bin/ld: ArchiveWriter.cpp:(.text._ZN4llvm12writeArchiveENS_9StringRefENS_8ArrayRefINS_16NewArchiveMemberEEEbNS_6object7Archive4KindEbbSt10unique_ptrINS_12MemoryBufferESt14default_deleteIS8_EE+0x1b6e): undefined reference to `llvm::raw_string_ostream::current_pos() const'
/usr/bin/ld: lib/Object/CMakeFiles/LLVMObject.dir/ArchiveWriter.cpp.o:ArchiveWriter.cpp:(.text._ZN4llvm12writeArchiveENS_9StringRefENS_8ArrayRefINS_16NewArchiveMemberEEEbNS_6object7Archive4KindEbbSt10unique_ptrINS_12MemoryBufferESt14default_deleteIS8_EE+0x1bad): more undefined references to `llvm::raw_string_ostream::current_pos() const' follow
collect2: error: ld returned 1 exit status
[1478/2985] Building CXX object lib/Passes/CMakeFiles/LLVMPasses.dir/PassBuilder.cpp.o
ninja: build stopped: subcommand failed.

shin0403 pushed a commit that referenced this issue Aug 28, 2023
The segmentation fault can be observed with llvm-10, llvm-11 and llvm-12
and seems to be fixed in llvm-13. It happens on the architectures armhf
and armel (both 32-bit) always and on x86_64 sporadically.
The test segfaults only on the first run (i.e. the kernel is not yet in
pocl's kernel cache) while it passes on subsequent execution (with
something already in the kernel cache), emitting only some llvm
diagnostics:

inlinable function call in a function with debug info must have a !dbg location
  %11 = call i32 @_Z12get_local_idj(i32 0)
inlinable function call in a function with debug info must have a !dbg location
  %19 = call i32 @_Z12get_local_idj(i32 1)
inlinable function call in a function with debug info must have a !dbg location
  %27 = call i32 @_Z12get_local_idj(i32 2)

The backtrace of the segmentation fault as observed with llvm-10 and pocl 1.6:
 #0  getEmissionKind () at .../llvm/include/llvm/IR/DebugInfoMetadata.h:1244
 #1  initialize () at .../llvm/lib/CodeGen/LexicalScopes.cpp:53
 #2  0xb14102f0 in computeIntervals () at .../llvm/lib/CodeGen/LiveDebugVariables.cpp:979
 #3  runOnMachineFunction () at .../llvm/lib/CodeGen/LiveDebugVariables.cpp:996
 #4  runOnMachineFunction () at .../llvm/lib/CodeGen/LiveDebugVariables.cpp:1023
 #5  0xb14856c8 in runOnFunction () at .../llvm/lib/CodeGen/MachineFunctionPass.cpp:73
 #6  0xb12ff494 in runOnFunction () at .../llvm/lib/IR/LegacyPassManager.cpp:1481
 #7  0xb12ff750 in runOnModule () at .../llvm/lib/IR/LegacyPassManager.cpp:1517
 #8  0xb12ffba8 in runOnModule () at .../llvm/lib/IR/LegacyPassManager.cpp:1582
 #9  run () at .../llvm/lib/IR/LegacyPassManager.cpp:1694
 #10 0xb6e64c82 in pocl_llvm_codegen (Device=Device@entry=0xdb0010, Modp=0x1361838, Output=Output@entry=0xbefde86c, OutputSize=OutputSize@entry=0xbefde880) at ./lib/CL/pocl_llvm_wg.cc:624
 #11 0xb6e291de in llvm_codegen (output=output@entry=0xdeb898 "...BMDHA/Sdot_kernel/0-0-0/Sdot_kernel.so", device_i=device_i@entry=0, kernel=kernel@entry=0xbefe0240,
     device=0xdb0010, command=command@entry=0xbefe0278, specialize=specialize@entry=0) at ./lib/CL/devices/common.c:158
 #12 0xb6e2ae44 in pocl_check_kernel_disk_cache (command=command@entry=0xbefe0278, specialized=specialized@entry=0) at ./lib/CL/devices/common.c:958
 #13 0xb6e2b262 in pocl_check_kernel_dlhandle_cache (command=0xbefe0278, initial_refcount=0, specialize=0) at ./lib/CL/devices/common.c:1081
 #14 0xb6e033d4 in program_compile_dynamic_wg_binaries (program=program@entry=0xd8ab88) at ./lib/CL/pocl_build.c:179
 #15 0xb6e13f20 in get_binary_sizes (sizes=0xbefe0384, program=0xd8ab88) at ./lib/CL/clGetProgramInfo.c:36
 #16 POclGetProgramInfo (program=0xd8ab88, param_name=4453, param_value_size=128, param_value=0xbefe0384, param_value_size_ret=0xbefe0380) at ./lib/CL/clGetProgramInfo.c:115
 #17 0x00473070 in main () at 975931.c:238

pocl/pocl#889
https://bugs.debian.org/975931
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant