OESF Portal | OESF Forum | OESF Wiki | LinuxPDA | #planetgemini chat on matrix.org | #gemini-pda chat on Freenode | #zaurus and #alarmz chat on Freenode | ELSI (coming soon) | Ibiblio


Welcome Guest ( Log In | Register )

Personal Photo
Personal Statement
staffanu doesn't have a personal statement currently.
Personal Info
Age Unknown
Gender Not Set
Location Unknown
Birthday Unknown
No Information
Joined: 31-August 05
Profile Views: 147*
Last Seen: 7th February 2006 - 05:10 PM
Local Time: Apr 25 2018, 01:16 AM
2 posts (0 per day)
Contact Information
AIM No Information
Yahoo No Information
ICQ No Information
MSN No Information
* Profile views updated each hour



My Content
31 Aug 2005
I followed the Getting Started instructions to set up a compilation environment on my FreeBSD 5.4 box yesterday. Since FreeBSD is mentioned at some places, I thought this would work without too much trouble.

I thought I would share the problems I ran into, and the solutions I came up with. Some of them are suggestions to change the description, or the org.openembedded.dev source code. Other are just workarounds that I do not really know how to best handle.

My first build of task-bootstrap is still running, so maybe there will be more trouble, but at least I've now got around the first few obstacles (in the order I encountered them):

- The documentation says to set BUILD_OS to freebsdX, where X is the major version of FreeBSD. The bb file patcher-native_20040913.bb defines an alternative PATCHCMD as PATCHCMD_build-freebsd. (I.e., no trailing version number.) I simply ignored setting BUILD_OS to freebsd5, since it is set to freebsd automatically in bitbake.conf (using uname).

- The build of quilt-native_0.39.bb still failed, however. The bb file also needs the same FreeBSD PATCHCMD extension:
PATCHCMD_build-freebsd = "num='%s'; name='%s'; file='%s'; gpatch -p "$num" -i "$file""

- I believe the same patch is needed in gawk-native_3.1.4.bb. I didn't run into the problem, but found it while searching for places that had the patch command hard coded.

(Both the above are due to the fact that the gnu patch program is typically installed as gpatch on FreeBSD).

- The next problem is also due to the same problem: quilt configure needs "--with-patch=/usr/local/bin/gpatch", and this can be added to quilt-native_0.39.bb by adding the line
EXTRA_OECONF_build-freebsd = "--disable-nls --with-patch=/usr/local/bin/gpatch"

- Quilt also does not compile, since it includes "alloca.h". Removing the include is enough. It seems there is a fix at the quilt bug repository, so this problem will probably go away by itself when quilt is upgraded in the future.

- The Makefile for quilt also uses "chmod --reference ...", which is not supported by FreeBSD. For now, I just removed the chmod statement, since I do not believe it is vital.

- Quilt fails for still one more reason: it uses gnu getopt, which is not installed by default on FreeBSD. Installing the port misc/getopt solves this.

- A lot of the bb files assume that "cp", "tar", "find" are the gnu versions. Since these are called "gcp", "gtar", and "gfind" on FreeBSD, and they were present at a lot of locations, what I did was to create a small local bin directory, containing symlinks to the gnu versions, and added this directory first in my PATH when running bitbake. After doing so, I realize that might have been an easier solution for gpatch as well. (It probably removes the need for most patches above...)

So far, this is it. My build is now at compiling glibc. I hope the rest works out ok!

Last Visitors
staffanu has no visitors to display.

Other users have left no comments for staffanu.

There are no friends to display.
RSS Lo-Fi Version Time is now: 24th April 2018 - 03:16 PM