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

runtests.jl Segmentation fault- clang_getTranslationUnitCursor at /usr/bin/../lib/x86_64-linux-gnu/libclang-3.6.so.1 #142

Closed
krejcmat opened this issue Oct 15, 2015 · 1 comment

Comments

@krejcmat
Copy link

Hi all,
I am trying to deploy Clang for future development of julia interface for GRASS GIS.
After checkout master Clang build[2] works. If I run tests from Clang.jl I got errors[1]. I am not sure on what I should focus from this error message. Additional info of system [3]

[1]

PC:~/.julia/v0.5/Clang/test$ julia runtests.jl 

signal (11): Segmentation fault
clang_getTranslationUnitCursor at /usr/bin/../lib/x86_64-linux-gnu/libclang-3.6.so.1 (unknown line)
wci_getTranslationUnitCursor at /home/matt/.julia/v0.5/Clang/src/../deps/usr/lib/libwrapclang.so (unknown line)
tu_cursor at /home/matt/.julia/v0.5/Clang/src/cindex.jl:349
parse_header at /home/matt/.julia/v0.5/Clang/src/cindex.jl:67
jlcall___parse_header#0___21984 at  (unknown line)
jl_apply_generic at /usr/bin/../lib/x86_64-linux-gnu/julia/libjulia.so (unknown line)
julia_parse_header_21982 at  (unknown line)
unknown function (ip: 0x7f0fa84b7633)
unknown function (ip: 0x7f0fa84b6a71)
unknown function (ip: 0x7f0fa84b677d)
unknown function (ip: 0x7f0fa84b7c85)
unknown function (ip: 0x7f0fa84b8079)
unknown function (ip: 0x7f0fa84cbdaf)
unknown function (ip: 0x7f0fa84cc679)
jl_load at /usr/bin/../lib/x86_64-linux-gnu/julia/libjulia.so (unknown line)
include at ./boot.jl:261
jl_apply_generic at /usr/bin/../lib/x86_64-linux-gnu/julia/libjulia.so (unknown line)
include_from_node1 at ./loading.jl:304
jl_apply_generic at /usr/bin/../lib/x86_64-linux-gnu/julia/libjulia.so (unknown line)
unknown function (ip: 0x7f0fa84b7633)
unknown function (ip: 0x7f0fa84b6a71)
unknown function (ip: 0x7f0fa84cb988)
unknown function (ip: 0x7f0fa84cc679)
jl_load at /usr/bin/../lib/x86_64-linux-gnu/julia/libjulia.so (unknown line)
include at ./boot.jl:261
jl_apply_generic at /usr/bin/../lib/x86_64-linux-gnu/julia/libjulia.so (unknown line)
include_from_node1 at ./loading.jl:304
jl_apply_generic at /usr/bin/../lib/x86_64-linux-gnu/julia/libjulia.so (unknown line)
process_options at ./client.jl:279
_start at ./client.jl:375
unknown function (ip: 0x7f0fa5023cf9)
jl_apply_generic at /usr/bin/../lib/x86_64-linux-gnu/julia/libjulia.so (unknown line)
unknown function (ip: 0x401b41)
unknown function (ip: 0x40171f)
__libc_start_main at /lib/x86_64-linux-gnu/libc.so.6 (unknown line)
unknown function (ip: 0x401765)
unknown function (ip: (nil))
Segmentation fault (core dumped)

[2]

julia> ENV["LLVM_CONFIG"]="/usr/lib/llvm-3.6/bin/llvm-config"
julia>Pkg.clone("https://github.com/ihnorton/Clang.jl.git")
...
julia> Pkg.build("Clang")
INFO: Building Clang
g++ wrapclang.cpp -fPIC -c -o wrapclang.cpp.o -I/usr/lib/llvm-3.6/include -g -Wall -Wno-strict-aliasing -fno-omit-frame-pointer -fPIC 
g++ wrapclang.cpp.o -rdynamic -shared -o libwrapclang.so -L/usr/lib/llvm-3.6/lib  -L/usr/lib/llvm-3.6/lib -lclang

[3]

Installed libs
matt@matt-pc:~/.julia/v0.5/Clang/test$ dpkg --get-selections | grep llvm
libllvm-3.6-ocaml-dev               install
libllvm3.4:amd64                install
libllvm3.4:i386                 deinstall
libllvm3.6:amd64                install
libllvm3.6-dbg:amd64                install
llvm-3.6                    install
llvm-3.6-dev                    install
llvm-3.6-doc                    install
llvm-3.6-examples               install
llvm-3.6-runtime                install

matt@matt-pc:~/.julia/v0.5/Clang/test$ dpkg --get-selections | grep libclang
libclang-3.4-dev                install
libclang-3.6-dev                install
libclang-common-3.4-dev             install
libclang-common-3.6-dev             install
libclang-dev                    install
libclang1-3.4:amd64             install
libclang1-3.6:amd64             install
libclang1-3.6-dbg               install


  | | |_| | | | (_| |  |  Version 0.5.0-dev+433 (2015-09-29 15:39 UTC)
 _/ |\__'_|_|_|\__'_|  |  Commit e60fd18 (15 days old master)
|__/                   |  x86_64-linux-gnu


Does anyone now how I should figure out problem? Thanks for any advice!

best Matej

@lascott
Copy link

lascott commented Nov 28, 2016

Looks related to this so adding my problem here.
I am looking to use this to rewrite the calls to NAG c libraries.

Clang.jl seg faults on using Clang

Here is the enviroment

louis@Neruda /usr/lib $ echo ${LD_LIBRARY_PATH}
/usr/lib/llvm-3.8/lib:/usr/lib/x86_64-linux-gnu
louis@Neruda /usr/lib $ echo ${PATH}
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/lib/jvm/default-java/bin

louis@Neruda ~/.julia/v0.6/Clang/test $ dpkg --get-selections | grep llvm
libllvm3.4:amd64				install
libllvm3.6:amd64				install
libllvm3.6:i386					install
libllvm3.8v4:amd64				install
llvm-3.8					install
llvm-3.8-dev					install
llvm-3.8-runtime				install
louis@Neruda ~/.julia/v0.6/Clang/test $ dpkg --get-selections | grep libclang
libclang-3.8-dev				install
libclang-common-3.8-dev				install
libclang1-3.8:amd64				install

louis@Neruda ~/.julia/v0.6/Clang/test $ julia

    _         _ _(_)_    |  A fresh approach to technical computing
   (_)       |  (_) (_)    |  Documentation: http://docs.julialang.org
   _ _    _|  |_  __ _ |  Type "?help" for help.
   | |  |  |  |  |  |/ _` |  |
   | |  |_|  |  |  | (_| |  |  Version 0.6.0-dev.1241 (2016-11-14 21:35 UTC)
 _/  |\__'_|_|_|\__'_| |  Commit 80770e9 (13 days old master)
|__/                          |  x86_64-linux-gnu

looks like it builds without errors, but libwrapclang is not found

julia> Pkg.build("Clang")
INFO: Building Clang
g++ wrapclang.cpp.o -rdynamic -shared -o libwrapclang.so -L/usr/lib/llvm-3.8/lib -L/usr/lib/llvm-3.8/lib -lclang

julia> Libdl.find_library(["libc"])
"libc"

julia> Libdl.find_library(["libwrapclang"])
""

julia> using Clang

signal (11): Segmentation fault
while loading /home/louis/.julia/v0.6/Clang/src/cindex/types.jl, in expression starting on line 228
unknown function (ip: 0x7f80ab2129bf)
Allocations: 1874268 (Pool: 1873262; Big: 1006); GC: 1
Segmentation fault

Able to run clang on a simple test code example

louis@Neruda $ cat test.c

typedef float V __attribute__((vector_size(16)));
V foo(V a, V b) { return a+b*a; }

louis@Neruda $ clang test.c -S -emit-llvm -o -

; ModuleID = 'test.c'
target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"

; Function Attrs: nounwind uwtable
define <4 x float> @foo(<4 x float> %a, <4 x float> %b) #0 {
  %1 = alloca <4 x float>, align 16
  %2 = alloca <4 x float>, align 16
  store <4 x float> %a, <4 x float>* %1, align 16
  store <4 x float> %b, <4 x float>* %2, align 16
  %3 = load <4 x float>, <4 x float>* %1, align 16
  %4 = load <4 x float>, <4 x float>* %2, align 16
  %5 = load <4 x float>, <4 x float>* %1, align 16
  %6 = fmul <4 x float> %4, %5
  %7 = fadd <4 x float> %3, %6
  ret <4 x float> %7
}

attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }

!llvm.ident = !{!0}

!0 = !{!"clang version 3.8.0-2ubuntu3~trusty4 (tags/RELEASE_380/final)"}

louis@Neruda $ clang test.c -S -O3 -o -

	.text
	.file	"test.c"
	.globl	foo
	.align	16, 0x90
	.type	foo,@function
foo:                                    # @foo
	.cfi_startproc

# BB#0:
	mulps	%xmm0, %xmm1
	addps	%xmm1, %xmm0
	retq
.Lfunc_end0:
	.size	foo, .Lfunc_end0-foo
	.cfi_endproc


	.ident	"clang version 3.8.0-2ubuntu3~trusty4 (tags/RELEASE_380/final)"
	.section	".note.GNU-stack","",@progbits

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

Successfully merging a pull request may close this issue.

3 participants