General TC > Remasters / Remixes - Unofficial

[Solved] Instructions on updating TinyCore 11 to Real Time?

<< < (6/8) > >>

pditty:
Another question....

I have an x86_64 app that I built in Ubuntu 18.04 and copied to the rootfs before compressing.  I can see the executable in TC but when I try to run it I get...

sh: ./test: not found

On ubuntu this is what the file looks like....

$file test
test: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 3.2.0, BuildID[sha1]=d42cc427dd007288259a8ece5ae803633471a8a2, with debug_info, not stripped


Rich:
Hi pditty
Based on your reply #24 you are running 32 bit. You can't run a 64 bit app on a 32 bit system.

If you are actually running a 64 bit system, maybe the app isn't marked as being executable:

--- Code: ---chmod 775 app
--- End code ---

xor:
As a TCL-RT project, are you considering adding it to official distributions!?

In terms of performance, it should not be forgotten that there are many low system users.

pditty:
Rich,  I converted my instructions to use 64-bit and my app still doesn't run.  It's almost like it doesn't exist.

I get this if I try to run it even though it's there (NOTE: App was built in Ubuntu as well).
tc@box:/home$ ./test
sh: ./test: not found



Here are the 64-bit instructions (directory structure mentioned in post #24 is still the same).

############################ Create the Image directory #########################
->cd image
->sudo ./tinycore-extract.sh <image iso name OR TinyCorePure64-current.iso by default>
->cd iso/boot
->sudo rm corepure64.gz vmlinuz64
->cd ../../../

############################  Compile The Kernel#####################################
### Only install these if you don't have them already
->sudo apt-get install zsync -y
->sudo apt-get install squashfs-tools
->sudo apt-get install -y xorriso

### Get the patched Tinycore kernel and Real time patch
->wget http://tinycorelinux.net/11.x/x86_64/release/src/kernel/config-5.4.3-tinycore64
->wget http://tinycorelinux.net/11.x/x86_64/release/src/kernel/linux-5.4.3-patched.txz
->wget https://mirrors.edge.kernel.org/pub/linux/kernel/projects/rt/5.4/older/patch-5.4.3-rt1.patch.xz
->tar xf linux-5.4.3-patched.txz
->cd  linux-5.4.3

###Clean the Kernel, just in case
->make mrproper

###Patch the Kerenl with the Real time extension
->xzcat ../patch-5.4.3-rt1.patch.xz | patch -p1

### Start with the most recent config file.
->cp ../config-5.4.3-tinycore64 .config

### Merge the old .config with the real time patch features
->make oldconfig

#### Enter #4 for FULLY PREEMPT, everything else is default

### OPTIONAL: Make your changes to the kernel
->make menuconfig

### OPTIONAL: Save Kernel Config as a starting point for next time.
->cp .config ../config-5.4.3-tinycore64RT-rev1

### Compile the kernel
->make -j 2 bzImage

### Copy the kernel where the bootloader can find it in the image directory
->sudo cp arch/x86_64/boot/bzImage ../image/iso/boot/vmlinuz64

### Compile modules
->make -j 2 modules

### Place the modules in a temporary directory
->make INSTALL_MOD_PATH=../modules/usr/local modules_install
->cd ../

### OPTIONAL: Backup modules.alias, modules.builtin, modules.dep, modules.order, and modules.symbols files just in case
->mv modules/usr/local/lib/modules/5.4.3-rt1-tinycore64/modules.* backup/

### Remove the 2 uneccessary symlinks in modules/usr/local/lib/modules/5.4.3-rt1-tinycore
->rm modules/usr/local/lib/modules/5.4.3-rt1-tinycore64/build
->rm modules/usr/local/lib/modules/5.4.3-rt1-tinycore64/source


######################### Set up sorter.sh to package all the modules.  ###############################
->cd sorter/sorter-master

### Create the Tinycore module packages and leave them in the current directory.
->sudo ./sorter.sh 5.4.3-rt1-tinycore64 ../../modules

### Back to the working directory.
->cd ../../

### Fetch a 64 bit root file system.
->wget http://tinycorelinux.net/11.x/x86_64/release/distribution_files/rootfs64.gz

####################### OPTIONAL: If you need to add something to the rootfs #########################
->mkdir initrd
->cp rootfs64.gz initrd
->zcat rootfs64.gz | sudo cpio -i
->sudo rm rootfs64.gz

### CP files to the directory and change permissions if needed
->sudo cp ../../mw_test/mw_test ../../mw_test/tmw_daemon home
->sudo chmod 777 home/mw_test home/tmw_daemon

### Zip up the rootfs again.
->sudo rm ../rootfs64.gz
->sudo find . | sudo cpio -o -H newc | gzip > ../rootfs64.gz
######################################################################################################

### Copy the module archive to the working directory
->cp sorter/sorter-master/modules64.gz modules64_RT.gz

### Make a new initrd
->cat rootfs64.gz modules64_RT.gz > core64RT.gz

### Copy the initrd where the bootloader can find it.
->cp core64RT.gz image/iso/boot/corepure64.gz

######################## Build the ISO ##############################################################
->cd image
->sudo chmod 755 iso

### isolinux.cfg hasn't changed we are still using core.gz and vmlinuz as rootfs and kernel
->xorriso -as mkisofs -iso-level 3 -full-iso9660-filenames -volid tinycoreRT \
        -eltorito-boot boot/isolinux/isolinux.bin -boot-load-size 4 \
        -eltorito-catalog boot/isolinux/boot.cat -boot-info-table \
        -no-emul-boot -output <tinycore iso name> iso
       
### DONE! Boot .iso file



pditty:
XOR, I hadn't considered it, what would be involved?


--- Quote from: xor on April 22, 2020, 05:48:24 AM ---As a TCL-RT project, are you considering adding it to official distributions!?

In terms of performance, it should not be forgotten that there are many low system users.

--- End quote ---

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version