kernel compiling in woof-ce

Under development: PCMCIA, wireless, etc.
Message
Author
stemsee

#41 Post by stemsee »

to append id string to vmlinuz and kernel-modules.sfs do

Code: Select all

echo -n 'some-distro-id-string' >> vmlinuz
repeat for kernel-modules.sfs.

You can also change DISTRO_ZDRVSFS='kernel-modules.sfs' in initrd/DISTRO_SPECS and etc/DISTRO_SPECS, then jiust have the kernel-modules.sfs in the same dir as initrd.gz.

stemsee

#42 Post by stemsee »

updates to DOTconfig-3.18.3-64 which enables IA32 allowing to run 32bit distros/software.
update to script (one bug for 32-nopae)
Added ReadMe/How-to

EDIT: removed because broken.
Last edited by stemsee on Thu 29 Jan 2015, 06:48, edited 1 time in total.

User avatar
rufwoof
Posts: 3690
Joined: Mon 24 Feb 2014, 17:47

#43 Post by rufwoof »

stemsee wrote:to append id string to vmlinuz and kernel-modules.sfs do

Code: Select all

echo -n 'some-distro-id-string' >> vmlinuz
repeat for kernel-modules.sfs.

You can also change DISTRO_ZDRVSFS='kernel-modules.sfs' in initrd/DISTRO_SPECS and etc/DISTRO_SPECS, then jiust have the kernel-modules.sfs in the same dir as initrd.gz.
Thanks.

I've just grabbed the latest version and I'm running that. Only change I made was to change the 32PAE build config to turn FD style off, and the title suffice to -32PAE

... few hours later returned home to a 'failed to compile' error message. Sorry lost the logs as its memory based (PXE booted) and /tmp is gone. USB HDD has just patches and sources in the dist folder

stemsee

#44 Post by stemsee »

Yeah I think I messed up somewhere. I too am having failed compiles. But mine seem to have something to do with aes crypto. Need to step back. I am going to track down the latest Fatdog64 config and another up-to-date pae config and import them.

Sorry about all this. Maybe I will take more time before updating this time.

User avatar
rufwoof
Posts: 3690
Joined: Mon 24 Feb 2014, 17:47

#45 Post by rufwoof »

Is it usual for developers to compile all three - 64 bit, 32 bit PAE, 32-bit non PAE ?

I would have thought that tying into 64 bit excludes many that might be running 32 bit pup's from using the script - and that instead a single unattended build run would be more general. Select what build you want, 32 non-PAE OR 32 PAE OR 64 bit (if running a 64 bit pup) .... and just create that single build.

Or perhaps that adds to much complexity???

I've cleared out the USB HDD now (fatdog etc), so wont be running any further tests for a while. Need to spend some time learning more about initrd's and configs etc.

Thanks Stemsee - learned quite a bit.

stemsee

#46 Post by stemsee »

woof-ce > kenel-kit is already suiable for single kernel builds, with some configuration setuos and 'make menuconfig' which loses noobs.

Dry Falls
Posts: 616
Joined: Tue 16 Dec 2014, 23:37
Location: Upper Columbia

#47 Post by Dry Falls »

Greetings. I finally got up the nerve and tried the compile script. It was pretty fast (about 30 minutes). Well, I got the compiled kernel sources and headers (only to find that they are already in your kernel modules sfs I placed in the initrd.xz). But that's all I got. Everything said "we have children" right down to the bottom:

Code: Select all

...
Must remake target `__build'.
Need a job token; we don't have children
Invoking recipe from scripts/Makefile.build:97 to update target `__build'.
Successfully remade target file `__build'.
Reaping winning child 0x18ed950 PID 5840 
Removing child 0x18ed950 PID 5840 from chain.
Error: failed to compile the kernel sources.
<root> /initrd/mnt/dev_save/stems-unattended-kernelkit/stems-unattended-kernelkit
bash-4.2# 
I tried to attach the build log but no go. Basically, it said
--2015-01-28 18:28:44-- http://www.kernel.org/pub/linux/kernel/ ... 8.3.tar.xz
Resolving www.kernel.org (www.kernel.org)... 149.20.4.69, 199.204.44.194, 198.145.20.140, ...
Connecting to www.kernel.org (www.kernel.org)|149.20.4.69|:80... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
Location: https://www.kernel.org/pub/linux/kernel ... 8.3.tar.xz [following]
--2015-01-28 18:28:46-- https://www.kernel.org/pub/linux/kernel ... 8.3.tar.xz
Connecting to www.kernel.org (www.kernel.org)|149.20.4.69|:443... connected.
WARNING: cannot verify www.kernel.org's certificate, issued by '/C=IL/O=StartCom Ltd./OU=Secure Digital Certificate Signing/CN=StartCom Class 2 Primary Intermediate Server CA':
Unable to locally verify the issuer's authority.
HTTP request sent, awaiting response... 200 OK
Length: 80944856 (77M) [application/x-xz]
Saving to: 'dist/sources/vanilla/linux-3.18.3.tar.xz'

0K .......... .......... .......... .......... .......... 0%
...2015-01-28 18:31:24 (512 KB/s) - 'dist/sources/vanilla/linux-3.18.3.tar.xz' saved [80944856/80944856]

Cloning into 'aufs3-18-git280115'...
Note: checking out 'origin/aufs3.18'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

git checkout -b new_branch_name

HEAD is now at 85f9860... aufs3.18 20150126
patching file fs/Kconfig
patching file fs/Makefile
patching file include/uapi/linux/Kbuild
patching file MAINTAINERS
patching file drivers/block/loop.c
patching file fs/dcache.c
Hunk #1 succeeded at 1019 (offset -1 lines).
patching file fs/inode.c
patching file fs/splice.c
patching file include/linux/fs.h
patching file include/linux/splice.h
patching file fs/dcache.c
patching file fs/inode.c
patching file fs/namespace.c
Hunk #2 succeeded at 1733 (offset 5 lines).
patching file fs/notify/group.c
patching file fs/notify/mark.c
patching file fs/open.c
patching file fs/splice.c
patching file fs/xattr.c
patching file security/commoncap.c
patching file security/device_cgroup.c
patching file security/security.c
patching file fs/buffer.c
patching file fs/proc/base.c
patching file fs/proc/nommu.c
patching file fs/proc/task_mmu.c
patching file fs/proc/task_nommu.c
patching file include/linux/mm.h
patching file include/linux/mm_types.h
patching file kernel/fork.c
patching file mm/Makefile
patching file mm/filemap.c
patching file mm/fremap.c
patching file mm/madvise.c
patching file mm/memory.c
Hunk #1 succeeded at 2170 with fuzz 1 (offset 7 lines).
patching file mm/mmap.c
Hunk #4 succeeded at 2480 (offset 3 lines).
Hunk #5 succeeded at 2499 (offset 3 lines).
Hunk #6 succeeded at 2889 (offset 3 lines).
patching file mm/msync.c
patching file mm/nommu.c
patching file mm/prfile.c
patching file security/commoncap.c
Hunk #1 succeeded at 606 with fuzz 1 (offset 13 lines).
CHK include/generated/uapi/linux/version.h
UPD include/generated/uapi/linux/version.h
WRAP arch/x86/include/generated/asm/clkdev.h
WRAP arch/x86/include/generated/asm/cputime.h
WRAP arch/x86/include/generated/asm/dma-contiguous.h
WRAP arch/x86/include/generated/asm/early_ioremap.h
WRAP arch/x86/include/generated/asm/mcs_spinlock.h
WRAP arch/x86/include/generated/asm/scatterlist.h
SYSTBL arch/x86/syscalls/../include/generated/asm/syscalls_32.h
SYSHDR arch/x86/syscalls/../include/generated/uapi/asm/unistd_32.h
SYSHDR arch/x86/syscalls/../include/generated/uapi/asm/unistd_64.h
SYSHDR arch/x86/syscalls/../include/generated/uapi/asm/unistd_x32.h
HOSTCC arch/x86/tools/relocs_32.o
HOSTCC arch/x86/tools/relocs_64.o
HOSTCC arch/x86/tools/relocs_common.o
HOSTLD arch/x86/tools/relocs
HOSTCC scripts/unifdef
INSTALL usr/include/asm-generic/ (35 files)
INSTALL usr/include/drm/ (18 files)
INSTALL usr/include/linux/byteorder/ (2 files)
INSTALL usr/include/linux/caif/ (2 files)
INSTALL usr/include/linux/can/ (5 files)
INSTALL usr/include/linux/dvb/ (8 files)
INSTALL usr/include/linux/hdlc/ (1 file)
INSTALL usr/include/linux/hsi/ (1 file)
INSTALL usr/include/linux/isdn/ (1 file)
INSTALL usr/include/linux/mmc/ (1 file)
INSTALL usr/include/linux/netfilter/ipset/ (4 files)
INSTALL usr/include/linux/netfilter/ (85 files)
INSTALL usr/include/linux/netfilter_arp/ (2 files)
INSTALL usr/include/linux/netfilter_bridge/ (17 files)
INSTALL usr/include/linux/netfilter_ipv4/ (9 files)
INSTALL usr/include/linux/netfilter_ipv6/ (12 files)
INSTALL usr/include/linux/nfsd/ (5 files)
INSTALL usr/include/linux/raid/ (2 files)
INSTALL usr/include/linux/spi/ (1 file)
INSTALL usr/include/linux/sunrpc/ (1 file)
INSTALL usr/include/linux/tc_act/ (8 files)
INSTALL usr/include/linux/tc_ematch/ (4 files)
INSTALL usr/include/linux/usb/ (11 files)
INSTALL usr/include/linux/wimax/ (1 file)
INSTALL usr/include/linux/ (405 files)
INSTALL usr/include/misc/ (1 file)
INSTALL usr/include/mtd/ (5 files)
INSTALL usr/include/rdma/ (6 files)
INSTALL usr/include/scsi/fc/ (4 files)
INSTALL usr/include/scsi/ (3 files)
INSTALL usr/include/sound/ (11 files)
INSTALL usr/include/video/ (3 files)
INSTALL usr/include/xen/ (4 files)
INSTALL usr/include/uapi/ (0 file)
INSTALL usr/include/asm/ (65 files)
CHECK usr/include/asm-generic/ (35 files)
CHECK usr/include/drm/ (18 files)
CHECK usr/include/linux/byteorder/ (2 files)
CHECK usr/include/linux/caif/ (2 files)
CHECK usr/include/linux/can/ (5 files)
CHECK usr/include/linux/dvb/ (8 files)
CHECK usr/include/linux/hdlc/ (1 files)
CHECK usr/include/linux/hsi/ (1 files)
CHECK usr/include/linux/isdn/ (1 files)
CHECK usr/include/linux/mmc/ (1 files)
CHECK usr/include/linux/netfilter/ipset/ (4 files)
CHECK usr/include/linux/netfilter/ (85 files)
CHECK usr/include/linux/netfilter_arp/ (2 files)
CHECK usr/include/linux/netfilter_bridge/ (17 files)
CHECK usr/include/linux/netfilter_ipv4/ (9 files)
CHECK usr/include/linux/netfilter_ipv6/ (12 files)
CHECK usr/include/linux/nfsd/ (5 files)
CHECK usr/include/linux/raid/ (2 files)
CHECK usr/include/linux/spi/ (1 files)
CHECK usr/include/linux/sunrpc/ (1 files)
CHECK usr/include/linux/tc_act/ (8 files)
CHECK usr/include/linux/tc_ematch/ (4 files)
CHECK usr/include/linux/usb/ (11 files)
CHECK usr/include/linux/wimax/ (1 files)
CHECK usr/include/linux/ (405 files)
./usr/include/linux/kexec.h:61: userspace cannot reference function or variable defined in the kernel
CHECK usr/include/misc/ (1 files)
CHECK usr/include/mtd/ (5 files)
CHECK usr/include/rdma/ (6 files)
CHECK usr/include/scsi/fc/ (4 files)
CHECK usr/include/scsi/ (3 files)
CHECK usr/include/sound/ (11 files)
CHECK usr/include/video/ (3 files)
CHECK usr/include/xen/ (4 files)
CHECK usr/include/uapi/ (0 files)
CHECK usr/include/asm/ (65 files)
CHK include/generated/uapi/linux/version.h
INSTALL include/asm-generic (35 files)
INSTALL include/drm (18 files)
INSTALL include/linux/byteorder (2 files)
INSTALL include/linux/caif (2 files)
INSTALL include/linux/can (5 files)
INSTALL include/linux/dvb (8 files)
INSTALL include/linux/hdlc (1 file)
INSTALL include/linux/hsi (1 file)
INSTALL include/linux/isdn (1 file)
INSTALL include/linux/mmc (1 file)
INSTALL include/linux/netfilter/ipset (4 files)
INSTALL include/linux/netfilter (85 files)
INSTALL include/linux/netfilter_arp (2 files)
INSTALL include/linux/netfilter_bridge (17 files)
INSTALL include/linux/netfilter_ipv4 (9 files)
INSTALL include/linux/netfilter_ipv6 (12 files)
INSTALL include/linux/nfsd (5 files)
INSTALL include/linux/raid (2 files)
INSTALL include/linux/spi (1 file)
INSTALL include/linux/sunrpc (1 file)
INSTALL include/linux/tc_act (8 files)
INSTALL include/linux/tc_ematch (4 files)
INSTALL include/linux/usb (11 files)
INSTALL include/linux/wimax (1 file)
INSTALL include/linux (405 files)
INSTALL include/misc (1 file)
INSTALL include/mtd (5 files)
INSTALL include/rdma (6 files)
INSTALL include/scsi/fc (4 files)
INSTALL include/scsi (3 files)
INSTALL include/sound (11 files)
INSTALL include/video (3 files)
INSTALL include/xen (4 files)
INSTALL include/uapi (0 file)
INSTALL include/asm (65 files)
If that's any help. Not sure if it was my mistake or what.

df

stemsee

#48 Post by stemsee »

Hi DryFalls

I am aware that my script is de-railed at the moment, I suppos i should remove the links, . I have to go over the script to find what's missing! I fear I deleted something in my haste to put it out. Sorry about that. Either wait or try the previous links.

stemsee

#49 Post by stemsee »

I beleive that I have got it sorted now.
Updated configs for 3.18.4 (latest stable kernel).
Please try and report bugs.
Attachments
stemsees-unattended-kernel-kit.zip
(120.21 KiB) Downloaded 340 times

stemsee

#50 Post by stemsee »

Compiled all three kernels this morning consecutively.

Running LightHouse 64 with latest 3.18.4-EmSee-64 kernel.

Here is link to kernel, modules and sources.
Attachments
3.18.3.jpg
(45.57 KiB) Downloaded 674 times
3.18.4-emsee-64-link.txt.gz
(124 Bytes) Downloaded 314 times

Dry Falls
Posts: 616
Joined: Tue 16 Dec 2014, 23:37
Location: Upper Columbia

#51 Post by Dry Falls »

Great. Thanks. I used your older script (the one with the old woof-ce readme) and changed every mention of 3.18.2 to 3.16.2 and it compiled a really nice kernel and modules. Unfortunately, since there are new features added from kernel.org, it was not unattended. I slipped on the enter key which resulted in pruning a bunch of drivers. Still, it gave me a nice desktop with most features available. It didn't make any 32 bit kernels. By the way, I changed the default for the aufs downloader. That was causing problems before.

If we can rig a multilib/32 bit capability for 3.18.2, there won't be a need for two seperate distributions of LH.

Thanks again for the help,
df

jamesbond
Posts: 3433
Joined: Mon 26 Feb 2007, 05:02
Location: The Blue Marble

#52 Post by jamesbond »

Dry Falls wrote:If we can rig a multilib/32 bit capability for 3.18.2, there won't be a need for two seperate distributions of LH.
"multilib" refers to the libraries, not the kernel. 64-bit kernel can execute 64-and 32-bit programs perfectly fine (provided you have both 64-bit and 32-bit libraries - which I think is included by Tazoc). In fact, it is perfectly acceptable to run 64-bit kernel strictly with 32-bit libs and programs, and this is a better arrangement than running 32-bit PAE kernel. But, for this to work, you need 64-bit CPU.

The dual distribution is to support people who don't have 64-bit CPU and thus absolutely requires 32-bit kernel.
Fatdog64 forum links: [url=http://murga-linux.com/puppy/viewtopic.php?t=117546]Latest version[/url] | [url=https://cutt.ly/ke8sn5H]Contributed packages[/url] | [url=https://cutt.ly/se8scrb]ISO builder[/url]

Dry Falls
Posts: 616
Joined: Tue 16 Dec 2014, 23:37
Location: Upper Columbia

#53 Post by Dry Falls »

You have to forgive some of my ignorance since I'm brand new at this and tend to ignore the foundations while patching the roof. Although I did hear that k3.17 and beyond no longer support 32 bit binaries. Maybe that only meant that no more 32 bit kernels?

So I guess I wonder why I was getting all those "cannot execute 32 bit binaries" messages on every kernel but 3.16.2 from fatdog64-7000b? Yes, the libraries are what makes it work, but doesn't the kernel still have to be configured in order to let them?

Anyway, I take back what I said about rigging. I'm running now on this new kernel build and everything, including wine works. This is going to be the one I'm going with -- fathouse is history, or should I say redundant?

df

stemsee

#54 Post by stemsee »

Here is an improved ubuild.sh script which asks for version of kernel to build and updates build config scripts accordingly.

Also, gives user the choice to build 1, 2 or 3 kernels. (needs testing the logic gets confusing)

I am running it now as latest stable kernel has bumped to 3.18.5

Please test, just drop it into the kernel kit above to replace ubuild.sh

fake .gz
Attachments
ubuild.sh.gz
(40.02 KiB) Downloaded 335 times

stemsee

#55 Post by stemsee »

The logic is not correct, I got two 64bit kernels compiled! But it is noticeably faster than yesterday's kernel! Blowfish comes in at 5.something !!

Changed the logic already! I will post it for testers. I am taking a break!
Attachments
ubuild.sh.gz
(40.6 KiB) Downloaded 325 times
3.18.5-E0See-64.jpg
(43.17 KiB) Downloaded 597 times

stemsee

#56 Post by stemsee »

Changed the logic again! I thought I was logical :-(
Attachments
sukk.tar.gz
(112.7 KiB) Downloaded 342 times

User avatar
rufwoof
Posts: 3690
Joined: Mon 24 Feb 2014, 17:47

#57 Post by rufwoof »

stemsee wrote:Here is an improved ubuild.sh script which asks for version of kernel to build and updates build config scripts accordingly.

Also, gives user the choice to build 1, 2 or 3 kernels. (needs testing the logic gets confusing)

I am running it now as latest stable kernel has bumped to 3.18.5

Please test, just drop it into the kernel kit above to replace ubuild.sh

fake .gz
I did try the one posted in http://www.murga-linux.com/puppy/viewto ... 038#825038 - ran all the way through, produced a vmlinuz but ended up with a 'failed to compile kernel' error. I was trying to compile just 32PAE alone and tweaked some of the config - so likely down to some noob error rather than your code/script.

stemsee

#58 Post by stemsee »

Yeah rufwoof

The script was meant to be straightforward. Now there are option for kernel version user suffix and arch and how many kernels to build 1-3.

stemsee

#59 Post by stemsee »

SUKK = StemseeS-Unattended-Kernel-Kit

The three config files should not be edited directly! The script ubuild.sh now prompts for changes.

'-Jobs' is taken care of by script which tests for 2 or more cores.

Ignore complaints in terminal they are residue to be cleaned up only.

I might remove the config files altogether ... any views?

I might add two more kernel options, 32-nopae-smp and 64-no-IA32. And maybe 64 & 32 no-aufs, ultra-RealTime for full installs ... any opinions?

Dry Falls
Posts: 616
Joined: Tue 16 Dec 2014, 23:37
Location: Upper Columbia

no-ia32

#60 Post by Dry Falls »

I tried sukk again on k3.16.2 and changed nothing in the build64 or conf etc. The kernel which came out was lightening fast with the new modules in initrd. Everything was improved, right down to the video refresh rate. Only thing was ia32 was missing from arch/x86. Slapping it in externally is no good because the kernel and modules (builtin, etc.) have to agree. I'm back to "cannot execute 32 bit binaries". Is there something I've missed or does ia32 refer to something else altogether and I'm just another victim of synchronicity?

df

Post Reply