Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Mesa LLVM clang libclc -- make sure they are consistent
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Desktop Environments
View previous topic :: View next topic  
Author Message
derk
Guru
Guru


Joined: 10 Mar 2003
Posts: 347
Location: St Thomas Ontario

PostPosted: Tue Apr 05, 2016 7:25 pm    Post subject: Mesa LLVM clang libclc -- make sure they are consistent Reply with quote

This is an information post.. for those experiencing issues with llvm, clang, libclc and mesa interactions.

I had a problem today where on the same machine but two different environments (different root partitions) which are almost the same but not quite..

Recently to save time, I built llvm in one environment , quickpkg'd it and installed on the other ..rebuilt clang there as well .. today I ran an upgrade in this as a chroot'd instance .. but mesa failed to build .. actually it looked very much like a linking error .. i915_pipe.la failed to build .. also c++11 warningstrying to link to an obsolete/missing version of the C++ library.

in the master environment mesa installed fine .. so something was inconsistent .. decided to rebuild llvm, clang and libclc in the chroot'd instance .. after that mesa built and installed fine.

So .. make sure .. llvm, clang and libclc are built with the same environment to prevent issues .. particularly with linkage.
Back to top
View user's profile Send private message
bschnzl
n00b
n00b


Joined: 13 Mar 2005
Posts: 67

PostPosted: Wed Apr 20, 2016 12:14 pm    Post subject: Reply with quote

This looked like another circular block...

So I did:
Code:

emerge llvm clang libclc mesa -C


When I tried to emerge mesa, nothing changed, so I came at from the other end:
Code:

emerge libclc -v


which merged libclc, llvm, and clang. Now, when I try to put mesa back, I get:

Code:

 ~ # emerge mesa -vp

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild  N     ] dev-util/re2c-0.13.7.5::gentoo  2,293 KiB
[ebuild  N     ] dev-util/ninja-1.6.0::gentoo  USE="vim-syntax -doc -emacs {-test} -zsh-completion" 171 KiB
[ebuild     U ~] sys-devel/llvm-3.7.1-r1:0/3.7.1::gentoo [3.5.2:0/3.5::gentoo] USE="clang libffi ncurses python static-analyzer xml -debug -doc -gold -libedit -lldb% -multitarget -ocaml {-test}" ABI_X86="(64) -32 (-x32)" PYTHON_TARGETS="python2_7 (-pypy%)" VIDEO_CARDS="-radeon" 24,610 KiB
[ebuild     U ~] sys-devel/clang-3.7.1-r100:0/3.7::gentoo [3.5.2-r100:0/3.5::gentoo] USE="python static-analyzer -debug -multitarget" ABI_X86="(64) -32 (-x32)" 0 KiB
[ebuild  N    ~] media-libs/mesa-11.2.1::gentoo  USE="classic dri3 egl gallium gbm llvm nptl opencl openmax osmesa udev vdpau xa xvmc -bindist -d3d9 -debug -gles1 -gles2 -pax_kernel -pic (-selinux) -vaapi -wayland" ABI_X86="(64) -32 (-x32)" VIDEO_CARDS="i965 intel (-freedreno) -i915 -ilo -nouveau -r100 -r200 -r300 -r600 -radeon -radeonsi -vmware" 7,674 KiB
[blocks B      ] <=sys-devel/clang-3.7.1-r99 ("<=sys-devel/clang-3.7.1-r99" is blocking sys-devel/llvm-3.7.1-r1)


If I had time to post emerge --info, I'd file a bug! As it is, here is the full output, minus the boilerplate
http://pastebin.com/XY9ZhTQ3
_________________
Persistance Pays
Back to top
View user's profile Send private message
derk
Guru
Guru


Joined: 10 Mar 2003
Posts: 347
Location: St Thomas Ontario

PostPosted: Wed Apr 20, 2016 2:33 pm    Post subject: Reply with quote

so looks like you have really old llvm and clang installed .. then upgrade is required to meet mesa 11.2.1 requirements .. maybe do llvm upgrade first then mesa install ..

how did you manage to keep from upgrading in previous rebuilds of llvm and clang ??


ah.. a newer libclc-0.2.0_pre20160209 would help .. are you on stable ?? with some ~arch (unstable)

perhaps you have accidently added llvm, clang, libclc and/or mesa to your world file .. that will mess-up dependancy resolution ..

do an " emerge -n --deselect=y <offending packages here>"
to remove them from your world file
.. anything that pulls in xorg-server will pull in the above as well .. so they don't need to be in world
Back to top
View user's profile Send private message
bschnzl
n00b
n00b


Joined: 13 Mar 2005
Posts: 67

PostPosted: Thu Apr 21, 2016 2:48 am    Post subject: Reply with quote

I emaint -r gentoo sync about once a week, manually on this box. It is my primary lappy, so it gets picked for most of the adventures. I have some ~amd64, and well - you spotted them.

<brag>
It is a relatively new monster, w/ a 1TB hybrid drive and a 2TB hard drive. I run xen, usually getting to 3 HVM doze instances, and a PV *NIX or two thrown in for good measure.
</brag>

I found mesa worked best for multimedia support when I was given a video forensic case. I used transform to pull an avi out of a "proprietary" format. I tried several video editing packages, but all were in the portage tree.

I still don't have OpenGL (nvidia)... but I beat all comers nonetheless...

So... for day to day Ops, which package can I drop?
_________________
Persistance Pays
Back to top
View user's profile Send private message
derk
Guru
Guru


Joined: 10 Mar 2003
Posts: 347
Location: St Thomas Ontario

PostPosted: Thu Apr 21, 2016 11:24 am    Post subject: Reply with quote

you will have to decide if the most recent mesa is important and keyword it's dependencies as needed .. mixing arch and ~arch is tricky and each set-up is unique .. so you are on your own .. experiment with setting all of mesa , llvm, clang and libclc keyworded as ~arch .. other stuff may need setting as well .. have fun !
Back to top
View user's profile Send private message
bschnzl
n00b
n00b


Joined: 13 Mar 2005
Posts: 67

PostPosted: Sat Apr 23, 2016 10:50 pm    Post subject: Reply with quote

Whats even trickier (word?) is backing out ~arch after a regular update demands it.

I have run Gentoo long enough to understand the requirements for inclusion in the dev group, and the testers group. This a 'UGE undertaking, and only the dedication of some highly skilled individuals makes it possible. For that, I can only offer thanks.

With the thousands of packages, and the complex environments, it is truly amazing that Gentoo worx. Thank You all.

That being said, fun is not a word I would use to describe these blocks. Just call this post another Quality Assurance Flag - where ever the issues starts.

The answer here was to ~arch clang, llvm and libclc, and run
Code:
emerge mesa --backtrack=30 -Dv


I had to nodeps mesa back in - so I could shutdown and go to work. So there are some intermediate activities in the mix. All were operational. Through all of this, I saw no change in capabilities.

B.
_________________
Persistance Pays
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Desktop Environments All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum