This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
Re: error to run systemtap in an ARM platform
On 07/18/2011 03:01 PM, Da Zheng wrote:
> Hi,
>
> I got another problem. I tried to compile the example desktop.stp in the website, but failed.
Do you have a pointer to where you got the desktop.stp script? Is that disktop.stp in the systemtap examples?
Did you compile your kernel with the debug information available?
CONFIG_DEBUG_INFO=y
Also from what I recall some kernel can just include file and line number information, with
CONFIG_DEBUG_INFO_REDUCED. That is turned off in the kernel .config?
I tried compiling disktop.stp on my machine and got:
export KERNEL_SRC=/home/wcohen/stuff/efikamx/kernel/linux-kernel
stap -a arm -B CROSS_COMPILE=armv7hl-redhat-linux-gnueabi- -r $KERNEL_SRC -m disktop disktop.stp
WARNING: kernel release/architecture mismatch with host forces last-pass 4.
In file included from /tmp/stapt1iKiI/disktop.c:4908:0:
/tmp/stapt1iKiI/stap-symbols.h:89496:1: error: large integer implicitly truncated to unsigned type [-Werror=overflow]
cc1: all warnings being treated as errors.
>
> $ stap --vp 01 -a arm -r /build/tegra2_seaboard/tmp/portage/sys-kernel/chromeos-kernel-9999/work/chromeos-kernel-9999/build/tegra2_seaboard -p 4 -B CROSS_COMPILE=armv7a-cros-linux-gnueabi- -k desktop.stp
> semantic error: failed to retrieve return value location for vfs_read (/build/tegra2_seaboard/tmp/portage/sys-kernel/chromeos-kernel-9999/work/chromeos-kernel-9999/fs/read_write.c): identifier '$return' at desktop.stp:19:7
> source: if ($return>0) {
> ^
> semantic error: failed to retrieve return value location for vfs_write (/build/tegra2_seaboard/tmp/portage/sys-kernel/chromeos-kernel-9999/work/chromeos-kernel-9999/fs/read_write.c): identifier '$return' at :29:7
> source: if ($return>0) {
> ^
> Pass 2: analyzed script: 6 probe(s), 38 function(s), 10 embed(s), 5 global(s) using 171832virt/76644res/3076shr kb, in 570usr/60sys/633real ms.
> Pass 2: analysis failed. Try again with another '--vp 01' option.
> Keeping temporary directory "/tmp/stapqT2qvo"
>
> At first, I thought the bug might be fixed in the latest version, so I download the code from the git repository, built it, but still got the same error. I checked tapset/xxx/*.stp, but I didn't find scripts mention sys_read or sys_write. How do I fix this error?
>
> BTW, I think the latest version in the git repository has another bug.
> If I run ./configure; make, I get
> cscommon.h:7:17: error: ssl.h: No such file or directory
> I don't know what I should install to have ssl.h
> I already have
> /usr/include/nss/ssl.h
> /usr/include/openssl/ssl.h
>
> It can be compiled if I use --disable-server. However, in my cross compiling environment, even though I have already used --disable-server, I still get the same compilation error.
>
> Thanks,
> Da
You do a "make distclean" and "configure ..." on your cross compiling machine to get rid of the dependencies in .deps. I think that be stale and the reason why you are gitting that error.
-Will