Help - Search - Members - Calendar
Full Version: Why Not Cutting Edge?
OESF Forums > Distros, Development, and Model Specific Forums > Everything Development > OpenZaurus/Opie/Qtopia
ShiroiKuma
This is not a smarmy comment, I'm just really interested in the reasons:

Why doesn't OZ have cutting edge software available? Now with the 2.6 kernel, it'd be no prob.

I mean gcc is > 4.0, firefox > 1.5 etc. yet OZ stuff is older.

Is there a specific reason for this?
Antikx
I think OZ needs some mad compilers like Anunakin. smile.gif
DaemonsGR
No, it needs an easy to use (even if you are not core developer) building system!

Tasos
ShiroiKuma
QUOTE(DaemonsGR @ May 13 2006, 08:18 AM)
No, it needs an easy to use (even if you are not core developer) building system!

Tasos
*

I have just started building a whole GNU/Linux system from scratch on OZ, following the guide at http://www.linuxfromscratch.org

So far progressing, let's see how far I'll get. If this'll work, then I'll have all the latest compiled packages based on GCC 4.0 etc that will enable native cutting edge compilation...

Let's see...
lardman
Look on the oe mailing list.

The GCC 4.0 compiler has some quirks iirc, work is underway to use it.

Note that the releases are quite some way behind the cutting edge work going on in .dev


Si
Mickeyl
QUOTE(ShiroiKuma @ May 12 2006, 05:57 PM)
This is not a smarmy comment, I'm just really interested in the reasons:

Why doesn't OZ have cutting edge software available? Now with the 2.6 kernel, it'd be no prob.

I mean gcc is > 4.0, firefox > 1.5 etc. yet OZ stuff is older.

Is there a specific reason for this?
*

Heh, that's funny. For three years, OpenZaurus has been tarred and feathered because we always were on the bleeding edge. Now that we actually implemented the most wanted procedure -- a stable branch -- it starts the other way round blink.gif

If you checkout .dev and set DISTRO=openzaurus-unstable, you will get a bleeding edge build.
ShiroiKuma
QUOTE(Mickeyl @ May 13 2006, 12:18 PM)
If you checkout .dev and set DISTRO=openzaurus-unstable, you will get a bleeding edge build.
*

OK, I'd like to do this. But I've never played with CVS before etc. so am unsure how to do this really.

Could you advise me, how concretely should I go about doing this?

Thanks.
DaemonsGR
QUOTE(ShiroiKuma @ May 13 2006, 09:45 AM)
QUOTE(DaemonsGR @ May 13 2006, 08:18 AM)
No, it needs an easy to use (even if you are not core developer) building system!

Tasos
*

I have just started building a whole GNU/Linux system from scratch on OZ, following the guide at http://www.linuxfromscratch.org

So far progressing, let's see how far I'll get. If this'll work, then I'll have all the latest compiled packages based on GCC 4.0 etc that will enable native cutting edge compilation...

Let's see...
*



OOO I like this! Ill try do it in pdaxrom!
Thnx

http://trac.cross-lfs.org/roadmap
ShiroiKuma
QUOTE(DaemonsGR @ May 13 2006, 02:31 PM)
OOO I like this! Ill try do it in pdaxrom!
Thnx
http://trac.cross-lfs.org/roadmap
*

Good, we can split our efforts, I was gonna do it in pdaXrom too. So I'll focus on OZ.

So far I've compiled binutils no prob, now GCC 4.1.0 has been going for a couple of hours, no prob...

Will see how it goes.

Let me know, how you go along in pdaXrom.
koen
QUOTE(ShiroiKuma @ May 13 2006, 01:47 PM)
QUOTE(DaemonsGR @ May 13 2006, 02:31 PM)
OOO I like this! Ill try do it in pdaxrom!
Thnx
http://trac.cross-lfs.org/roadmap
*

Good, we can split our efforts, I was gonna do it in pdaXrom too. So I'll focus on OZ.

So far I've compiled binutils no prob, now GCC 4.1.0 has been going for a couple of hours, no prob...

Will see how it goes.

Let me know, how you go along in pdaXrom.
*



Why not use OE for that? I've been building images in OE with glibc 2.4, gcc 4.1.0 and the latest binutils for some time now...
It seems to me that doing the same by hand on a zaurus is a gigantic waste of time.
ShiroiKuma
QUOTE(koen @ May 13 2006, 03:02 PM)
Why not use OE for that? I've been building images in OE with glibc 2.4, gcc 4.1.0 and the latest binutils for some time now...
It seems to me that doing the same by hand on a zaurus is a gigantic waste of time.
*

You're probably. Maybe I oughta give it a try. It's just that I've never done any cross-compiling, so really have no clue how to set everything up, and the Intro on the OZ wiki didn't really enlighten me. So I'm afraid I'm gonna install it and get stuck somehow since I really haven't found a simple how-to...

Do you know of any such how-to? I mean, I've no clue what is BitBake, how it relates to OE etc.

Could you explain?
koen
QUOTE(ShiroiKuma @ May 13 2006, 02:32 PM)
QUOTE(koen @ May 13 2006, 03:02 PM)
Why not use OE for that? I've been building images in OE with glibc 2.4, gcc 4.1.0 and the latest binutils for some time now...
It seems to me that doing the same by hand on a zaurus is a gigantic waste of time.
*

You're probably. Maybe I oughta give it a try. It's just that I've never done any cross-compiling, so really have no clue how to set everything up, and the Intro on the OZ wiki didn't really enlighten me. So I'm afraid I'm gonna install it and get stuck somehow since I really haven't found a simple how-to...

Do you know of any such how-to? I mean, I've no clue what is BitBake, how it relates to OE etc.

Could you explain?
*



There are 2 step by step guides:

* the official OE one: http://oe.handhelds.org/cgi-bin/moin.cgi/GettingStarted
* the ångström one: http://www.angstrom-distribution.org/node/7

Those should give you enough info on how to setup OE.
lardman
QUOTE
It's just that I've never done any cross-compiling, so really have no clue how to set everything up


I second what Koen says.

You don't need to know anything about cross compiling when you use OE, it will build pretty much everything you need (including the cross toolchain and binutils.)


Si
ShiroiKuma
QUOTE(lardman @ May 13 2006, 04:36 PM)
I second what Koen says.

You don't need to know anything about cross compiling when you use OE, it will build pretty much everything you need (including the cross toolchain and binutils.)
*

OK, I'll look into it tonight, and I'll try... smile.gif
ShiroiKuma
QUOTE(koen @ May 13 2006, 03:39 PM)
* the official OE one: http://oe.handhelds.org/cgi-bin/moin.cgi/GettingStarted
* the ångström one: http://www.angstrom-distribution.org/node/7

Those should give you enough info on how to setup OE.
*

I think I need a little help, I got to the Create local configuration part where it says to make sure to have a cross-compiler installed for Zaurus before compilation. Yet the linked page only gives info on how to setup the cross-compiler for 2.4 kernel Zs. No info on how to do this for 2.6 kernel.

How do I go about this?
lardman
Hmm, ignore that bit, I've changed it now.

It should have read "If you want to compile a Zaurus 2.4.x kernel, then you need the old GCC 2.95.3 toolchain installed." Now I don't remember what machine you have, but as long as it's not a 5500/5000D, you can ignore this bit and continue.


Si
ShiroiKuma
QUOTE(lardman @ May 17 2006, 09:55 AM)
It should have read "If you want to compile a Zaurus 2.4.x kernel, then you need the old GCC 2.95.3 toolchain installed." Now I don't remember what machine you have, but as long as it's not a 5500/5000D, you can ignore this bit and continue.
*

OK, I'm ready then. But what now? Do I understand it correctly that I can only compile a package for which the recipe has been entered in the onlne directory?

How can I see which packages are available?

If I wanna compile something else for which I have the sourcecode how do I do it? Or should I just compile it on the Z?
lardman
QUOTE
Do I understand it correctly that I can only compile a package for which the recipe has been entered in the onlne directory?


Yes (but it's not really online, all of the meta data are downloaded onto your build machine, and then you update these data against the central repository.)

QUOTE
How can I see which packages are available?


Look in the org.openembedded.*/packages/* directories at the names of the .bb files.

QUOTE
If I wanna compile something else for which I have the sourcecode how do I do it? Or should I just compile it on the Z?


You can:

* Create a .bb (recipe) for the program and have bitbake build it automatically.
* Use the toolchain built by OE/bitbake, but don't use bitbake itself for your program.
* Install the OZ native toolchain on your Zaurus and build there.
* Use a stand-alone OZ cross-toolchain (though I can only find a link for the GPE version atm and it's basically just a packaged up version of the toolchain built by bitbake/OE anyway.)


Si
ShiroiKuma
QUOTE(lardman @ May 17 2006, 12:35 PM)
Look in the org.openembedded.*/packages/* directories at the names of the .bb files.
*

OK smile.gif
CODE
debian:/home/cvs/oe/build# bitbake php
NOTE: Psyco JIT Compiler (http://psyco.sf.net) not available. Install it to increase performance.
NOTE: Using cache in '/home/cvs/oe/build/tmp/cache'
ERROR: no files to build.
NOTE: Parsing finished. 0 cached, 0 parsed, 0 skipped, 0 masked.
ERROR: Nothing provides dependency php
debian:/home/cvs/oe/build#
???
ShiroiKuma
OK, seems what the Getting Started page doesn't mention is you should set the BBFILES variable:
CODE
export BBFILES=/path_to_org.openembedded.dev/packages/*/*.bb
So I did that and it ran, but at the end:
CODE
# bitbake php
...
...
...
NOTE: Parsing finished. 0 cached, 3242 parsed, 130 skipped, 0 masked.
NOTE: build 200605171430: started

OE Build Configuration:
BB_VERSION      = "1.4.3"
OE_REVISION     = "ba16b6be903db78f8236334b0c2e2ece4be9d708"
TARGET_ARCH    = "INVALID"
TARGET_OS        = "INVALID"
MACHINE            = ""
DISTRO              = ""
DISTRO_VERSION = ""
TARGET_FPU       = ""

ERROR: The following variable(s) were not set: TARGET_ARCH, TARGET_OS
Please set them directly, or choose a MACHINE or DISTRO that sets them.
#
How should I set them and to what?

Running a 3200, OZ GPE 3.4.5.1-rc2

I didn't see anything about this in the Getting Started page... sad.gif
ShiroiKuma
Trying further:
CODE
debian:/home/cvs/oe/build# bitbake -b /home/cvs/oe/org.openembedded.dev/packages/php/php_5.0.5.bb
NOTE: package php-5.0.5: started
NOTE: package php-5.0.5-r0: task do_fetch: started
NOTE: package php-5.0.5-r0: task do_fetch: completed
NOTE: package php-5.0.5-r0: task do_patch: started
NOTE: Applying patch 'autotools.patch'
ERROR: function do_patchcmd failed
ERROR: see log in /home/cvs/oe/build/tmp/work/php-5.0.5-r0/temp/log.do_patchcmd.6949
NOTE: Task failed: /home/cvs/oe/build/tmp/work/php-5.0.5-r0/temp/log.do_patchcmd.6949
NOTE: package php-5.0.5-r0: task do_patch: failed
ERROR: TaskFailed event exception, aborting
NOTE: package php-5.0.5: failed
ERROR: Build of 'php' failed
Build statistics:
 Attempted builds: 1
 Failed builds: 1
debian:/home/cvs/oe/build#
Can you advise me what to do?
koen
Try watching http://handhelds.org/~zecke/org.openembedded.htm
ShiroiKuma
QUOTE(koen @ May 17 2006, 10:37 PM)

OK, this explains a lot.

For the 3200 what should I put in as the device c3xx0, or c3x00, or something else?
koen
QUOTE(ShiroiKuma @ May 17 2006, 09:51 PM)
QUOTE(koen @ May 17 2006, 10:37 PM)

OK, this explains a lot.

For the 3200 what should I put in as the device c3xx0, or c3x00, or something else?
*



you can see the list of machines in org.openembedded.dev/conf/machine/ , but 'spitz' would be the one you want
ShiroiKuma
I've made progress, but still get stuck:
CODE
debian:/home/cvs/oe/build# bitbake php
NOTE: Psyco JIT Compiler (http://psyco.sf.net) not available. Install it to increase performance.
NOTE: Using cache in '/home/cvs/oe/build/tmp/cache'
NOTE: Parsing finished. 3246 cached, 0 parsed, 135 skipped, 0 masked.
NOTE: package quilt-native-0.42: started
NOTE: package quilt-native-0.42-r0: task do_fetch: started
NOTE: fetch http://download.savannah.gnu.org/releases/quilt/quilt-0.42.tar.gz
--12:48:27--  http://download.savannah.gnu.org/releases/quilt/quilt-0.42.tar.gz
          => `/home/cvs/oe/build/tmp/downloads/quilt-0.42.tar.gz'
Resolving download.savannah.gnu.org... 199.232.41.75
Connecting to download.savannah.gnu.org|199.232.41.75|:80... connected.
HTTP request sent, awaiting response... 206 Partial Content
Length: 355,294 (347K), 307,510 (300K) remaining [application/x-tar]

100%[++++================================>] 355,294       14.27K/s    ETA 00:00

12:49:01 (9.76 KB/s) - `/home/cvs/oe/build/tmp/downloads/quilt-0.42.tar.gz' saved [355294/355294]

NOTE: package quilt-native-0.42-r0: task do_fetch: completed
NOTE: package quilt-native-0.42-r0: task do_unpack: started
NOTE: Unpacking /home/cvs/oe/build/tmp/downloads/quilt-0.42.tar.gz to /home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/
NOTE: package quilt-native-0.42-r0: task do_unpack: completed
NOTE: package quilt-native-0.42-r0: task do_patch: started
NOTE: Applying patch 'install.patch'
NOTE: Applying patch 'nostrip.patch'
NOTE: package quilt-native-0.42-r0: task do_patch: completed
NOTE: package quilt-native-0.42-r0: task do_configure: started
NOTE: package quilt-native-0.42-r0: task do_configure: completed
NOTE: package quilt-native-0.42-r0: task do_compile: started
ERROR: function do_compile failed
ERROR: log data follows (/home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/temp/log.do_compile.6929)
| NOTE: make
| bin/quilt.in -> bin/quilt
| bin/guards.in -> bin/guards
| quilt/add.in -> quilt/add
| quilt/annotate.in -> quilt/annotate
| quilt/applied.in -> quilt/applied
| quilt/delete.in -> quilt/delete
| quilt/diff.in -> quilt/diff
| quilt/edit.in -> quilt/edit
| quilt/files.in -> quilt/files
| quilt/fold.in -> quilt/fold
| quilt/fork.in -> quilt/fork
| quilt/graph.in -> quilt/graph
| quilt/grep.in -> quilt/grep
| quilt/header.in -> quilt/header
| quilt/import.in -> quilt/import
| quilt/mail.in -> quilt/mail
| quilt/new.in -> quilt/new
| quilt/next.in -> quilt/next
| quilt/patches.in -> quilt/patches
| quilt/pop.in -> quilt/pop
| quilt/previous.in -> quilt/previous
| quilt/push.in -> quilt/push
| quilt/refresh.in -> quilt/refresh
| quilt/remove.in -> quilt/remove
| quilt/rename.in -> quilt/rename
| quilt/series.in -> quilt/series
| quilt/setup.in -> quilt/setup
| quilt/snapshot.in -> quilt/snapshot
| quilt/top.in -> quilt/top
| quilt/unapplied.in -> quilt/unapplied
| quilt/upgrade.in -> quilt/upgrade
| scripts/patchfns.in -> scripts/patchfns
| scripts/parse-patch.in -> scripts/parse-patch
| scripts/inspect.in -> scripts/inspect
| scripts/dependency-graph.in -> scripts/dependency-graph
| scripts/edmail.in -> scripts/edmail
| scripts/remove-trailing-ws.in -> scripts/remove-trailing-ws
| ccache gcc -I/home/cvs/oe/build/tmp/staging/i686-linux/include -O2 -Wall -I/home/cvs/oe/build/tmp/staging/i686-linux/include -L/home/cvs/oe/build/tmp/staging/i686-linux/lib -Wl,-rpath-link,/home/cvs/oe/build/tmp/staging/i686-linux/lib -Wl,-rpath,/home/cvs/oe/build/tmp/staging/i686-linux/lib -Wl,-O1 i686 lib/backup-files.c   -o lib/backup-files
| gcc: i686: No such file or directory
| make: *** [lib/backup-files] Error 1
| FATAL: oe_runmake failed
NOTE: Task failed: /home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/temp/log.do_compile.6929
NOTE: package quilt-native-0.42-r0: task do_compile: failed
ERROR: TaskFailed event exception, aborting
NOTE: package quilt-native-0.42: failed
ERROR: Build of php failed
debian:/home/cvs/oe/build#

My conf/local.conf file
CODE
debian:/home/cvs/oe/build# cat conf/local.conf
DL_DIR="/home/cvs/oe"
BBFILES="/home/cvs/oe/org.openembedded.dev/packages/*/*.bb"

TARGET_OS="linux"
TARGET_ARCH="arm"
TARGET_FPU="soft"

MACHINE="spitz"
DISTRO="openzaurus-3.5.4.1"

IMAGE_FSTYPES="jffs2 tar"
BBINCLUDELOGS="yes"

PREFERRED_PROVIDERS="virtual/qte:qte virtual/libqpe:libqpe-opie"
PREFERRED_PROVIDERS += " virtual/libsdl:libsdl-qpe "debian:/home/cvs/oe/build#

What is the i686 thing? Did I forget to set something?
lardman
You have a floating 'i686' in your gcc command:

CODE
-Wl,-O1 i686 lib/backup-files.c


That shouldn't be there. I'm not sure how it's got there either (my output is identical bar that extra word.) Might be worth checking the .run file in tmp/work/i686-linux/quilt-native/temp/ to see if it's been included in an env var for some reason.


Si
lardman
Can you post an URL to /home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/temp/log.do_compile.6929 ?

Or come on #oe or #openzaurus and pastebin (oe.pastebin.com iirc) the contents of the file so we can take a look-see.


Si
Mickeyl
(obligatory pointer to a workaround, because I don't like quilt...):

echo "INHERIT += 'patcher'" >> conf/local.conf

then rebuild and never pull your hairs because of quilt...
ShiroiKuma
QUOTE(lardman @ May 18 2006, 12:28 PM)
You have a floating 'i686' in your gcc command:

CODE
-Wl,-O1 i686 lib/backup-files.c


That shouldn't be there. I'm not sure how it's got there either (my output is identical bar that extra word.) Might be worth checking the .run file in tmp/work/i686-linux/quilt-native/temp/ to see if it's been included in an env var for some reason.
*

There is no tmp/work/i686-linux dir, but in tmp/work/quilt-native-0.42-r0/temp/run.do_compile.6929, I have:
CODE
#!/bin/sh -e
export CPPFLAGS="-I/home/cvs/oe/build/tmp/staging/i686-linux/include"

export sharedstatedir="/home/cvs/oe/build/tmp/staging/com"

export localstatedir="/home/cvs/oe/build/tmp/staging/var"

export palmqtdir="/opt/QtPalmtop"

export CPP="gcc -E"

export MANIFEST="/home/cvs/oe/org.openembedded.dev/packages/quilt/files/./manifest"

export mandir="/home/cvs/oe/build/tmp/staging/i686-linux/share/man"

export exec_prefix="/home/cvs/oe/build/tmp/staging/i686-linux"

export OPIEDIR="/home/cvs/oe/build/tmp/staging/i686-linux"

export STRIP="strip"

export BUILD_CC="ccache gcc"

export BUILD_LDFLAGS="-L/home/cvs/oe/build/tmp/staging/i686-linux/lib -Wl,-rpath-link,/home/cvs/oe/build/tmp/staging/i686-linux/lib -Wl,-rpath,/home/cvs/oe/build/tmp/staging/i686-linux/lib -Wl,-O1"

export TARGET_ARCH="i686"

export CONFIG_SITE="/home/cvs/oe/org.openembedded.dev/site/i686-linux"

export base_sbindir="/home/cvs/oe/build/tmp/staging/i686-linux/bin"

export CXX="ccache g++"

export prefix="/home/cvs/oe/build/tmp/staging"

export BUILD_CFLAGS="-I/home/cvs/oe/build/tmp/staging/i686-linux/include -O2"

export TARGET_CXXFLAGS="-I/home/cvs/oe/build/tmp/staging/i686-linux/include -fexpensive-optimizations -fomit-frame-pointer -frename-registers -O2 -fpermissive"

export BUILD_LD="ld"

export DL_DIR="/home/cvs/oe/build/tmp/downloads"

export BUILD_RANLIB="ranlib"

export STAGING_IDLDIR="/home/cvs/oe/build/tmp/staging/i686-linux/share/idl"

export CCLD="ccache gcc"

export QMAKE_MKSPEC_PATH="/home/cvs/oe/build/tmp/staging/i686-linux/share/qmake"

export LD="ld"

export BUILD_CXXFLAGS="-I/home/cvs/oe/build/tmp/staging/i686-linux/include -O2 -fpermissive"

export PKG_CONFIG_PATH="/home/cvs/oe/build/tmp/staging/i686-linux/share/pkgconfig"

export oldincludedir="/home/cvs/oe/build/tmp/staging/i686-linux/include"

export sysconfdir="/home/cvs/oe/build/tmp/staging/etc"

export TARGET_LDFLAGS="-L/home/cvs/oe/build/tmp/staging/i686-linux/lib -Wl,-rpath-link,/home/cvs/oe/build/tmp/staging/i686-linux/lib -Wl,-O1"

export base_libdir="/home/cvs/oe/build/tmp/staging/i686-linux/lib"

export docdir="/home/cvs/oe/build/tmp/staging/i686-linux/share/doc"

export PATCH_GET="0"

export QPEDIR="/home/cvs/oe/build/tmp/staging/i686-linux"

export CXXFLAGS="-I/home/cvs/oe/build/tmp/staging/i686-linux/include -O2"

export palmtopdir="/opt/QtPalmtop"

export QTDIR="/home/cvs/oe/build/tmp/staging/i686-linux/qt2"

export PKG_CONFIG_DISABLE_UNINSTALLED="yes"

export infodir="/home/cvs/oe/build/tmp/staging/i686-linux/share/info"

export BUILD_CCLD="gcc"

export libdir="/home/cvs/oe/build/tmp/staging/i686-linux/lib"

export datadir="/home/cvs/oe/build/tmp/staging/i686-linux/share"

export base_prefix="/home/cvs/oe/build/tmp/staging/i686-linux"

export CC="ccache gcc"

export BBPATH="/home/cvs/oe/org.openembedded.dev/packages/quilt:/home/cvs/oe/org.openembedded.dev/packages/quilt:/home/cvs/oe:/home/cvs/oe/org.openembedded.dev"

export F77="ccache g77"

export TARGET_OS="linux"

export IMAGE_FSTYPES="jffs2 tar.gz"

export RANLIB="ranlib"

export BUILD_STRIP="strip"

export MAKE="make"

export BUILD_CXX="ccache g++"

export servicedir="/home/cvs/oe/build/tmp/staging/srv"

export STAGING_SIPDIR="/home/cvs/oe/build/tmp/staging/i686-linux/share/sip"

export TARGET_CFLAGS="-I/home/cvs/oe/build/tmp/staging/i686-linux/include -fexpensive-optimizations -fomit-frame-pointer -frename-registers -O2"

export base_bindir="/home/cvs/oe/build/tmp/staging/i686-linux/bin"

export LDFLAGS="-L/home/cvs/oe/build/tmp/staging/i686-linux/lib -Wl,-rpath-link,/home/cvs/oe/build/tmp/staging/i686-linux/lib -Wl,-rpath,/home/cvs/oe/build/tmp/staging/i686-linux/lib -Wl,-O1"

export BUILD_CPP="cpp"

export BUILD_F77="ccache g77"

export bindir="/home/cvs/oe/build/tmp/staging/i686-linux/bin"

export BBFILES="/home/cvs/oe/org.openembedded.dev/packages/*/*.bb"

export PATH="/home/cvs/oe/build/tmp/staging/i686-linux/bin/i686-linux:/home/cvs/oe/build/tmp/staging/i686-linux/bin:/home/cvs/oe/build/tmp/cross/bin:/home/cvs/oe/bitbake/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11"

export AS="as"

export AR="ar"

export libexecdir="/home/cvs/oe/build/tmp/staging/i686-linux/libexec"

export BUILD_CPPFLAGS="-I/home/cvs/oe/build/tmp/staging/i686-linux/include"

export includedir="/home/cvs/oe/build/tmp/staging/i686-linux/include"

export sbindir="/home/cvs/oe/build/tmp/staging/i686-linux/bin"

export BUILD_AR="ar"

export CFLAGS="-I/home/cvs/oe/build/tmp/staging/i686-linux/include -O2"

export TARGET_CPPFLAGS="-I/home/cvs/oe/build/tmp/staging/i686-linux/include"

base_do_package() {
    :

}

oewarn() {
    echo "WARNING:" "$*"

}

oe_soinstall() {
    # Purpose: Install shared library file and
    #          create the necessary links
    # Example:
    #
    # oe_
    #
    #oenote installing shared library $1 to $2
    #
    libname=`basename $1`
    install -m 755 $1 $2/$libname
    sonamelink=`readelf -d $1 |grep 'Library soname:' |sed -e 's/.*\[\(.*\)\].*/\1/'`
    solink=`echo $libname | sed -e 's/\.so\..*/.so/'`
    ln -sf $libname $2/$sonamelink
    ln -sf $libname $2/$solink

}

autotools_do_install() {
    oe_runmake 'DESTDIR=/home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/image' install

}

oe_machinstall() {
    # Purpose: Install machine dependent files, if available
    #          If not available, check if there is a default
    #          If no default, just touch the destination
    # Example:
    #                $1  $2   $3         $4
    # oe_machinstall -m 0644 fstab /home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/image/etc/fstab
    #
    # TODO: Check argument number?
    #
    filename=`basename $3`
    dirname=`dirname $3`

    for o in `echo task_do_compile:local:spitz:openzaurus-3.5.4.1:linux:i686:build-linux | tr ':' ' '`; do
 if [ -e $dirname/$o/$filename ]; then
     oenote $dirname/$o/$filename present, installing to $4
     install $1 $2 $dirname/$o/$filename $4
     return
 fi
    done
#    oenote overrides specific file NOT present, trying default=$3...
    if [ -e $3 ]; then
 oenote $3 present, installing to $4
 install $1 $2 $3 $4
    else
 oenote $3 NOT present, touching empty $4
 touch $4
    fi

}

die() {
    oefatal "$*"

}

autotools_stage_all() {
    if [ "${INHIBIT_AUTO_STAGE}" = "1" ]
    then
 return
    fi
    rm -rf /home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/temp-staging
    mkdir -p /home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/temp-staging
    oe_runmake DESTDIR="/home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/temp-staging" install
    if [ -d /home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/temp-staging//home/cvs/oe/build/tmp/staging/i686-linux/include ]; then
 cp -fpPR /home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/temp-staging//home/cvs/oe/build/tmp/staging/i686-linux/include/* /home/cvs/oe/build/tmp/staging/i686-linux/include
    fi
    if [ -d /home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/temp-staging//home/cvs/oe/build/tmp/staging/i686-linux/lib ]
    then
 for i in /home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/temp-staging//home/cvs/oe/build/tmp/staging/i686-linux/lib/*.la
 do
     if [ ! -f "$i" ]; then
   cp -fpPR /home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/temp-staging//home/cvs/oe/build/tmp/staging/i686-linux/lib/* /home/cvs/oe/build/tmp/staging/i686-linux/lib
   break
     fi
     oe_libinstall -so $(basename $i .la) /home/cvs/oe/build/tmp/staging/i686-linux/lib
 done
    fi
    if [ -d /home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/temp-staging//home/cvs/oe/build/tmp/staging/i686-linux/share/aclocal ]; then
 install -d /home/cvs/oe/build/tmp/staging/i686-linux/share/aclocal
 cp -fpPR /home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/temp-staging//home/cvs/oe/build/tmp/staging/i686-linux/share/aclocal/* /home/cvs/oe/build/tmp/staging/i686-linux/share/aclocal
    fi
    rm -rf /home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/temp-staging

}

oefatal() {
    echo "FATAL:" "$*"
    exit 1

}

base_do_install() {
    :

}

base_do_compile() {
    if [ -e Makefile -o -e makefile ]; then
 oe_runmake || die "make failed"
    else
 oenote "nothing to compile"
    fi

}

do_package() {
    base_do_package

}

do_stage() {
    if [ "${INHIBIT_NATIVE_STAGE_INSTALL}" != "1" ]
    then
 oe_runmake install
    fi

}

autotools_do_configure() {
    case quilt-native in
    autoconf*)
;;
    automake*)
;;
    *)
 # WARNING: gross hack follows:
 # An autotools built package generally needs these scripts, however only
 # automake or libtoolize actually install the current versions of them.
 # This is a problem in builds that do not use libtool or automake, in the case
 # where we -need- the latest version of these scripts.  e.g. running a build
 # for a package whose autotools are old, on an x86_64 machine, which the old
 # config.sub does not support.  Work around this by installing them manually
 # regardless.
 ( for ac in `find /home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/quilt-0.42 -name configure.in -o -name configure.ac`; do
     rm -f `dirname $ac`/configure
     done )
 if [ -e /home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/quilt-0.42/configure.in -o -e /home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/quilt-0.42/configure.ac ]; then
     olddir=`pwd`
     cd /home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/quilt-0.42
     if [ x"default" = xdefault ]; then
   acpaths=
   for i in `find /home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/quilt-0.42 -maxdepth 2 -name \*.m4|grep -v 'aclocal.m4'| \
       grep -v 'acinclude.m4' | sed -e 's,\(.*/\).*$,\1,'|sort -u`; do
       acpaths="$acpaths -I $i"
   done
     else
   acpaths="default"
     fi
     AUTOV=`automake --version |head -n 1 |sed "s/.* //;s/\.[0-9]\+$//"`
     automake --version
     echo "AUTOV is $AUTOV"
     install -d /home/cvs/oe/build/tmp/staging/i686-linux/share/aclocal
     install -d /home/cvs/oe/build/tmp/staging/i686-linux/share/aclocal-$AUTOV
     acpaths="$acpaths -I /home/cvs/oe/build/tmp/staging/i686-linux/share/aclocal-$AUTOV -I /home/cvs/oe/build/tmp/staging/i686-linux/share/aclocal"
     # autoreconf is too shy to overwrite aclocal.m4 if it doesn't look
     # like it was auto-generated.  Work around this by blowing it away
     # by hand, unless the package specifically asked not to run aclocal.
     if ! echo --exclude=autopoint | grep -q "aclocal"; then
   rm -f aclocal.m4
     fi
     if [ -e configure.in ]; then
    CONFIGURE_AC=configure.in
     else
    CONFIGURE_AC=configure.ac
     fi
     if grep "^AM_GLIB_GNU_GETTEXT" $CONFIGURE_AC >/dev/null; then
    if grep "sed.*POTFILES" $CONFIGURE_AC >/dev/null; then
      : do nothing -- we still have an old unmodified configure.ac
    else
      oenote Executing glib-gettextize --force --copy
      echo "no" | glib-gettextize --force --copy
    fi
     fi
     if grep "^AC_PROG_INTLTOOL" $CONFIGURE_AC >/dev/null; then
    oenote Executing intltoolize --copy --force --automake
    intltoolize --copy --force --automake
     fi
     oenote Executing autoreconf --verbose --install --force --exclude=autopoint $acpaths
     mkdir -p m4
     autoreconf -Wcross --verbose --install --force --exclude=autopoint $acpaths || oefatal "autoreconf execution failed."
     cd $olddir
 fi
;;
    esac
    if [ -e /home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/quilt-0.42/configure ]; then
 oe_runconf
    else
 oenote "nothing to configure"
    fi

}

oedebug() {
    test $# -ge 2 || {
 echo "Usage: oedebug level \"message\""
 exit 1
    }

    test ${OEDEBUG:-0} -ge $1 && {
 shift
 echo "DEBUG:" $*
    }

}

base_do_stage() {
    :

}

do_compile() {
    base_do_compile

}

oe_libinstall() {
    # Purpose: Install a library, in all its forms
    # Example
    #
    # oe_libinstall libltdl /home/cvs/oe/build/tmp/staging/i686-linux/lib/
    # oe_libinstall -C src/libblah libblah /home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/image//home/cvs/oe/build/tmp/staging/i686-linux/lib/
    dir=""
    libtool=""
    silent=""
    require_static=""
    require_shared=""
    staging_install=""
    while [ "$#" -gt 0 ]; do
 case "$1" in
 -C)
     shift
     dir="$1"
 ;;
 -s)
     silent=1
 ;;
 -a)
     require_static=1
 ;;
 -so)
     require_shared=1
 ;;
 -*)
     oefatal "oe_libinstall: unknown option: $1"
 ;;
 *)
     break;
 ;;
 esac
 shift
    done

    libname="$1"
    shift
    destpath="$1"
    if [ -z "$destpath" ]; then
 oefatal "oe_libinstall: no destination path specified"
    fi
    if echo "$destpath/" | egrep '^/home/cvs/oe/build/tmp/staging/i686-linux/lib/' >/dev/null
    then
 staging_install=1
    fi

    __runcmd () {
 if [ -z "$silent" ]; then
     echo >&2 "oe_libinstall: $*"
 fi
 $*
    }

    if [ -z "$dir" ]; then
 dir=`pwd`
    fi
    dotlai=$libname.lai
    dir=$dir`(cd $dir; find -name "$dotlai") | sed "s/^\.//;s/\/$dotlai\$//;q"`
    olddir=`pwd`
    __runcmd cd $dir

    lafile=$libname.la
    if [ -f "$lafile" ]; then
 # libtool archive
 eval `cat $lafile|grep "^library_names="`
 libtool=1
    else
 library_names="$libname.so* $libname.dll.a"
    fi

    __runcmd install -d $destpath/
    dota=$libname.a
    if [ -f "$dota" -o -n "$require_static" ]; then
 __runcmd install -m 0644 $dota $destpath/
    fi
    if [ -f "$dotlai" -a -n "$libtool" ]; then
 if test -n "$staging_install"
 then
     # stop libtool using the final directory name for libraries
     # in staging:
     __runcmd rm -f $destpath/$libname.la
     __runcmd sed -e 's/^installed=yes$/installed=no/' -e '/^dependency_libs=/s,/home/cvs/oe/build/tmp/work/quilt-native-0.42-r0[[:alnum:]/\._+-]*/\([[:alnum:]\._+-]*\),/home/cvs/oe/build/tmp/staging/i686-linux/lib/\1,g' $dotlai >$destpath/$libname.la
 else
     __runcmd install -m 0644 $dotlai $destpath/$libname.la
 fi
    fi

    for name in $library_names; do
 files=`eval echo $name`
 for f in $files; do
     if [ ! -e "$f" ]; then
   if [ -n "$libtool" ]; then
       oefatal "oe_libinstall: $dir/$f not found."
   fi
     elif [ -L "$f" ]; then
   __runcmd cp -P "$f" $destpath/
     elif [ ! -L "$f" ]; then
   libfile="$f"
   __runcmd install -m 0755 $libfile $destpath/
     fi
 done
    done

    if [ -z "$libfile" ]; then
 if  [ -n "$require_shared" ]; then
     oefatal "oe_libinstall: unable to locate shared library"
 fi
    elif [ -z "$libtool" ]; then
 # special case hack for non-libtool .so.#.#.# links
 baselibfile=`basename "$libfile"`
 if (echo $baselibfile | grep -qE '^lib.*\.so\.[0-9.]*$'); then
     sonamelink=`readelf -d $libfile |grep 'Library soname:' |sed -e 's/.*\[\(.*\)\].*/\1/'`
     solink=`echo $baselibfile | sed -e 's/\.so\..*/.so/'`
     if [ -n "$sonamelink" -a x"$baselibfile" != x"$sonamelink" ]; then
   __runcmd ln -sf $baselibfile $destpath/$sonamelink
     fi
     __runcmd ln -sf $baselibfile $destpath/$solink
 fi
    fi

    __runcmd cd "$olddir"

}

oe_runmake() {
    if [ x"$MAKE" = x ]; then MAKE=make; fi
    oenote make ${PARALLEL_MAKE}  "$@"
    make ${PARALLEL_MAKE}  "$@" || die "oe_runmake failed"

}

do_install() {
    true

}

autotools_stage_includes() {
    if [ "${INHIBIT_AUTO_STAGE_INCLUDES}" != "1" ]
    then
 rm -rf /home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/temp-staging
 mkdir -p /home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/temp-staging
 make DESTDIR="/home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/temp-staging" install
 cp -pPR /home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/temp-staging//home/cvs/oe/build/tmp/staging/i686-linux/include/* /home/cvs/oe/build/tmp/staging/i686-linux/include
 rm -rf /home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/temp-staging
    fi

}

oe_runconf() {
    if [ -x /home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/quilt-0.42/configure ]; then
 cfgcmd="/home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/quilt-0.42/configure \
     --build=i686-linux \
     --host=i686-linux \
     --target=i686-linux \
     --prefix=/home/cvs/oe/build/tmp/staging \
     --exec_prefix=/home/cvs/oe/build/tmp/staging/i686-linux \
     --bindir=/home/cvs/oe/build/tmp/staging/i686-linux/bin \
     --sbindir=/home/cvs/oe/build/tmp/staging/i686-linux/bin \
     --libexecdir=/home/cvs/oe/build/tmp/staging/i686-linux/libexec \
     --datadir=/home/cvs/oe/build/tmp/staging/i686-linux/share \
     --sysconfdir=/home/cvs/oe/build/tmp/staging/etc \
     --sharedstatedir=/home/cvs/oe/build/tmp/staging/com \
     --localstatedir=/home/cvs/oe/build/tmp/staging/var \
     --libdir=/home/cvs/oe/build/tmp/staging/i686-linux/lib \
     --includedir=/home/cvs/oe/build/tmp/staging/i686-linux/include \
     --oldincludedir=/home/cvs/oe/build/tmp/staging/i686-linux/include \
     --infodir=/home/cvs/oe/build/tmp/staging/i686-linux/share/info \
     --mandir=/home/cvs/oe/build/tmp/staging/i686-linux/share/man \
     --disable-nls \
     $@"
 oenote "Running $cfgcmd..."
 $cfgcmd || oefatal "oe_runconf failed"
    else
 oefatal "no configure script found"
    fi

}

do_configure() {
    oe_runconf

}

oenote() {
    echo "NOTE:" "$*"

}

MIRRORS() {
ftp://ftp.debian.org/debian/pool/main    http://snapshot.debian.net/archive/pool
ftp://ftp.debian.org/debian/pool    ftp://ftp.de.debian.org/debian/pool
ftp://ftp.debian.org/debian/pool    ftp://ftp.au.debian.org/debian/pool
ftp://ftp.debian.org/debian/pool    ftp://ftp.cl.debian.org/debian/pool
ftp://ftp.debian.org/debian/pool    ftp://ftp.hr.debian.org/debian/pool
ftp://ftp.debian.org/debian/pool    ftp://ftp.fi.debian.org/debian/pool
ftp://ftp.debian.org/debian/pool    ftp://ftp.hk.debian.org/debian/pool
ftp://ftp.debian.org/debian/pool    ftp://ftp.hu.debian.org/debian/pool
ftp://ftp.debian.org/debian/pool    ftp://ftp.ie.debian.org/debian/pool
ftp://ftp.debian.org/debian/pool    ftp://ftp.it.debian.org/debian/pool
ftp://ftp.debian.org/debian/pool    ftp://ftp.jp.debian.org/debian/pool
ftp://ftp.debian.org/debian/pool    ftp://ftp.no.debian.org/debian/pool
ftp://ftp.debian.org/debian/pool    ftp://ftp.pl.debian.org/debian/pool
ftp://ftp.debian.org/debian/pool    ftp://ftp.ro.debian.org/debian/pool
ftp://ftp.debian.org/debian/pool    ftp://ftp.si.debian.org/debian/pool
ftp://ftp.debian.org/debian/pool    ftp://ftp.es.debian.org/debian/pool
ftp://ftp.debian.org/debian/pool    ftp://ftp.se.debian.org/debian/pool
ftp://ftp.debian.org/debian/pool    ftp://ftp.tr.debian.org/debian/pool
ftp://ftp.gnu.org/gnu    ftp://mirrors.kernel.org/gnu
ftp://ftp.gnu.org/gnu    ftp://ftp.matrix.com.br/pub/gnu
ftp://ftp.gnu.org/gnu    ftp://ftp.cs.ubc.ca/mirror2/gnu
ftp://ftp.gnu.org/gnu    ftp://sunsite.ust.hk/pub/gnu
ftp://ftp.gnu.org/gnu    ftp://ftp.ayamura.org/pub/gnu
ftp://ftp.kernel.org/pub    http://www.kernel.org/pub
ftp://ftp.kernel.org/pub    ftp://ftp.us.kernel.org/pub
ftp://ftp.kernel.org/pub    ftp://ftp.uk.kernel.org/pub
ftp://ftp.kernel.org/pub    ftp://ftp.hk.kernel.org/pub
ftp://ftp.kernel.org/pub    ftp://ftp.au.kernel.org/pub
ftp://ftp.kernel.org/pub    ftp://ftp.jp.kernel.org/pub
ftp://.*/.*/    http://www.oesources.org/source/current/
http://.*/.*/    http://www.oesources.org/source/current/

}

base_do_configure() {
    :

}

cd /home/cvs/oe/build/tmp/work/quilt-native-0.42-r0/quilt-0.42
do_compile
...
i686 all over

and log.do_compile.6929:
CODE
NOTE: make
bin/quilt.in -> bin/quilt
bin/guards.in -> bin/guards
quilt/add.in -> quilt/add
quilt/annotate.in -> quilt/annotate
quilt/applied.in -> quilt/applied
quilt/delete.in -> quilt/delete
quilt/diff.in -> quilt/diff
quilt/edit.in -> quilt/edit
quilt/files.in -> quilt/files
quilt/fold.in -> quilt/fold
quilt/fork.in -> quilt/fork
quilt/graph.in -> quilt/graph
quilt/grep.in -> quilt/grep
quilt/header.in -> quilt/header
quilt/import.in -> quilt/import
quilt/mail.in -> quilt/mail
quilt/new.in -> quilt/new
quilt/next.in -> quilt/next
quilt/patches.in -> quilt/patches
quilt/pop.in -> quilt/pop
quilt/previous.in -> quilt/previous
quilt/push.in -> quilt/push
quilt/refresh.in -> quilt/refresh
quilt/remove.in -> quilt/remove
quilt/rename.in -> quilt/rename
quilt/series.in -> quilt/series
quilt/setup.in -> quilt/setup
quilt/snapshot.in -> quilt/snapshot
quilt/top.in -> quilt/top
quilt/unapplied.in -> quilt/unapplied
quilt/upgrade.in -> quilt/upgrade
scripts/patchfns.in -> scripts/patchfns
scripts/parse-patch.in -> scripts/parse-patch
scripts/inspect.in -> scripts/inspect
scripts/dependency-graph.in -> scripts/dependency-graph
scripts/edmail.in -> scripts/edmail
scripts/remove-trailing-ws.in -> scripts/remove-trailing-ws
ccache gcc -I/home/cvs/oe/build/tmp/staging/i686-linux/include -O2 -Wall -I/home/cvs/oe/build/tmp/staging/i686-linux/include -L/home/cvs/oe/build/tmp/staging/i686-linux/lib -Wl,-rpath-link,/home/cvs/oe/build/tmp/staging/i686-linux/lib -Wl,-rpath,/home/cvs/oe/build/tmp/staging/i686-linux/lib -Wl,-O1 i686 lib/backup-files.c   -o lib/backup-files
gcc: i686: No such file or directory
make: *** [lib/backup-files] Error 1
FATAL: oe_runmake failed

I've never used IRC, I'll gladly come online, if you tell me how, sorry sad.gif
ShiroiKuma
QUOTE(Mickeyl @ May 18 2006, 01:24 PM)
(obligatory pointer to a workaround, because I don't like quilt...):

echo "INHERIT += 'patcher'" >> conf/local.conf

Did this...
QUOTE
then rebuild and never pull your hairs because of quilt...
*

Same outcome, perhaps it's not rebuilding, but starting where it left off. How do you start from scratch?
ShiroiKuma
I've gotten further, I added the three following lines to conf/local.conf
CODE
PREFERRED_PROVIDERS += " virtual/arm-gcc-initial:gcc-cross-initial"
PREFERRED_PROVIDERS += " virtual/arm-gcc:gcc-cross"
PREFERRED_PROVIDERS += " virtual/arm-g++:gcc-cross"

It went through, no more of the previous complaints. Built autoconf-native and libtool-native, but now I get the following:
CODE
# bitbake php
NOTE: Using cache in '/home/cvs/oe/build/tmp/cache'
NOTE: Parsing finished. 3246 cached, 0 parsed, 135 skipped, 0 masked.
ERROR: Nothing provides dependency virtual/arm-linux-gcc
NOTE:
ERROR: dependency virtual/arm-linux-gcc (for php) not satisfied
NOTE: no buildable providers for php
NOTE:
#

I have no clue what to do now?

Can you please help me?
lardman
For irc, find yourself an irc client (I don't know what one would use under Linux, but under WinXP I'm using something called "Visual IRC")

Then connect to irc.freenode.net, and join the #oe channel (by issuing the command '/join #oe')

Otherwise you could try the oe mailing list: http://oe.handhelds.org/contact.php

Si

P.S.

QUOTE
CODE
PREFERRED_PROVIDERS += " virtual/arm-gcc-initial:gcc-cross-initial"
PREFERRED_PROVIDERS += " virtual/arm-gcc:gcc-cross"
PREFERRED_PROVIDERS += " virtual/arm-g++:gcc-cross"


should be

CODE
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc-initial:gcc-cross-initial"
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc:gcc-cross"
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}g++:gcc-cross"


arm is not the arch name of the toolchain.
ShiroiKuma
I still don't know what to do about the above error, but I tried just to compile php5 and get the familiar C compiler cannot create executables error. [CODE]debian:/home/cvs/oe/build# bitbake -b /home/cvs/oe/org.openembedded.dev/packages/php/php_5.0.5.bb
NOTE: package php-5.0.5: started
NOTE: package php-5.0.5-r0: task do_fetch: started
NOTE: package php-5.0.5-r0: task do_fetch: completed
NOTE: package php-5.0.5-r0: task do_configure: started
ERROR: function do_configure failed
ERROR: log data follows (/home/cvs/oe/build/tmp/work/php-5.0.5-r0/temp/log.do_configure.8268)
| automake (GNU automake) 1.9.3
| Written by Tom Tromey <tromey@redhat.com>.
|
| Copyright 2004 Free Software Foundation, Inc.
| This is free software; see the source for copying conditions. There is NO
| warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
| AUTOV is 1.9
| NOTE: Executing autoreconf --verbose --install --force --exclude=autopoint -I /home/cvs/oe/build/tmp/staging/arm-linux/share/aclocal-1.9 -I /home/cvs/oe/build/tmp/staging/arm-linux/share/aclocal
| autoreconf: Entering directory `.'
| autoreconf: configure.in: not using Gettext
| autoreconf: running: aclocal -I /home/cvs/oe/build/tmp/staging/arm-linux/share/aclocal-1.9 -I /home/cvs/oe/build/tmp/staging/arm-linux/share/aclocal --force
| configure.in:150: warning: AC_PROG_LEX invoked multiple times
| autoconf/programs.m4:438: AC_DECL_YYTEXT is expanded from...
| configure.in:150: the top level
| autoreconf: configure.in: tracing
| configure.in:150: warning: AC_PROG_LEX invoked multiple times
| autoconf/programs.m4:438: AC_DECL_YYTEXT is expanded from...
| configure.in:150: the top level
| configure.in:436: warning: AC_RUN_IFELSE called without default to allow cross compiling
| autoconf/general.m4:2282: AC_RUN_IFELSE is expanded from...
| autoconf/general.m4:2290: AC_TRY_RUN is expanded from...
| acinclude.m4:1591: PHP_FOPENCOOKIE is expanded from...
| configure.in:436: the top level
| configure.in:624: warning: AC_RUN_IFELSE called without default to allow cross compiling
| autoconf/general.m4:1800: AC_CACHE_VAL is expanded from...
| autoconf/general.m4:1809: AC_CACHE_CHECK is expanded from...
| configure.in:624: the top level
| configure.in:635: warning: AC_RUN_IFELSE called without default to allow cross compiling
| acinclude.m4:614: PHP_TIME_R_TYPE is expanded from...
| configure.in:635: the top level
| ext/iconv/config.m4:118: warning: AC_RUN_IFELSE called without default to allow cross compiling
| ext/iconv/config.m4:118: the top level
| autoreconf: running: libtoolize --copy --force
| configure.in:150: warning: AC_PROG_LEX invoked multiple times
| autoconf/programs.m4:438: AC_DECL_YYTEXT is expanded from...
| configure.in:150: the top level
| autoreconf: running: /home/cvs/oe/build/tmp/staging/i686-linux/bin/autoconf --include=/home/cvs/oe/build/tmp/staging/arm-linux/share/aclocal-1.9 --include=/home/cvs/oe/build/tmp/staging/arm-linux/share/aclocal --force --warnings=cross
| configure.in:150: warning: AC_PROG_LEX invoked multiple times
| autoconf/programs.m4:438: AC_DECL_YYTEXT is expanded from...
| configure.in:150: the top level
| configure.in:436: warning: AC_RUN_IFELSE called without default to allow cross compiling
| autoconf/general.m4:2282: AC_RUN_IFELSE is expanded from...
| autoconf/general.m4:2290: AC_TRY_RUN is expanded from...
| acinclude.m4:1591: PHP_FOPENCOOKIE is expanded from...
| configure.in:436: the top level
| configure.in:624: warning: AC_RUN_IFELSE called without default to allow cross compiling
| autoconf/general.m4:1800: AC_CACHE_VAL is expanded from...
| autoconf/general.m4:1809: AC_CACHE_CHECK is expanded from...
| configure.in:624: the top level
| configure.in:635: warning: AC_RUN_IFELSE called without default to allow cross compiling
| acinclude.m4:614: PHP_TIME_R_TYPE is expanded from...
| configure.in:635: the top level
| ext/iconv/config.m4:118: warning: AC_RUN_IFELSE called without default to allow cross compiling
| ext/iconv/config.m4:118: the top level
| autoreconf: running: /home/cvs/oe/build/tmp/staging/i686-linux/bin/autoheader --include=/home/cvs/oe/build/tmp/staging/arm-linux/share/aclocal-1.9 --include=/home/cvs/oe/build/tmp/staging/arm-linux/share/aclocal --force --warnings=cross
| autoheader: WARNING: Using auxiliary files such as `acconfig.h', `config.h.bot'
| autoheader: WARNING: and `config.h.top', to define templates for `config.h.in'
| autoheader: WARNING: is deprecated and discouraged.
| autoheader:
| autoheader: WARNING: Using the third argument of `AC_DEFINE' and
| autoheader: WARNING: `AC_DEFINE_UNQUOTED' allows to define a template without
| autoheader: WARNING: `acconfig.h':
| autoheader:
| autoheader: WARNING: AC_DEFINE([NEED_FUNC_MAIN], 1,
| autoheader: [Define if a function `main' is needed.])
| autoheader:
| autoheader: WARNING: More sophisticated templates can also be produced, see the
| autoheader: WARNING: documentation.
| configure.in:150: warning: AC_PROG_LEX invoked multiple times
| autoconf/programs.m4:438: AC_DECL_YYTEXT is expanded from...
| configure.in:150: the top level
| autoreconf: configure.in: not using Automake
| autoreconf: running: gnu-configize
| configure.in:150: warning: AC_PROG_LEX invoked multiple times
| autoconf/programs.m4:438: AC_DECL_YYTEXT is expanded from...
| configure.in:150: the top level
| autoreconf: Leaving directory `.'
| NOTE: Running /home/cvs/oe/build/tmp/work/php-5.0.5-r0/php-5.0.5/configure --build=i686-linux --host=arm-linux --target=arm-linux --prefix=/usr --exec_prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --libexecdir=/usr/libexec --datadir=/usr/share --sysconfdir=/etc --sharedstatedir=/usr/com --localstatedir=/var --libdir=/usr/lib --includedir=/usr/include --oldincludedir=/usr/include --infodir=/usr/share/info --mandir=/usr/share/man --with-cgi --enable-sockets --enable-pcntl --with-mysql=/home/cvs/oe/build/tmp/staging/arm-linux/lib/.. --with-zlib --with-zlib-dir=/home/cvs/oe/build/tmp/staging/arm-linux/lib/.. --without-libpng --without-libjpeg --with-config-file-path=/etc/php5 --cache-file=config.cache --disable-debug --disable-rpath --enable-bcmath --enable-calendar --enable-maintainer-zts --enable-embed=shared --enable-force-cgi-redirect --enable-ftp --enable-inline-optimization --enable-magic-quotes --enable-memory-limit --enable-pic --enable-safe-mode --enable-sockets --enable-track-vars --enable-trans-sid --enable-wddx --sysconfdir=/etc/appWeb --with-exec-dir=/etc/appWeb/exec -
koen
do not use '-b' if you don't know what the implications are.
ShiroiKuma
QUOTE(koen @ May 19 2006, 11:39 AM)
do not use '-b' if you don't know what the implications are.
*

OK, I thought it's just like a way to build the indiv. file without going through related dependencies or something.

So, if I understand correctly what you're saying, this won't go for instance for building php 5.

So, I should
CODE
bitbake php
right?

If that's the case, what is the:
CODE
# bitbake php
NOTE: Using cache in '/home/cvs/oe/build/tmp/cache'
NOTE: Parsing finished. 3246 cached, 0 parsed, 135 skipped, 0 masked.
ERROR: Nothing provides dependency virtual/arm-linux-gcc
NOTE:
ERROR: dependency virtual/arm-linux-gcc (for php) not satisfied
NOTE: no buildable providers for php
NOTE:
#
and how do I proceed from here?
ShiroiKuma
QUOTE(lardman @ May 19 2006, 10:46 AM)
QUOTE
CODE
PREFERRED_PROVIDERS += " virtual/arm-gcc-initial:gcc-cross-initial"
PREFERRED_PROVIDERS += " virtual/arm-gcc:gcc-cross"
PREFERRED_PROVIDERS += " virtual/arm-g++:gcc-cross"


should be

CODE
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc-initial:gcc-cross-initial"
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc:gcc-cross"
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}g++:gcc-cross"


arm is not the arch name of the toolchain.
*


OK, did this. Now I again get the:
CODE
# bitbake php
NOTE: Using cache in '/home/cvs/oe/build/tmp/cache'
NOTE: Parsing finished. 3246 cached, 0 parsed, 135 skipped, 0 masked.
ERROR: Nothing provides dependency virtual/arm-linux-gcc
NOTE:
ERROR: dependency virtual/arm-linux-gcc (for php) not satisfied
NOTE: no buildable providers for php
NOTE:
#
lardman
I answered your question at the bottom of my post above...

Si

Oops, didn't see that. Ignore me wink.gif
koen
please update your bitbake to the latest stable and use the correct DISTRO (openzaurus-unstable). The error above indicates that you either have a typo in DISTRO = "openzaurus-unstable" or a wrong value.
ShiroiKuma
QUOTE(koen @ May 19 2006, 11:53 AM)
please update your bitbake to the latest stable and use the correct DISTRO (openzaurus-unstable). The error above indicates that you either have a typo in DISTRO = "openzaurus-unstable" or a wrong value.
*

OK, could be it, I have DISTRO="openzaurus-3.5.4.1" which I think I took from the flash movie. I'll go change it now and see how it goes.
lardman
The C compiler test can fail for a number of reasons, only one of which is the C compiler not actually creating executables.

What version of bitbake are you running? Is it the latest stable version?

Can you post the full contents of your local.conf so I can check it.

I'd then remove the contents of the cache (as your local.conf changed when you altered the gcc names).


Si
ShiroiKuma
QUOTE(lardman @ May 19 2006, 12:00 PM)
Can you post the full contents of your local.conf so I can check it.

I'd then remove the contents of the cache (as your local.conf changed when you altered the gcc names).
*

OK, cleared tmp/cache and am running bitbake php again. The conf/local.con file:
CODE
#
DL_DIR = "/home/cvs"
BBFILES = "/home/cvs/oe/org.openembedded.dev/packages/*/*.bb"
BBMASK = ""
PREFERRED_PROVIDERS = "virtual/qte:qte virtual/libqpe:libqpe-opie"
PREFERRED_PROVIDERS += " virtual/libsdl:libsdl-qpe"
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc-initial:gcc-cross-initial"
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc:gcc-cross"
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}g++:gcc-cross"
MACHINE = "spitz"
TARGET_ARCH = "arm"
TARGET_OS = "linux"
TARGET_FPU = "soft"
DISTRO = "openzaurus-unstable"
ENABLE_BINARY_LOCALE_GENERATION
ZKERNEL_VERSION = "2.6"
IMAGE_FSTYPES = "jffs2 tar"
BBINCLUDELOGS = "yes"
CVS_TARBALL_STASH = "http://www.oesources.org/source/current/"
INHERIT += 'patcher'
ShiroiKuma
I've made some progress.

Changing DISTRO to openzaurus-unstable helped me realize there was a local.conf also in the org.openembedded.dev/conf/ and it was reading this one, though I read that you're supposed to put the local.conf file in the build directory into conf/

So deletel the org.openembedded.dev/conf/local.conf and symlinked the conf/local.conf file there just to make sure.

Now ran bitbake php

It's been going for a couple of hours, downloading binutils, now gcc-cross etc.

Will report on the progress further when I get somewhere. The only thing that makes me unsure is that when bitbake php started it reported DISTRO as openzaurus in the beginning though I checked and it's set as openzaurus-unstable in local.conf.

But so far it's going...

Let's see. smile.gif

Thanks a lot for helping me so far koen and lardman.

I'll be back.
ShiroiKuma
I think it works fine now, it's really great, it pulls in all the dependencies, downloads, builds...

The only thing, is I still got stuck on this php thing, and it's not an OE problem I think, however since this got it start it I thought I'd ask it here, to maybe find a solution.

bitbake php goes into the penultimate step and configures php and then
CODE
$ tail config.log
checking whether libxml build works...
checking for XMLRPC-EPI support... yes
checking libexpat dir for XMLRPC-EPI... no
checking iconv dir for XMLRPC-EPI... no
checking for iconv... no
checking for libiconv... no
checking for libiconv in -liconv... no
checking for iconv in -liconv... no
configure: error: iconv not found, in order to build xmlrpc you need the iconv library
FATAL: oe_runconf failed

Yet there is iconv in /usr/bin

I even went and downloaded and built GNU libiconv and it's in /usr/local/bin/ yet I still get this failure.

I've googled and found a couple of references to icon not found even when installed which is exactly this prob but all the pages are dead, and I wasn't able to find a solution. What is it?

Hack the php configure script?
lardman
Presumably you are cross-building php?

I'd have thought that it wants an arm version of libiconv in that case.


Si
ShiroiKuma
QUOTE(lardman @ May 20 2006, 10:40 AM)
Presumably you are cross-building php?
I'd have thought that it wants an arm version of libiconv in that case.
*

Yeah. I did even bitbake libiconv.

It did build it. But don't know what next. I actually checked and the php5 bb file specifies a --without-libiconv option, which is even more stranger then why it complains about missing libiconv. If you remove that option, the configure fails right away...

Man... I'm realy trying to figure out here what to do with it...
ShiroiKuma
I'm starting to get the hang of this... smile.gif

Modified php_5xxx.bb
It had --without-iconv but had also --with-xmlrpc which needs iconv. Don't know why it doesn't find iconv, but to hell with it, removed --with-xmlrpc and configure went ahead.

Now it's compiling... Cool.

Thanks a lot for helping. Now maybe I will get php5 on OZ, yey...

Well, it seems Apache2 needs to be built natively on the Z, since bitbake doesn't build it, so it still might be some fun, since I haven't found apache for OZ yet... sad.gif
ShiroiKuma
Hmmm, it seems I was being too optimistic...

After the above modifications the compile went, but then bombed, since it tried to use libs from /usr/lib/ instead of the arm ones when linking...

I made some more mods to the bb file and then it fell apart completely, now I can't bitbake anything...

Well, I'm updating to the latest OE.db now, then will go check the local.conf file again, and try again.

I'll report on my progress, hopefully will move further.

Thanks for helping me.

I'll be back.
ShiroiKuma
Hmmm... I've updated to the latest org.openembedded.dev and am not sure whether something is really messed up on my system or what...

Anyway when I try to bitbake php now, I get:
CODE
debian:/home/cvs/oe/build# bitbake php
NOTE: Using cache in '/home/cvs/oe/build/tmp/cache'
NOTE: Parsing finished. 3312 cached, 0 parsed, 82 skipped, 0 masked.
NOTE: build 200605210114: started

OE Build Configuration:
BB_VERSION     = "1.4.3"
OE_REVISION    = "f9144272974741c7400c2927ca4dac50aa796731"
TARGET_ARCH    = "arm"
TARGET_OS      = "linux"
MACHINE        = "spitz"
DISTRO         = "openzaurus"
DISTRO_VERSION = ".dev-snapshot-20060520"
TARGET_FPU     = "soft"

NOTE: multiple providers are available (glibc, glibc-intermediate);
NOTE: consider defining PREFERRED_PROVIDER_virtual/arm-linux-libc-for-gcc
NOTE:
NOTE: package php-5.0.5: started
NOTE: package php-5.0.5-r0: task do_fetch: started
NOTE: package php-5.0.5-r0: task do_fetch: completed
NOTE: package php-5.0.5-r0: task do_package: started
ERROR: function do_install failed
ERROR: log data follows (/home/cvs/oe/build/tmp/work/armv5te-linux/php-5.0.5-r0/temp/log.do_install.25282)
| NOTE: make INSTALL_ROOT=/home/cvs/oe/build/tmp/work/armv5te-linux/php-5.0.5-r0/image install
| make: *** No rule to make target `install'.  Stop.
| FATAL: oe_runmake failed
NOTE: Task failed: /home/cvs/oe/build/tmp/work/armv5te-linux/php-5.0.5-r0/temp/log.do_install.25282
NOTE: package php-5.0.5-r0: task do_package: failed
ERROR: TaskFailed event exception, aborting
NOTE: package php-5.0.5: failed
ERROR: Build of php failed
debian:/home/cvs/oe/build#

I'm not sure what this means. Can anyone advise me?
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2014 Invision Power Services, Inc.