Tiny Core Extensions > TCE Q&A Forum
how can i use lldpctl and lldpd and lldpcli command in tincore version14
yimding:
i installed bash.tcz
then make
--- Code: ---tc@box:~/ice-1.16.3/src$ make install
common.mk:71: *** Kernel header files not in any of the expected locations.
common.mk:72: *** Install the appropriate kernel development package, e.g.
common.mk:73: *** kernel-devel, for building kernel modules and try again. Stop.
tc@box:~/ice-1.16.3/src$ tce-load -wi linux-headers-$(uname -r).tcz
Downloading: linux-headers-6.1.2-tinycore64.tcz
Connecting to repo.tinycorelinux.net (128.127.66.77:80)
wget: server returned error: HTTP/1.1 404 Not Found
md5sum: linux-headers-6.1.2-tinycore64.tcz.md5.txt: No such file or directory
Error on linux-headers-6.1.2-tinycore64.tcz
tc@box:~/ice-1.16.3/src$
--- End code ---
how can i get linux-header?
Juanito:
As said, load the compiletc extension.
After that prepare the kernel source.
Juanito:
Something like this should prepare the kernel source:
--- Code: ---tce-load -i compiletc perl5 ncursesw-dev bc glibc_apps elfutils-dev
wget http://tinycorelinux.net/14.x/x86_64/release/src/kernel/linux-6.1.2-patched.txz
wget http://tinycorelinux.net/14.x/x86_64/release/src/kernel/Module.symvers-6.1.2-tinycore64.gz
wget http://tinycorelinux.net/14.x/x86_64/release/src/kernel/config-6.1.2-tinycore64
gunzip Module.symvers-6.1.2-tinycore64.gz
tar xf linux-6.1.2-patched.txz
cd linux-6.1.2
make mrproper
cp ../config-6.1.2-tinycore64 .config
make oldconfig
make prepare
make modules_prepare
mv ../Module.symvers-6.1.2-tinycore64 Module.symvers
make SUBDIRS=scripts/mod
--- End code ---
Juanito:
Once you have the tinycore kernel source prepared, you will need to make a symlink to the source.
If, for example the prepared source is at /usr/src/linux-6.1.2, then you need:
--- Code: ---sudo ln -s /usr/src/linux-6.1.2 /lib/modules/6.1.2-tinycore64/build
--- End code ---
After loading the coreutils extension you can compile ice-1.16.3:
--- Code: ---cd ice-1.16.3/src
make
--- End code ---
However, when I try with tc-16.x, the build fails with:
--- Code: ---/usr/src/ethernet-linux-ice/src/kcompat_gnss.c:224:27: error: 'no_llseek' undeclared here (not in a function); did you mean 'noop_llseek'?
224 | .llseek = no_llseek,
| ^~~~~~~~~
--- End code ---
Rich:
Hi Juanito
A search of the kernel source for no_llseek turned up this:
--- Code: ---tc@box:~$ grep -Ris "no_llseek" Downloads/linux-6.12.11/*
Downloads/linux-6.12.11/Documentation/filesystems/porting.rst:no_llseek is gone; don't set .llseek to that - just leave it NULL instead.
Downloads/linux-6.12.11/scripts/coccinelle/api/stream_open.cocci:@ has_no_llseek @
Downloads/linux-6.12.11/scripts/coccinelle/api/stream_open.cocci:@ maybe_stream depends on (!has_llseek || has_no_llseek || has_noop_llseek) && !has_mmap && !has_copy_file_range && !has_remap_file_range && !has_read_iter && !has_write_iter && !has_splice_read && !has_splice_write @
--- End code ---
So the documentation suggests it's gone.
A search of the kernel source for noop_llseek turned up this:
--- Code: ---Downloads/linux-6.12.11/fs/read_write.c: * able to perform the seek. In this case you use noop_llseek() instead of
Downloads/linux-6.12.11/fs/read_write.c:loff_t noop_llseek(struct file *file, loff_t offset, int whence)
Downloads/linux-6.12.11/fs/read_write.c:EXPORT_SYMBOL(noop_llseek);
Downloads/linux-6.12.11/fs/cachefiles/daemon.c: .llseek = noop_llseek,
Downloads/linux-6.12.11/fs/dlm/plock.c: .llseek = noop_llseek,
Downloads/linux-6.12.11/fs/dlm/user.c: .llseek = noop_llseek,
Downloads/linux-6.12.11/fs/dlm/user.c: .llseek = noop_llseek,
Downloads/linux-6.12.11/fs/dlm/user.c: .llseek = noop_llseek,
Downloads/linux-6.12.11/fs/coda/psdev.c: .llseek = noop_llseek,
Downloads/linux-6.12.11/fs/coda/pioctl.c: .llseek = noop_llseek,
Downloads/linux-6.12.11/fs/fuse/cuse.c: .llseek = noop_llseek,
Downloads/linux-6.12.11/fs/eventpoll.c: .llseek = noop_llseek,
Downloads/linux-6.12.11/fs/btrfs/super.c: .llseek = noop_llseek,
Downloads/linux-6.12.11/fs/ecryptfs/miscdev.c: .llseek = noop_llseek,
Downloads/linux-6.12.11/fs/char_dev.c: .llseek = noop_llseek,
Downloads/linux-6.12.11/include/drm/drm_accel.h: .llseek = noop_llseek, \
Downloads/linux-6.12.11/include/drm/drm_gem_dma_helper.h: .llseek = noop_llseek,\
Downloads/linux-6.12.11/include/drm/drm_gem.h: .llseek = noop_llseek,\
Downloads/linux-6.12.11/include/linux/fs.h:extern loff_t noop_llseek(struct file *file, loff_t offset, int whence);
Downloads/linux-6.12.11/ipc/shm.c: .llseek = noop_llseek,
Downloads/linux-6.12.11/ipc/shm.c: .llseek = noop_llseek,
Downloads/linux-6.12.11/kernel/trace/blktrace.c: .llseek = noop_llseek,
Downloads/linux-6.12.11/kernel/power/qos.c: .llseek = noop_llseek,
Downloads/linux-6.12.11/kernel/gcov/fs.c: .llseek = noop_llseek,
Downloads/linux-6.12.11/net/atm/proc.c: .proc_lseek = noop_llseek,
Downloads/linux-6.12.11/net/mac80211/debugfs.c: .llseek = noop_llseek,
Downloads/linux-6.12.11/samples/kfifo/inttype-example.c: .proc_lseek = noop_llseek,
Downloads/linux-6.12.11/samples/kfifo/record-example.c: .proc_lseek = noop_llseek,
Downloads/linux-6.12.11/samples/kfifo/bytestream-example.c: .proc_lseek = noop_llseek,
Downloads/linux-6.12.11/scripts/coccinelle/api/stream_open.cocci:@ has_noop_llseek @
Downloads/linux-6.12.11/scripts/coccinelle/api/stream_open.cocci: .llseek = noop_llseek,
Downloads/linux-6.12.11/scripts/coccinelle/api/stream_open.cocci:@ maybe_stream depends on (!has_llseek || has_no_llseek || has_noop_llseek) && !has_mmap && !has_copy_file_range && !has_remap_file_range && !has_read_iter && !has_write_iter && !has_splice_read && !has_splice_write @
Downloads/linux-6.12.11/security/tomoyo/securityfs_if.c: .llseek = noop_llseek,
Downloads/linux-6.12.11/sound/sound_core.c: .llseek = noop_llseek,
Downloads/linux-6.12.11/sound/core/sound.c: .llseek = noop_llseek,
Downloads/linux-6.12.11/sound/core/timer.c: .llseek = noop_llseek,
Downloads/linux-6.12.11/sound/core/seq/oss/seq_oss.c: .llseek = noop_llseek,
Downloads/linux-6.12.11/virt/kvm/kvm_main.c: .llseek = noop_llseek,
Downloads/linux-6.12.11/virt/kvm/kvm_main.c: .llseek = noop_llseek,
Downloads/linux-6.12.11/virt/kvm/kvm_main.c: .llseek = noop_llseek,
Downloads/linux-6.12.11/virt/kvm/kvm_main.c: .llseek = noop_llseek,
Downloads/linux-6.12.11/virt/kvm/kvm_main.c: .llseek = noop_llseek,
--- End code ---
You can see noop_llseek is defined in /fs/read_write.c and used all over the place.
The list shown is not complete. I only posted about 1/4 of it.
So it looks like no_llseek should be changed to noop_llseek.
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version