pcp
[Top] [All Lists]

RE: [pcp] PCP build on Ubuntu Precise (kernel 3.2)

To: "'Amer Ather'" <aather@xxxxxxxxxxx>, <pcp@xxxxxxxxxxx>
Subject: RE: [pcp] PCP build on Ubuntu Precise (kernel 3.2)
From: "Ken McDonell" <kenj@xxxxxxxxxxxxxxxx>
Date: Fri, 18 Jul 2014 18:01:17 +1000
Delivered-to: pcp@xxxxxxxxxxx
In-reply-to: <CAM1aq-GUKBWvC0v_LGMMSFBJM7-ccuXf-Y7uZmvMJMbw8XdSwQ@xxxxxxxxxxxxxx>
References: <CAM1aq-GUKBWvC0v_LGMMSFBJM7-ccuXf-Y7uZmvMJMbw8XdSwQ@xxxxxxxxxxxxxx>
Thread-index: AQE+80KSEgd//KUzk6wCmNceYYVnepzG1Ldg

Amer, â

 

OK, on my Ubuntu Precise amd64 QA VM â

 

I did have libmicrohttpd-dev 0.4.6 installed, which fails the PCP minimum revision level, so none of the PCP webapi stuff was being built (which explains why I have not seen any errors).

 

Tried apt-get upgrade libmicrohttpd-dev

ÂÂÂÂÂÂÂ => pulls a lot of stuff but not libc6 (2.15-0ubuntu10 before and after)

ÂÂÂÂÂÂÂ => but libmicrohttpd-dev is still 0.4.6

 

So using Ubuntu pkgs on this platform is never going to build the PCP webapi stuff.

 

Now for your forced build with libmicrohttpd 0.9.34 â can you please send me your src/include/builddefs after configure has been run in the build?

 

And did you install libmicrohttpd from a package you built, or a make install from the source tree?

 

From: pcp-bounces@xxxxxxxxxxx [mailto:pcp-bounces@xxxxxxxxxxx] On Behalf Of Amer Ather
Sent: Friday, 18 July 2014 11:34 AM
To: pcp@xxxxxxxxxxx
Subject: [pcp] PCP build on Ubuntu Precise (kernel 3.2)

 

Ubuntu Precise repository contains an older version of PCP (3.5). Since we needed newer features, I tried building PCP version from dev branch (git clone git://git.performancecopilot.org/pcp.git dev), but it requires a newer version of libmicrohttpd. To overcome this dependency, I compiled libmicrohttpd-0.9.34 from the source but ran into pcp build errors.

 

Last time, I built from dev branch on Ubuntu Trusty (kernel 3.13) without any issue because trusty repository contains minimum version of libmicrohttpd.  If I point to Trusty repository from the Ubuntu Precise system, it downloads adding packages including newer version of libc6 and that is little risky. Is it possible to build PCP without updating libc on Ubuntu precise?

 

Build Error on Ubuntu Precise with libmicrohttpd-0.9.34:

 

# ./Makepkgs --verbose

....

" -I../../src/include -I../../src/include/pcp -o pmwebd -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-Bsymbolic-functions -Wl,-z,relro -Wall -L./src/libpcp/src -L./src/libpcp_pmda/src  -Wl,-Bsymbolic-functions -Wl,-z,relro -Wall -L../src/libpcp/src -L../src/libpcp_pmda/src  -Wl,-Bsymbolic-functions -Wl,-z,relro -Wall -L../../src/libpcp/src -L../../src/libpcp_pmda/src -pie -Wl,-z,relro -Wl,-z,now  main.o util.o pmwebapi.o pmresapi.o     -lpcp  -lmicrohttpd 

main.o: In function `mhd_respond':

/home/nflx-kernel-tunablestest/dev/build/deb/pcp-3.9.8/src/pmwebapi/main.c:88: undefined reference to `MHD_create_response_from_buffer'

pmwebapi.o: In function `pmwebapi_notify_error':

/home/nflx-kernel-tunablestest/dev/build/deb/pcp-3.9.8/src/pmwebapi/pmwebapi.c:188: undefined reference to `MHD_create_response_from_buffer'

pmwebapi.o: In function `mhdb_fini_response':

/home/nflx-kernel-tunablestest/dev/build/deb/pcp-3.9.8/src/pmwebapi/pmwebapi.c:518: undefined reference to `MHD_create_response_from_buffer'

pmwebapi.o: In function `pmwebapi_respond_new_context':

/home/nflx-kernel-tunablestest/dev/build/deb/pcp-3.9.8/src/pmwebapi/pmwebapi.c:355: undefined reference to `MHD_create_response_from_buffer'

pmwebapi.o: In function `pmwebapi_respond':

/home/nflx-kernel-tunablestest/dev/build/deb/pcp-3.9.8/src/pmwebapi/pmwebapi.c:1249: undefined reference to `MHD_basic_auth_get_username_password'

/home/nflx-kernel-tunablestest/dev/build/deb/pcp-3.9.8/src/pmwebapi/pmwebapi.c:1288: undefined reference to `MHD_create_response_from_buffer'

/home/nflx-kernel-tunablestest/dev/build/deb/pcp-3.9.8/src/pmwebapi/pmwebapi.c:1259: undefined reference to `MHD_create_response_from_buffer'

/home/nflx-kernel-tunablestest/dev/build/deb/pcp-3.9.8/src/pmwebapi/pmwebapi.c:1272: undefined reference to `MHD_queue_basic_auth_fail_response'

pmresapi.o: In function `pmwebres_respond':

/home/nflx-kernel-tunablestest/dev/build/deb/pcp-3.9.8/src/pmwebapi/pmresapi.c:144: undefined reference to `MHD_create_response_from_buffer'

/home/nflx-kernel-tunablestest/dev/build/deb/pcp-3.9.8/src/pmwebapi/pmresapi.c:115: undefined reference to `MHD_create_response_from_fd_at_offset'

collect2: ld returned 1 exit status

make[3]: *** [pmwebd] Error 1

make[2]: *** [default_pcp] Error 2

make[2]: Leaving directory `/home/nflx-kernel-tunablestest/dev/build/deb/pcp-3.9.8/src'

make[1]: *** [default_pcp] Error 2

make[1]: Leaving directory `/home/nflx-kernel-tunablestest/dev/build/deb/pcp-3.9.8'

make: *** [build-stamp] Error 2

dpkg-buildpackage: error: debian/rules build gave error exit status 2

---

 

Also, do you recommend installing PCP on the system as deb packages or from tarball. Somehow installing from deb packages generated by the build on ubuntu precise (when using trusty repository) was causing inconsistent results.

--

Thanks,

 

Amer Ather

Cloud Performance Engineering

<Prev in Thread] Current Thread [Next in Thread>