|
From: nustshell b. <bac...@gm...> - 2010-05-14 14:53:26
|
Hi, there were errors when I was building valgrind containing another tool. The error was glibc incompatible, which should be 2.2-2.5 (the glibc version in my computer is 2.10). Then I downloaded the latest release of valgrind-3.5.0, and added the file information of that tool in configure.in, however, it still displayed errors when "configure" that the makefile of the tool could not be generated. I really appreciate your help. -- Bache |
|
From: John R. <jr...@bi...> - 2010-05-14 15:22:42
|
On 05/14/2010 07:48 AM, nustshell bache wrote: > Hi, there were errors when I was building valgrind containing another > tool. The error was glibc incompatible, which should be 2.2-2.5 (the > glibc version in my computer is 2.10). Then I downloaded the latest > release of valgrind-3.5.0, and added the file information of that tool > in configure.in <http://configure.in>, however, it still displayed > errors when "configure" that the makefile of the tool could not be > generated. > > I really appreciate your help. You're unlikely to get any unless you give enough information to reproduce the problem. Pretend it's a bug report. Copy+paste the actual changes to config files, the actual command invocations, the actual error messages. Specify the CPU architecture, the operating system version, and the "other tool." -- |
|
From: John R. <jr...@bi...> - 2010-05-17 15:57:46
|
On 05/14/2010 07:14 PM, Bache Nustshell wrote: > I use Pentium, Ubuntu9.04, glibc version 2.10, gcc 4.4. > > "The other tool " is Flayer, http://code.google.com/p/flayer, a dynamic > tainting tool. Flayer is distributed with Valgrind 3.30. Perhaps you mean valgrind 3.3.0. The valgrind Release Archive page http://valgrind.org/downloads/old.html lists valgrind 3.3.0, but there is no link for the tar.bz2 file. Also, Flayer appears to be a plugin which is not part of valgrind itself: http://code.google.com/p/flayer/wiki/GettingStarted > In Valgrind > 3.3.0, autogen.sh is used to generate Makefile.in, and in each tool's > directory there is only Makefile.am, not including Makefile.in. But > Autogen.sh errors when generating Makefile.in for flayer because > valgrind3.3 requires glibc should be 2.2-2.5. Find the author/developer/[former]maintainer of Flayer, and ask why the requirement could not be satisfied by any subsequent glibc: glibc-2.2-2.5 or greater. Also, that version number "2.2-2.5" looks suspicious. Are you sure it isn't "2.2.5"? For instance, run readelf --all /bin/date [readelf is in the 'binutils' package] and note the sections .gnu.version and .gnu.version_r which have many instances of version "GLIBC_2.2.5" (and some "GLIBC_2.3.4", "GLIBC_2.4", etc.) Find the place where valgrind 3.3.0 specifies its dependency on glibc, and change the dependency from ==2.2.5 to >=2.2.5 . Additional related changes may be required later, but at least the change to >=2.2.5 will remove the first barrier. > Then I copied the entire directory of Flayer into Valgrind-3.5.0, and > modified /confiure.in <http://confiure.in>/ and /configure/. In 3.5.0, > there is no autogen.sh so we can directly use ./configure. However, in > Falyer, there is no such Makefile.in, so an error message came out that > "config.status: error: cannot find input file: flayer/Makefile.in". > > In brief, configure of Valgrind3.5.0 cannot find Makefile.in in Flayer > which should be generated by autogen.sh by Valgrind3.3.0 The "auto" tools are means to an end. The goal is a set of Makefiles, namely a Makefile in each appropriate directory. Run the "auto" tools separately in each version (valgrind 3.3.0 with Flayer, and valgrind 3.5.0), apply 'diff' to the corresponding Makefiles, then construct new Makefiles with a patch tool or by hand merge. -- |