On 10/01/12 13:38, James Abernathy wrote:

On Tue, Jan 10, 2012 at 8:20 AM, Jack Mitchell <ml@communistcode.co.uk> wrote:
On 10/01/12 11:21, Jack Mitchell wrote:
On 10/01/12 11:16, Martin Jansa wrote:
On Tue, Jan 10, 2012 at 11:08:22AM +0000, Jack Mitchell wrote:
Good morning everyone,

I am currently having issues creating a (very!) simple package. I have
looked at the latest reference manual and studied other .bb files to no
avail.

I am trying to build a simple web server called Hiawatha. To install
(http://www.hiawatha-webserver.org/howto/compilation_and_installation)
it consists of a simple:

./configure

make

make install

Now, for the life in me I cannot replicate this behaviour in a .bb file.
This is what I have so far:

DESCRIPTION = "Lightweight secure web server"
HOMEPAGE = "http://www.hiawatha-webserver.org"

LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=a9b0a0eb7c54c87ec6ac05f5f603df6a"

SECTION = "custom"


PR = "r0"

SRC_URI = "http://www.hiawatha-webserver.org/files/hiawatha-7.8.2.tar.gz"

SRC_URI[md5sum] = "
8aff3f8c759871ea1d1ff22e98030332"

do_configure () {

   ./configure --disable-ipv6 \
              --disable-ssl \
              --disable-toolkit \
              --disable-xslt \
              --disable-largefile \

   oe_runmake

}

do_install () {

   oe_runmake install DESTDIR=${D} SBINDIR=${sbindir} MANDIR=${mandir} \
     INCLUDEDIR=${includedir}

}

Could someone point me in the right direction, I feel this should be an
extremely easy piece of software to build - I think I'm just not
understanding the build system correctly....

The error I receive when trying to build this package is:

ERROR: Function 'do_install' failed (see
/home/jack/yocto/poky-git/beagleInitial/tmp/work/armv5te-poky-linux-gnueabi/hiawatha-7.8.2-r0/temp/log.do_install.6289
for further information)
| NOTE: make -j 9 -e MAKEFLAGS= -e install
DESTDIR=/home/jack/yocto/poky-git/beagleInitial/tmp/work/armv5te-poky-linux-gnueabi/hiawatha-7.8.2-r0/image
SBINDIR=/usr/sbin MANDIR=/usr/share/man INCLUDEDIR=/usr/include
| make: *** No rule to make target `install'.  Stop.
| ERROR: oe_runmake failed
try to start with
inherit autotools

Cheers,,

Thanks in advance,
Jack.

_______________________________________________
yocto mailing list
yocto@yoctoproject.org

https://lists.yoctoproject.org/listinfo/yocto

Hi Martin,

Inheriting autotools makes no difference, I also don't understand why autotools should be inherited if it is only a make/configure combination being used?

Best Regards
_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto

Ok, I have managed to get a bit further on this. I didn't realise that I had to do

bitbake -c clean hiawatha

Everytime I had changed the package to ensure that it was building with the new configuration. My new .bb looks like this:


DESCRIPTION = "Lightweight secure web server"
HOMEPAGE = "http://www.hiawatha-webserver.org"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=a9b0a0eb7c54c87ec6ac05f5f603df6a"
DEPENDS = "openssl libxml2 libxslt"

SECTION = "custom"

PR = "r0"

SRC_URI = "http://www.hiawatha-webserver.org/files/hiawatha-7.8.2.tar.gz"
SRC_URI[md5sum] = "8aff3f8c759871ea1d1ff22e98030332"

inherit autotools

EXTRA_OEMAKE = "'CC=${CC}' 'CFLAGS=${CFLAGS} -I${S}/include -DWITHOUT_XATTR' \
                    'BUILDDIR=${S}'"

EXTRA_OECONF = " --disable-ipv6 \

            --disable-ssl \
            --disable-toolkit \
            --disable-xslt \
            --disable-largefile \
            --mandir=${mandir}"

do_configure() {


 oe_runconf

}

do_compile() {

 oe_runmake

}

do_install() {

 oe_runmake install DESTDIR=${D} SBINDIR=${sbindir} INCLUDEDIR=${includedir}


Now, this is building and installing however the Hiawatha binary doesn't get included in the build. The configuration files make it in so I know it's running the make install phase however I don't know how to find out what is going on during the build and why the binary isn't making it in the rootfs.

 
Maybe you need an IMAGE_INSTALL += "hiawatha" in you local.conf????

I already have this in my custom image .bb file. As noted above it seems to install everything apart from the binary so all the config files go in, just not the especially important bit!

Thank you for you help though!

Regards,

 
Jim A
_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto