[yocto] basic recipe building - iperf

jfabernathy jfabernathy at gmail.com
Mon Jun 18 14:01:20 PDT 2012


I needed to do some network performance testing on a Crownbay board and 
needed iperf in that environment.  Since I had the core-image-sato-sdk 
image created, I just booted that and took the tarball from Sourceforge 
and built it  per the readme file instructions:

./configure
make
make install

After I completed my test, I thought about why not put that in my list 
of personal recipes.  I found the previous version of iperf in the 
openembedded collection of benchmark recipes and just copied it over.  
It built and worked fine.  There were a lot of items in the .bb that I 
didn't understand, so I thought for fun I'd just try to build a recipe 
for iperf 2.0.5 and see what happened.  My recipe is simple, mostly 
taken from the openembedded 2.0.4 version had stripped down:
-----------------------------
DESCRIPTION = "Iperf is a tool to measure maximum TCP bandwidth, 
allowing the tuning of various parameters and UDP characteristics"
HOMEPAGE = "http://dast.nlanr.net/Projects/Iperf/"
SECTION = "console/network"
LICENSE = "NewBSD"
LIC_FILES_CHKSUM = "file://COPYING;md5=e8478eae9f479e39bc34975193360298"

SRC_URI = " \
     ${SOURCEFORGE_MIRROR}/iperf/iperf-${PV}.tar.gz \
            "
SRC_URI[md5sum] = "44b5536b67719f4250faed632a3cd016"
SRC_URI[sha256sum] = 
"636b4eff0431cea80667ea85a67ce4c68698760a9837e1e9d13096d20362265b"

inherit autotools*
*
-----------------------
A lot of it worked, but I seem to have an install error on the man 
files.  Can anyone see what is wrong based on the log below:

DEBUG: SITE files ['endian-little', 'bit-32', 'ix86-common', 
'common-linux', 'common-glibc', 'i586-linux', 'common']
ERROR: Function failed: do_install (see 
/build/crownbay-denzil/tmp/work/core2-poky-linux/iperf-2.0.5-r0/temp/log.do_install.12443 
for further information)
NOTE: make -j 8 
DESTDIR=/build/crownbay-denzil/tmp/work/core2-poky-linux/iperf-2.0.5-r0/image 
install
Making install in compat
make[1]: Entering directory 
`/build/crownbay-denzil/tmp/work/core2-poky-linux/iperf-2.0.5-r0/iperf-2.0.5/compat'
make[2]: Entering directory 
`/build/crownbay-denzil/tmp/work/core2-poky-linux/iperf-2.0.5-r0/iperf-2.0.5/compat'
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory 
`/build/crownbay-denzil/tmp/work/core2-poky-linux/iperf-2.0.5-r0/iperf-2.0.5/compat'
make[1]: Leaving directory 
`/build/crownbay-denzil/tmp/work/core2-poky-linux/iperf-2.0.5-r0/iperf-2.0.5/compat'
Making install in doc
make[1]: Entering directory 
`/build/crownbay-denzil/tmp/work/core2-poky-linux/iperf-2.0.5-r0/iperf-2.0.5/doc'
make[2]: Entering directory 
`/build/crownbay-denzil/tmp/work/core2-poky-linux/iperf-2.0.5-r0/iperf-2.0.5/doc'
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory 
`/build/crownbay-denzil/tmp/work/core2-poky-linux/iperf-2.0.5-r0/iperf-2.0.5/doc'
make[1]: Leaving directory 
`/build/crownbay-denzil/tmp/work/core2-poky-linux/iperf-2.0.5-r0/iperf-2.0.5/doc'
Making install in include
make[1]: Entering directory 
`/build/crownbay-denzil/tmp/work/core2-poky-linux/iperf-2.0.5-r0/iperf-2.0.5/include'
make[2]: Entering directory 
`/build/crownbay-denzil/tmp/work/core2-poky-linux/iperf-2.0.5-r0/iperf-2.0.5/include'
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory 
`/build/crownbay-denzil/tmp/work/core2-poky-linux/iperf-2.0.5-r0/iperf-2.0.5/include'
make[1]: Leaving directory 
`/build/crownbay-denzil/tmp/work/core2-poky-linux/iperf-2.0.5-r0/iperf-2.0.5/include'
Making install in src
make[1]: Entering directory 
`/build/crownbay-denzil/tmp/work/core2-poky-linux/iperf-2.0.5-r0/iperf-2.0.5/src'
make[2]: Entering directory 
`/build/crownbay-denzil/tmp/work/core2-poky-linux/iperf-2.0.5-r0/iperf-2.0.5/src'
test -z "/usr/bin" || /bin/mkdir -p 
"/build/crownbay-denzil/tmp/work/core2-poky-linux/iperf-2.0.5-r0/image/usr/bin"
make[2]: Nothing to be done for `install-data-am'.
   /usr/bin/install -c iperf 
'/build/crownbay-denzil/tmp/work/core2-poky-linux/iperf-2.0.5-r0/image/usr/bin'
make[2]: Leaving directory 
`/build/crownbay-denzil/tmp/work/core2-poky-linux/iperf-2.0.5-r0/iperf-2.0.5/src'
make[1]: Leaving directory 
`/build/crownbay-denzil/tmp/work/core2-poky-linux/iperf-2.0.5-r0/iperf-2.0.5/src'
Making install in man
make[1]: Entering directory 
`/build/crownbay-denzil/tmp/work/core2-poky-linux/iperf-2.0.5-r0/iperf-2.0.5/man'
make[2]: Entering directory 
`/build/crownbay-denzil/tmp/work/core2-poky-linux/iperf-2.0.5-r0/iperf-2.0.5/man'
make[2]: Nothing to be done for `install-exec-am'.
test -z "/usr/share/man/man1" || /bin/mkdir -p 
"/build/crownbay-denzil/tmp/work/core2-poky-linux/iperf-2.0.5-r0/image/usr/share/man/man1"
  /usr/bin/install -c -m 644 iperf.1 iperf.1 
'/build/crownbay-denzil/tmp/work/core2-poky-linux/iperf-2.0.5-r0/image/usr/share/man/man1'
*/usr/bin/install: will not overwrite just-created 
`/build/crownbay-denzil/tmp/work/core2-poky-linux/iperf-2.0.5-r0/image/usr/share/man/man1/iperf.1' 
with `iperf.1'
make[2]: *** [install-man1] Error 1*
make[2]: Leaving directory 
`/build/crownbay-denzil/tmp/work/core2-poky-linux/iperf-2.0.5-r0/iperf-2.0.5/man'
make[1]: *** [install-am] Error 2
make[1]: Leaving directory 
`/build/crownbay-denzil/tmp/work/core2-poky-linux/iperf-2.0.5-r0/iperf-2.0.5/man'
make: *** [install-recursive] Error 1
ERROR: oe_runmake failed
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/yocto/attachments/20120618/9b440038/attachment.html>


More information about the yocto mailing list