#13060: Update Valgrind spkg to version 3.8.1
----------------------------------------------------------------+-----------
Reporter: jpflori |
Owner: tbd
Type: defect |
Status: needs_review
Priority: major |
Milestone: sage-5.6
Component: optional packages |
Resolution:
Keywords: valgrind spkg | Work
issues: Test on OSX
Report Upstream: Fixed upstream, but not in a stable release. |
Reviewers:
Authors: Jean-Pierre Flori | Merged
in:
Dependencies: |
Stopgaps:
----------------------------------------------------------------+-----------
Comment (by iandrus):
It looks like the diffs checking for `-arch` support are not included in
the new spkg. I'm running OS X 10.8.2 and it doesn't build without them.
If I apply those changes manually, then it chokes on `__private_extern__`.
Changing those to `extern`, it builds. However, the "impossible" happens
and it doesn't work:
{{{
==415== Memcheck, a memory error detector
==415== Copyright (C) 2002-2012, and GNU GPL'd, by Julian Seward et al.
==415== Using Valgrind-3.8.1 and LibVEX; rerun with -h for copyright info
==415== Command: python -i
==415== Parent PID: 414
==415==
--415-- /Users/gvol/SageStuff/sage-5.4.rc2/local/bin/python:
--415-- dSYM directory is missing; consider using --dsymutil=yes
eq_SyscallStatus:
{78 0 43}
{78 0 40}
valgrind: m_syswrap/syswrap-main.c:380 (eq_SyscallStatus): the
'impossible' happened.
==415== at 0x138032720: ???
==415== by 0x138032A03: ???
==415== by 0x13809A395: ???
==415== by 0x13809B5FF: ???
==415== by 0x138098D8A: ???
==415== by 0x1380B9F21: ???
sched status:
running_tid=1
Thread 1: status = VgTs_Runnable
==415== at 0x7FFF5FC242DA: _kernelrpc_mach_vm_allocate_trap (in
/usr/lib/dyld)
==415== by 0x7FFF5FC2497C: vm_allocate (in /usr/lib/dyld)
==415== by 0x7FFF5FC13BF3:
ImageLoaderMachO::reserveAnAddressRange(unsigned long,
ImageLoader::LinkContext const&) (in /usr/lib/dyld)
==415== by 0x7FFF5FC13A54:
ImageLoaderMachO::assignSegmentAddresses(ImageLoader::LinkContext const&)
(in /usr/lib/dyld)
==415== by 0x7FFF5FC13C58: ImageLoaderMachO::mapSegments(int, unsigned
long long, unsigned long long, unsigned long long,
ImageLoader::LinkContext const&) (in /usr/lib/dyld)
==415== by 0x7FFF5FC17104:
ImageLoaderMachOCompressed::instantiateFromFile(char const*, int, unsigned
char const*, unsigned long long, unsigned long long, stat const&, unsigned
int, unsigned int, linkedit_data_command const*, ImageLoader::LinkContext
const&) (in /usr/lib/dyld)
==415== by 0x7FFF5FC10F5A: ImageLoaderMachO::instantiateFromFile(char
const*, int, unsigned char const*, unsigned long long, unsigned long long,
stat const&, ImageLoader::LinkContext const&) (in /usr/lib/dyld)
==415== by 0x7FFF5FC03557: dyld::loadPhase6(int, stat const&, char
const*, dyld::LoadContext const&) (in /usr/lib/dyld)
==415== by 0x7FFF5FC08BAE: dyld::loadPhase5(char const*, char const*,
dyld::LoadContext const&, std::__1::vector<char const*,
std::__1::allocator<char const*> >*) (in /usr/lib/dyld)
==415== by 0x7FFF5FC0860D: dyld::loadPhase4(char const*, char const*,
dyld::LoadContext const&, std::__1::vector<char const*,
std::__1::allocator<char const*> >*) (in /usr/lib/dyld)
==415== by 0x7FFF5FC084F9: dyld::loadPhase3(char const*, char const*,
dyld::LoadContext const&, std::__1::vector<char const*,
std::__1::allocator<char const*> >*) (in /usr/lib/dyld)
==415== by 0x7FFF5FC07C30: dyld::loadPhase1(char const*, char const*,
dyld::LoadContext const&, std::__1::vector<char const*,
std::__1::allocator<char const*> >*) (in /usr/lib/dyld)
==415== by 0x7FFF5FC0319A: dyld::loadPhase0(char const*, char const*,
dyld::LoadContext const&, std::__1::vector<char const*,
std::__1::allocator<char const*> >*) (in /usr/lib/dyld)
==415== by 0x7FFF5FC02F07: dyld::load(char const*, dyld::LoadContext
const&) (in /usr/lib/dyld)
==415== by 0x7FFF5FC0598E: dyld::_main(macho_header const*, unsigned
long, int, char const**, char const**, char const**, unsigned long*) (in
/usr/lib/dyld)
==415== by 0x7FFF5FC01396: dyldbootstrap::start(macho_header const*,
int, char const**, long, macho_header const*, unsigned long*) (in
/usr/lib/dyld)
==415== by 0x7FFF5FC0105D: _dyld_start (in /usr/lib/dyld)
==415== by 0x1: ???
==415== by 0x7FFF5FBFEBBA: ???
==415== by 0x7FFF5FBFEBC1: ???
Note: see also the FAQ in the source distribution.
It contains workarounds to several common problems.
In particular, if Valgrind aborted or crashed after
identifying problems in your program, there's a good chance
that fixing those problems will prevent Valgrind aborting or
crashing, especially if it happened in m_mallocfree.c.
If that doesn't help, please report this bug to: www.valgrind.org
In the bug report, send all the above text, the valgrind
version, and what OS and version you are using. Thanks.
}}}
For the record, the exact way that I made the "fixes" was to add
{{{
perl -pi.bak -e 's/[-]arch x86_64/\@FLAG_M64@/;' -e 's/[-]arch
i386/\@FLAG_M32@/' configure.in Makefile.all.am
./autogen.sh
export CFLAGS="$CFLAGS -D__private_extern__=extern"
}}}
to `spkg-install` just before calling configure. I don't suggest this
method of "fixing" it.
Perhaps we should ask the maintainers of valgrind the best way to proceed.
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/13060#comment:22>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.