|
From: linux u. <lin...@gm...> - 2009-02-15 22:42:55
|
I'd like to add that while cross compiling Valgrind 3.4,I ran into the
following error:
Our codebase is based on Linux 2.6.Valgrind is supposed to get built as part
of the Linux utility and kernel build.
mpicc -g -O -fno-omit-frame-pointer -Wall -fpic -shared -m32 \
-I../include \
-o libmpiwrap-PPC32_LINUX.so libmpiwrap.c
gcc: libmpiwrap.c: No such file or directory *<-----------------*
make-3.81[4]: *** [libmpiwrap-PPC32_LINUX.so] Error 1
make-3.81[4]: Leaving directory
`/build/valgrind/contrib/valgrind/obj-ppc/auxprogs'
make-3.81[5]: Nothing to be done for `all-am'.
make-3.81[5]: Leaving directory
`/build/valgrind/contrib/valgrind/obj-ppc/docs'
make-3.81[4]: Leaving directory
`/build/valgrind/contrib/valgrind/obj-ppc/docs'
make-3.81[3]: *** [all-recursive] Error 1
make-3.81[3]: Leaving directory `/build/valgrind/contrib/valgrind/obj-ppc'
make-3.81[2]: *** [all] Error 2
make-3.81[2]: Leaving directory `/build/valgrind/contrib/valgrind/obj-ppc'
make-3.81[1]: Leaving directory `/build/valgrind'
make-3.81: *** [all] Error 2
Also,the object directory used for Valgrind is obj-ppc.
$ls obj-ppc/auxprogs
Makefile valgrind-listener valgrind_listener-valgrind-listener.o
In order to get rid of this error,I made the following change to
obj-ppc/auxprogs/Makefile
(Even if making a change is allowed,I think the right thing would be do to
change
valgrind/auxprogs/Makefile.am,since both valgrind/auxprogs/Makefile.in and
obj-ppc/auxprogs/Makefile are generated from valgrind/auxprogs/Makefile.am)
-------------------------------------
# The kludge that passes for vex's build system can't handle parallel
# builds. So, for the time being, serialise all Valgrind building.
# (this is equivalent to enforcing "make -j 1".
.NOTPARALLEL:
libmpiwrap-PPC32_LINUX.so: libmpiwrap.c
*-$(MPI_CC) $(HACKY_FLAGS_PRI) \*
-I../include \
-o libmpiwrap-PPC32_LINUX.so libmpiwrap.c
----------------------------------------------------
I added a leading '-' to $(MPI_CC) so that the compilation proceeds even if
the command fails.
With this change,the build succeeded.
Is libmpiwrap-PPC32_LINUX.so needed for Valgrind to function properly?Is it
okay to make the change I've made and ignore the error?
Thanks.
|