[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [microblaze-uclinux] compilation of ffmpeg with profiling enable
- To: <microblaze-uclinux@xxxxxxxxxxxxxx>
- Subject: RE: [microblaze-uclinux] compilation of ffmpeg with profiling enable
- From: "Jim Van Vorst" <jvanvorst@xxxxxxxxx>
- Date: Fri, 15 May 2009 13:50:57 -0700
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:from:to:references:subject :date:message-id:mime-version:content-type:x-mailer:x-mimeole :in-reply-to:thread-index; bh=9cj/YgNx1SqNbn8zROxk8nEnyida9BvZxMCKWmV5P+A=; b=S0NlM4VZTtDyKovPhdQIYmZoV5WTs0fJGirtdBfE5YgimVHBIt6b4El1UJ+tIYB4sF HopHTh/BzNN+5YvH9GvHD/t5md/OoH/urouByr07CSHN5mLzWr5HoANBf9q3UWc47b59 EPsH10BeN2wk3Tl+NV4BE2aT0/R4yVz5Jm3J8=
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=from:to:references:subject:date:message-id:mime-version :content-type:x-mailer:x-mimeole:in-reply-to:thread-index; b=cuAeuXh8GYbiGdXr2jN5L3TNun0M1efRJ4FT8f0Q9QwhUcyIy/lpCfOXtu43X1XjdF ekx/T7lW1jWnLsBn3rT9R8rdM7n0DPCmn/icq+pF47L5O1b3Wah0lHj9pEEGvHcCaUb4 LYQaJ7rM5cuhoVeyOcKbxeHVXsyCmra7uqvi0=
- In-reply-to: <3778d65e0905151333v4cbcacd6n5b66bc08d6ec1d00@xxxxxxxxxxxxxx>
- References: <3778d65e0905151333v4cbcacd6n5b66bc08d6ec1d00@xxxxxxxxxxxxxx>
- Reply-to: microblaze-uclinux@xxxxxxxxxxxxxx
- Sender: owner-microblaze-uclinux@xxxxxxxxxxxxxxxxxxxx
- Thread-index: AcnVnN5r9Yl1B/XyREKXfx2CSmssuQAAcE/w
Doesn't compiling with gprof insert a call to mcount() at
every function call entry?
You need to write a mcount function or find the gnu
implementation somewhere.
First I succeed in cross-compiling and running ffmpeg-0.5 on the
microblaze.
I compiled it simply with these configure
option
./configure --cross-prefix=mb-linux- --arch=microblaze
and
I then test on the target with the following command `ffmpeg -i foreman.264
foreman.yuv`.
The resulting file is binary equal to the one generated on the
host with the same command [1].
Now I want to do some profiling on the
target.
So I recompile the source with these configuration
[2].
./configure --prefix=/usr/local --cross-prefix=mb-linux-
--arch=microblaze --enable-gprof --build-suffix=-prof
then when making, I
have the compilation errors included at end of this mail.
Any idea ?
There is no such problem on the native host compiler build with
:
./configure --prefix=/usr/local --enable-gprof
--build-suffix=-prof
Has anybody allready used the gprof tool with
microblaze binaries ?
Nicolas
---
[1] Yes it is about 500
times slower than on the host (a Core2 Quad @1.6 GHz), but it is for an
experimentation.
[2] Indeed, I use two separates build directory
builds/default and builds/prof and run the configure script for here
(../../configure [opts])
---
mb-linux-gcc
-L"/home/users/nicolas/xilinx/petalinux/software/third-party/build/ffmpeg-0.5/builds/prof"/libavdevice
-L"/home/users/nicolas/xilinx/petalinux/software/third-party/build/ffmpeg-0.5/builds/prof"/libavformat
-L"/home/users/nicolas/xilinx/petalinux/software/third-party/build/ffmpeg-0.5/builds/prof"/libavcodec
-L"/home/users/nicolas/xilinx/petalinux/software/third-party/build/ffmpeg-0.5/builds/prof"/libavutil
-rdynamic -export-dynamic -Wl,--warn-common -Wl,--as-needed
-Wl,-rpath-link,"/home/users/nicolas/xilinx/petalinux/software/third-party/build/ffmpeg-0.5/builds/prof"/libpostproc
-Wl,-rpath-link,"/home/users/nicolas/xilinx/petalinux/software/third-party/build/ffmpeg-0.5/builds/prof"/libswscale
-Wl,-rpath-link,"/home/users/nicolas/xilinx/petalinux/software/third-party/build/ffmpeg-0.5/builds/prof"/libavfilter
-Wl,-rpath-link,"/home/users/nicolas/xilinx/petalinux/software/third-party/build/ffmpeg-0.5/builds/prof"/libavdevice
-Wl,-rpath-link,"/home/users/nicolas/xilinx/petalinux/software/third-party/build/ffmpeg-0.5/builds/prof"/libavformat
-Wl,-rpath-link,"/home/users/nicolas/xilinx/petalinux/software/third-party/build/ffmpeg-0.5/builds/prof"/libavcodec
-Wl,-rpath-link,"/home/users/nicolas/xilinx/petalinux/software/third-party/build/ffmpeg-0.5/builds/prof"/libavutil
-Wl,-Bsymbolic -p -o ffmpeg_g ffmpeg.o cmdutils.o -lavdevice-prof
-lavformat-prof -lavcodec-prof -lavutil-prof -lm -ldl -ldl
ffmpeg.o: In
function
`opt_video_rc_override_string':
/home/users/nicolas/xilinx/petalinux/software/third-party/build/ffmpeg-0.5/ffmpeg.c:2290:
undefined reference to `_mcount'
ffmpeg.o: In function
`opt_video_standard':
/home/users/nicolas/xilinx/petalinux/software/third-party/build/ffmpeg-0.5/ffmpeg.c:2613:
undefined reference to `_mcount'
ffmpeg.o: In function
`opt_vstats_file':
/home/users/nicolas/xilinx/petalinux/software/third-party/build/ffmpeg-0.5/ffmpeg.c:3671:
undefined reference to `_mcount'
ffmpeg.o: In function
`opt_audio_channels':
/home/users/nicolas/xilinx/petalinux/software/third-party/build/ffmpeg-0.5/ffmpeg.c:2602:
undefined reference to `_mcount'
ffmpeg.o: In function
`opt_audio_rate':
/home/users/nicolas/xilinx/petalinux/software/third-party/build/ffmpeg-0.5/ffmpeg.c:2596:
undefined reference to
`_mcount'
ffmpeg.o:/home/users/nicolas/xilinx/petalinux/software/third-party/build/ffmpeg-0.5/ffmpeg.c:2576:
more undefined references to `_mcount' follow
collect2: ld returned 1 exit
status
make: *** [ffmpeg_g] Error 1