Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Building valgrind 3.7.0 with clang but 3.6.1-r4 succeeded
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
battletroll
n00b
n00b


Joined: 16 Apr 2007
Posts: 13
Location: Mexico

PostPosted: Sun Sep 16, 2012 9:13 pm    Post subject: Building valgrind 3.7.0 with clang but 3.6.1-r4 succeeded Reply with quote

Hi. Some days ago I updated valgrind to then-latest 3.6.1-r4 version, using (as with mostly everything) clang as compiler.

Yesterday, after eix-sync'ing, I saw a new version - tried to update again, with no success.
These are the results of the automake tests:

Quote:
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking whether ln -s works... yes
checking for x86_64-pc-linux-gnu-gcc... /usr/bin/clang
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether /usr/bin/clang accepts -g... yes
checking for /usr/bin/clang option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of /usr/bin/clang... none
checking whether /usr/bin/clang and cc understand -c and -o together... yes
checking how to run the C preprocessor... /usr/bin/clang -E
checking whether we are using the GNU C++ compiler... yes
checking whether /usr/bin/clang++ accepts -g... yes
checking dependency style of /usr/bin/clang++... none
checking for x86_64-pc-linux-gnu-ranlib... x86_64-pc-linux-gnu-ranlib
checking for a sed that does not truncate output... /bin/sed
checking for ar... /usr/bin/ar
checking for perl... /usr/bin/perl
checking for gdb... /usr/bin/gdb
checking dependency style of /usr/bin/clang... none
checking for diff -u... yes
checking for a supported version of gcc... no (3.1)
configure: error: please use gcc >= 3.0 or clang >= 2.9

!!! Please attach the following file when seeking support:
!!! /var/tmp/portage/dev-util/valgrind-3.7.0-r4/work/valgrind-3.7.0/config.log
* ERROR: dev-util/valgrind-3.7.0-r4 failed (configure phase):
* econf failed
*
* Call stack:
* ebuild.sh, line 85: Called src_configure
* environment, line 3182: Called econf '--without-mpicc'
* phase-helpers.sh, line 467: Called die
* The specific snippet of code:
* die "econf failed"
*
* If you need support, post the output of `emerge --info '=dev-util/valgrind-3.7.0-r4'`,
* the complete build log and the output of `emerge -pqv '=dev-util/valgrind-3.7.0-r4'`.
* The complete build log is located at '/var/tmp/portage/dev-util/valgrind-3.7.0-r4/temp/build.log'.
* The ebuild environment file is located at '/var/tmp/portage/dev-util/valgrind-3.7.0-r4/temp/environment'.
* Working directory: '/var/tmp/portage/dev-util/valgrind-3.7.0-r4/work/valgrind-3.7.0'
* S: '/var/tmp/portage/dev-util/valgrind-3.7.0-r4/work/valgrind-3.7.0'


Notice clang is correctly identified, as well as its version (3.1), but then the build just fails. (btw, my gcc is 4.5.4).
Why is it failing, when it wasn't with previous version? What shoud I do?
Thanks,
Back to top
View user's profile Send private message
battletroll
n00b
n00b


Joined: 16 Apr 2007
Posts: 13
Location: Mexico

PostPosted: Sun Sep 30, 2012 2:40 pm    Post subject: A way to contact valgrind's package maintainer? Reply with quote

As indicated in my previous message, I successfully compiled valgrind 3.6.1-r4 in my Gentoo AMD64 system using clang.
Trying to compile newest stable version (3.7.0-r4) with clang fails, though.

I was hoping someone else would know why this is happening, or (more importantly) how to fix it.
Since apparently this is not the case, does anybody know how to contact the package maintainer?

I'll revert to temporarily compile valgrind with GCC but, in the spirit of helping both projects (Gentoo and clang), was wondering whom to contact so that this error could get investigated. Is it a problem in the package? Is it a problem with upstream?

Regards,
B.T.
Back to top
View user's profile Send private message
Hu
Watchman
Watchman


Joined: 06 Mar 2007
Posts: 8824

PostPosted: Sun Sep 30, 2012 3:45 pm    Post subject: Reply with quote

Check config.log to see why the test incorrectly classified your clang install as unusable. It is probably a bug in the Valgrind configure test, but we need to see the config.log to be sure.
Back to top
View user's profile Send private message
battletroll
n00b
n00b


Joined: 16 Apr 2007
Posts: 13
Location: Mexico

PostPosted: Tue Oct 02, 2012 11:05 am    Post subject: Reply with quote

Thanks Hu.
What I find suspicious in config.log is this:

After some core tests checking for install, gawk, ln, etc., configure checks for compiler and version:

Quote:
configure:3036: checking for x86_64-pc-linux-gnu-gcc
configure:3063: result: /usr/bin/clang
configure:3332: checking for C compiler version
configure:3341: /usr/bin/clang --version >&5
clang version 3.1 (branches/release_31)
Target: x86_64-pc-linux-gnu
Thread model: posix
configure:3352: $? = 0
configure:3341: /usr/bin/clang -v >&5
clang version 3.1 (branches/release_31)
Target: x86_64-pc-linux-gnu
Thread model: posix
configure:3352: $? = 0
configure:3341: /usr/bin/clang -V >&5
clang: error: argument to '-V' is missing (expected 1 value)
clang: error: no input files
configure:3352: $? = 1
configure:3341: /usr/bin/clang -qversion >&5
clang: error: no input files


As can be seen, clang's version is correctly gathered, as well as the full path to its binary.
After much, much more tests, (some pass, some not) the final, fatal error is about version number:

Quote:
configure:5120: checking for diff -u
configure:5128: result: yes
configure:5140: checking for a supported version of gcc
configure:5178: result: no (3.1)
configure:5180: error: please use gcc >= 3.0 or clang >= 2.9


Seems to me that "configure" is thinking that "3.1" relates to gcc rather than clang, else the final message would be non-sensical.

How should I proceed?
Back to top
View user's profile Send private message
wcg
Guru
Guru


Joined: 06 Jan 2009
Posts: 588

PostPosted: Tue Oct 02, 2012 11:10 pm    Post subject: Reply with quote

While the real fix will probably involve going through the valgrind
package maintainer and possibly to the upstream valgrind project
to get the configure script generated by autoconf fixed, you could
compare the config.log from the successful configure of valgrind-3.6.1-r4
with clang installed with the config.log from the unsuccessful
configure of valgrind-3.7.0-r4 with clang installed and see how
they differ. Look also at the arguments to configure and see if
any are different between the two builds.
_________________
TIA
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming 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