Ken,
On 12/19/14 3:14 PM, Ken McDonell wrote:
On
vm04 unknown i586 CentOS 5.11 (Final)
there is no flex-devel rpm, but libfl.a comes from the flex rpm.
I looked into this and libfl.a recently changed location. On the CentOS
side, it was in the flex package pre 6.6. From 6.6 onwards it is in a
new flex-devel package. On the Fedora side, looks like there has been a
flex-devel since at least version 18, and the libfl.a has been there
that whole time. I was unable to find any earlier information.
I don't know the difference between the fedora.spec and the
pcp.spec.in to be able to fix this properly.
But the linux pmda no longer builds because yylineno is not defined ...
gcc -Wall -L../../../src/libpcp/src -L../../../src/libpcp_pmda/src -shared
-Wl,-soname,pmda_proc.so -Wl,--version-script=exports -o pmda_proc.so pmda.o
cgroups.o proc_pid.o proc_runq.o proc_dynamic.o ksym.o getinfo.o contexts.o
gram_node.o config.o error.o hotproc.o lex.o gram.tab.o -lpcp_pmda -lpcp
-lfl -ldl
gcc -fPIC -fno-strict-aliasing -D_GNU_SOURCE -fstack-protector-all -D_FORTIFY_SOURCE=2
-fvisibility=hidden -Wall -O2 -g -DPCP_DEBUG -DPCP_VERSION=\"3.10.2\"
-I../../../src/include -I../../../src/include/pcp -o pmdaproc -Wall
-L../../../src/libpcp/src -L../../../src/libpcp_pmda/src pmda.o cgroups.o proc_pid.o
proc_runq.o proc_dynamic.o ksym.o getinfo.o contexts.o gram_node.o config.o error.o
hotproc.o lex.o gram.tab.o -lpcp_pmda -lpcp -lfl
error.o: In function `yyerror':
/home/kenj/src/pcp/src/pmdas/linux_proc/error.c:31: undefined reference to
`yylineno'
error.o: In function `yywarn':
/home/kenj/src/pcp/src/pmdas/linux_proc/error.c:24: undefined reference to
`yylineno'
gram.tab.o: In function `parse_predicate':
/home/kenj/src/pcp/src/pmdas/linux_proc/gram.y:150: undefined reference to
`yylineno'
collect2: ld returned 1 exit status
make[2]: *** [pmdaproc] Error 1
rm lex.c
make[1]: *** [default_pcp] Error 2
make: *** [default_pcp] Error 2
I have a fix for this here:
https://github.com/ubccr/pcp/tree/martins_working
commit 9d43a0f18e8890f0fd726cd2df1dc80493aa86c1
Author: Martins Innus <minnus@xxxxxxxxxxx>
Date: Mon Dec 22 13:45:08 2014 -0500
Fix flex config on older CentOS for hotproc
src/pmdas/linux_proc/lex.l | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
I wasn't seeing this in my version of flex/gcc, sorry.
Do we really need to be using flex in this PMDA?
I carried it over from the original sgi hotproc implementation for
parsing of the config files and modernized it enough to compile and
work. If there is a more pcp specific way of handling config files, I
can look into it. As far as I can tell, the pcp rpm build has required
flex for a while, but some files moving to flex-devel is a new wrinkle.
I am seeing a lot of other build breakage (about 1/3 of my machines), but don't
know yet if this issue is responsible on platforms other than CentOS 5.11.
_
Let me know what platforms these are and if I can spin up a VM I will
take a look.
Thanks
Martins
|