SlackwareThis Forum is for the discussion of Slackware Linux.
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
I am trying to get ARM Slack onto my Beagleboard rev C4, by piece-meal replacement of files on a working Angstrom installation. I am a complete newbie with ARM. Angstrom worked out of the box, as it requires not much to install it. The ARM slack is from: slack-13.37-miniroot_01May11.tar.
I figured, it would be a good exercise to "port" Slackware in this tedious way. But all my attemps have been absolutely frustrating, and I have no clue what's going wrong. So I would be really glad if someone could help me out.
I started with replacing /sbin/init. The result was, that the kernel couldn't find it. Which is strange, since there should be no problem: The ELF headers of the angstrom and the slackware init are identical (ARM, version 0x1, Version4 EABI), of course with different entry points etc. It cannot be a library problem, as both inits are statically linked. So, why does the arm init not work? Any clues anybody???
Ok, roll back, using angstrom's init again. I tried to replace getty, which did not work. Roll back. Then I changed the init process by replacing /etc/inittab and by providing the startup files, copying /etc/rc.d/*. But to no avail.
Init starts with these (partly) strange messages:
INIT: version 2.86 booting
grep: /proc/filesystems: No such file or directory
grep: /proc/mounts: No such file or directory
INIT: Entering runlevel: 3o such file
I don't know, but I thought that the kernel would provide the /proc hierarchy, irrespective of the platform. Where is the proc fs??
Then, at the end of the startup, comes the really nice part, that spoils the fun even more:
INIT: Id "c1" respawning too fast: disabled for 5 minutes
INIT: Id "s0" respawning too fast: disabled for 5 minutes
INIT: Id "c2" respawning too fast: disabled for 5 minutes
INIT: Id "c3" respawning too fast: disabled for 5 minutes
So, that's all I could "achieve". Umm, basically nothing.
The part of my /etc/inittab that handles consoles reads as follows:
c1:12345:respawn:/sbin/getty 115200 tty1 linux
c2:12345:respawn:/sbin/getty 115200 ttyS1 linux
c3:12345:respawn:/sbin/getty 115200 ttyS2 linux
s0:12345:respawn:/sbin/getty 115200 ttyS0 vt100
That's the (working!) console line of Angstrom's inittab:
1:2345:respawn:/sbin/getty 38400 tty1
Frustrating times, again with compiling ;-)
I have never cross-compiled. So I checked the GCC man page for options. When I applied the options according to the man page, gcc dropped me a line, saying that the option is not known. What`s that? Good documentation is really valuable, thank you! So, as I am running 32-bit slackware, using GCC version 4.5.2, could anybody please tell me proper (and sane) compile options for a cross-compile to ARM. Beagleboard C4 should be a Cortex-A8 CPU.
Maybe I make some (or a lot) really stupid mistakes, no idea. Any help, hints would be greatly appreciated! :-)