Question about stpd and install directory

Li Guanglei guanglei@cn.ibm.com
Sun Jul 2 14:05:00 GMT 2006


Frank Ch. Eigler ??:
>> I just installed system tap from CVS, configured with:
>>> ./configure --with-elfutils=/local/src/elfutils-0.121/
>>> --prefix=/local/systemtap
>> Note the non-default install directory.
>> [...]
>> Is there an option I should be passing to stap to find the right
>> stpd location?
>> [...]
> 
> Something is strange here.  With my builds (using only --prefix),
> the Makefile properly passes the resultant @pkglibdir@ along:
> 
> [...]
> if g++ -DHAVE_CONFIG_H -I. -I../src -I.  -DPKGLIBDIR='"/home/fche/Private/DEVEL/DEVEL-systemtap/BUILD/../INST/libexec/systemtap"' -DPKGDATADIR='"/home/fche/Private/DEVEL/DEVEL-systemtap/BUILD/../INST/share/systemtap"' -Iinclude-elfutils  -Werror -Wall -g -O2 -MT stap-buildrun.o -MD -MP -MF ".deps/stap-buildrun.Tpo" -c -o stap-buildrun.o `test -f 'buildrun.cxx' || echo '../src/'`buildrun.cxx; \
> then mv -f ".deps/stap-buildrun.Tpo" ".deps/stap-buildrun.Po"; else rm -f ".deps/stap-buildrun.Tpo"; exit 1; fi
> [...]
> 
> It is that PKGLIBDIR macro that is used in buildrun.cxx in order to
> find stpd.  What does it say in your builds?
> 
> 
> - FChE

I tried and found if you get a fresh new codes from cvs and then 
".configure --prefix=/local/systemtap; make; make install", everything 
should be ok.

But if you first install systemtap with the default prefix, and then 
you ".configure --prefix=/local/systemtap; ... ", it will complain not 
finding tapsets and runtime, just as what Nathan saw.

The reason is because that after "./configure 
--prefix=/local/systemtap", Makefile is regenerated to have a new 
PKGDATADIR, but stap won't be regenerated, so stap still use the old 
PKGDATADIR definition.

So I tried to "make clean" after I use configure to install stap to a 
new location, then it won't have problems any more.

- Guanglei





More information about the Systemtap mailing list