Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Realtime Kernel build instructions not working on ubuntu 20.04. PLease help #618

Open
stevensu1838 opened this issue Feb 22, 2023 · 2 comments

Comments

@stevensu1838
Copy link

Summary

My first question is I know if it recommended to install Realtime Kernel. But can I skip it if I can successfully control the UR5e robot with this driver? Installing the Realtime Kernel is hard for Linux beginners. Can you experts please help?

Introduction to the issue

Versions

  • ROS Driver version: noetic
  • Affected Robot Software Version(s): URSoftware 5.12.2.1101534
  • Affected Robot Hardware Version(s): UR5e
  • Robot Serial Number: 20225501705
  • UR+ product(s) installed:
  • URCaps Software version(s): 1.0.5

Impact

I simply want to follow the real-time setup guide given in the Universal_Robots_ROS_Driver read me document to prepare for the driver installation

Issue details

This part is important in order to clarify the severity of the issue.

Use Case and Setup

What does the setup look like and what are the objectives?

Project status at point of discovered

When did you first observe the issue?

  • Before I started?
  • In first couple of tries?
  • In normal use?
  • etc...

Steps to Reproduce

My existing kernel version is 5.15. So I've been trying to install the 5.15.94 version. I actually followed exactly the real-time setup guide and one only thing I did is to replace the number 4.14.139 in the guide to 5.15.94. I sincerely hope you experts can help me solve this issue which will benefit other users a lot, too. The exactly command lines I used was shown below:

mech1936:$ uname -r
5.15.0-53-generic
mech1936:
$ mkdir -p ${HOME}/rt_kernel_build
mech1936:$ cd ${HOME}/rt_kernel_build
mech1936:
/rt_kernel_build$ wget https://cdn.kernel.org/pub/linux/kernel/projects/rt/5.15/patch-5.15.94-rt59.patch.xz
mech1936:/rt_kernel_build$ wget https://cdn.kernel.org/pub/linux/kernel/projects/rt/5.15/patch-5.15.94-rt59.patch.sign
mech1936:
/rt_kernel_build$ wget https://www.kernel.org/pub/linux/kernel/v5.x/linux-5.15.94.tar.xz
mech1936:~/rt_kernel_build$ wget https://www.kernel.org/pub/linux/kernel/v5.x/linux-5.15.94.tar.sign

mech1936:~/rt_kernel_build$ ls
linux-5.15.94.tar.sign patch-5.15.94-rt59.patch.sign
linux-5.15.94.tar.xz patch-5.15.94-rt59.patch.xz

To unzip the downloaded files do
$ xz -dk patch-5.15.94-rt59.patch.xz
$ xz -d linux-5.15.94.tar.xz

Compilation

$ tar xf linux-5.15.94.tar
$ cd linux-5.15.94
linux-5.15.94$ xzcat ../patch-5.15.94-rt59.patch.xz | patch -p1

Preemption Model

  1. No Forced Preemption (Server) (PREEMPT_NONE)
  1. Voluntary Kernel Preemption (Desktop) (PREEMPT_VOLUNTARY)
  1. Preemptible Kernel (Low-Latency Desktop) (PREEMPT)
  2. Fully Preemptible Kernel (Real-Time) (PREEMPT_RT) (NEW)
    choice[1-4?]: 4

mech1936:~/rt_kernel_build/linux-5.15.94$ make -j getconf _NPROCESSORS_ONLN deb-pkg`

Expected Behavior

I expect no errors and successful installation

Actual Behavior

It throws the following errors:
mech1936:~/rt_kernel_build/linux-5.15.94$ make -j getconf _NPROCESSORS_ONLN deb-pkg
UPD include/config/kernel.release
make clean
sh ./scripts/package/mkdebian
TAR linux-upstream.tar.gz
origversion=$(dpkg-parsechangelog -SVersion |sed 's/-[^-]*$//');
mv linux-upstream.tar.gz ../linux-upstream_${origversion}.orig.tar.gz
dpkg-buildpackage -r"fakeroot -u" -a$(cat debian/arch) -i.git -us -uc
dpkg-buildpackage: info: source package linux-upstream
dpkg-buildpackage: info: source version 5.15.94-rt59-1
dpkg-buildpackage: info: source distribution focal
dpkg-buildpackage: info: source changed by ysu66 ysu66@mech1936
dpkg-buildpackage: info: host architecture amd64
dpkg-source -i.git --before-build .
debian/rules clean
rm -rf debian/*tmp debian/files
make clean
dpkg-source -i.git -b .
dpkg-source: info: using source format '1.0'
dpkg-source: warning: source directory 'linux-5.15.94' is not - 'linux-upstream-5.15.94-rt59'
dpkg-source: warning: .orig directory name linux-5.15.94.orig is not - (wanted linux-upstream-5.15.94-rt59.orig)
dpkg-source: info: building linux-upstream using existing linux-upstream_5.15.94-rt59.orig.tar.gz
dpkg-source: info: building linux-upstream in linux-upstream_5.15.94-rt59-1.diff.gz
dpkg-source: warning: ignoring deletion of file .scmversion
dpkg-source: warning: the diff modifies the following upstream files:
.clang-format
.cocciconfig
.get_maintainer.ignore
.mailmap
CREDITS
MAINTAINERS
README
dpkg-source: info: use the '3.0 (quilt)' format to have separate and documented changes to upstream files, see dpkg-source(1)
dpkg-source: info: building linux-upstream in linux-upstream_5.15.94-rt59-1.dsc
dpkg-source: warning: missing information for output field Standards-Version
debian/rules binary
make KERNELRELEASE=5.15.94-rt59 ARCH=x86 KBUILD_BUILD_VERSION=1 -f ./Makefile
WRAP arch/x86/include/generated/uapi/asm/bpf_perf_event.h
WRAP arch/x86/include/generated/uapi/asm/errno.h
HOSTCC scripts/basic/fixdep
UPD include/generated/uapi/linux/version.h
SYSHDR arch/x86/include/generated/uapi/asm/unistd_32.h
WRAP arch/x86/include/generated/uapi/asm/ioctl.h
WRAP arch/x86/include/generated/uapi/asm/fcntl.h
WRAP arch/x86/include/generated/uapi/asm/ioctls.h
WRAP arch/x86/include/generated/uapi/asm/ipcbuf.h
WRAP arch/x86/include/generated/uapi/asm/param.h
WRAP arch/x86/include/generated/uapi/asm/resource.h
WRAP arch/x86/include/generated/uapi/asm/poll.h
WRAP arch/x86/include/generated/uapi/asm/socket.h
WRAP arch/x86/include/generated/uapi/asm/termbits.h
WRAP arch/x86/include/generated/uapi/asm/sockios.h
WRAP arch/x86/include/generated/uapi/asm/termios.h
SYSHDR arch/x86/include/generated/uapi/asm/unistd_x32.h
WRAP arch/x86/include/generated/uapi/asm/types.h
SYSHDR arch/x86/include/generated/uapi/asm/unistd_64.h
SYSHDR arch/x86/include/generated/asm/unistd_32_ia32.h
DESCEND objtool
SYSHDR arch/x86/include/generated/asm/unistd_64_x32.h
SYSTBL arch/x86/include/generated/asm/syscalls_32.h
WRAP arch/x86/include/generated/asm/early_ioremap.h
SYSTBL arch/x86/include/generated/asm/syscalls_64.h
WRAP arch/x86/include/generated/asm/export.h
SYSTBL arch/x86/include/generated/asm/syscalls_x32.h
DESCEND bpf/resolve_btfids
HYPERCALLS arch/x86/include/generated/asm/xen-hypercalls.h
WRAP arch/x86/include/generated/asm/mcs_spinlock.h
WRAP arch/x86/include/generated/asm/irq_regs.h
UPD include/generated/utsrelease.h
WRAP arch/x86/include/generated/asm/local64.h
WRAP arch/x86/include/generated/asm/kmap_size.h
WRAP arch/x86/include/generated/asm/mmiowb.h
WRAP arch/x86/include/generated/asm/module.lds.h
WRAP arch/x86/include/generated/asm/rwonce.h
WRAP arch/x86/include/generated/asm/unaligned.h
MKDIR /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids//libbpf
MKDIR /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids//libsubcmd
HOSTCC /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids/fixdep.o
:1:10: fatal error: libelf.h: No such file or directory
compilation terminated.
GEN /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids/libbpf/bpf_helper_defs.h
HOSTCC /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/fixdep.o
HOSTCC arch/x86/tools/relocs_32.o
HOSTCC arch/x86/tools/relocs_64.o
HOSTCC arch/x86/tools/relocs_common.o
MKDIR /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids/libbpf/staticobjs/
MKDIR /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids/libbpf/staticobjs/
CC /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids/libbpf/staticobjs/libbpf.o
CC /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids/libbpf/staticobjs/nlattr.o
CC /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids/libbpf/staticobjs/bpf.o
HOSTLD /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids/fixdep-in.o
CC /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids/libbpf/staticobjs/btf.o
CC /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids/libbpf/staticobjs/libbpf_errno.o
CC /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids/libbpf/staticobjs/str_error.o
LINK /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids/fixdep
HOSTCC scripts/genksyms/genksyms.o
HOSTLD /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/fixdep-in.o
LINK /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/fixdep
btf.c:18:10: fatal error: gelf.h: No such file or directory
18 | #include <gelf.h>
| ^~~~~~~~
compilation terminated.
make[7]: *** [/home/ysu66/rt_kernel_build/linux-5.15.94/tools/build/Makefile.build:97: /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids/libbpf/staticobjs/btf.o] Error 1
make[7]: *** Waiting for unfinished jobs....
YACC scripts/genksyms/parse.tab.[ch]
HOSTCC scripts/kallsyms
libbpf.c:47:10: fatal error: libelf.h: No such file or directory
47 | #include <libelf.h>
| ^~~~~~~~~~
compilation terminated.
HOSTCC scripts/bin2c
make[7]: *** [/home/ysu66/rt_kernel_build/linux-5.15.94/tools/build/Makefile.build:96: /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids/libbpf/staticobjs/libbpf.o] Error 1
HOSTCC scripts/selinux/genheaders/genheaders
LEX scripts/genksyms/lex.lex.c
CC /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/arch/x86/special.o
In file included from /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/include/objtool/objtool.h:13,
from /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/include/objtool/arch.h:11,
from /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/include/objtool/check.h:11,
from /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/include/objtool/special.h:10,
from arch/x86/special.c:4:
/home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/include/objtool/elf.h:10:10: fatal error: gelf.h: No such file or directory
10 | #include <gelf.h>
| ^~~~~~~~
compilation terminated.
make[7]: *** [/home/ysu66/rt_kernel_build/linux-5.15.94/tools/build/Makefile.build:97: /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/arch/x86/special.o] Error 1
make[7]: *** Waiting for unfinished jobs....
MKDIR /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/arch/x86/lib/
CC /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/weak.o
GEN /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/arch/x86/lib/inat-tables.c
CC /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/check.o
CC /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/special.o
In file included from /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/include/objtool/objtool.h:13,
from weak.c:10:
/home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/include/objtool/elf.h:10:10: fatal error: gelf.h: No such file or directory
10 | #include <gelf.h>
| ^~~~~~~~
compilation terminated.
make[6]: *** [/home/ysu66/rt_kernel_build/linux-5.15.94/tools/build/Makefile.build:97: /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/weak.o] Error 1
make[6]: *** Waiting for unfinished jobs....
make[6]: *** [/home/ysu66/rt_kernel_build/linux-5.15.94/tools/build/Makefile.build:139: arch/x86] Error 2
HOSTCC scripts/sorttable
CC /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/exec-cmd.o
In file included from /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/include/objtool/objtool.h:13,
from /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/include/objtool/arch.h:11,
from /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/include/objtool/check.h:11,
from /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/include/objtool/special.h:10,
from special.c:16:
/home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/include/objtool/elf.h:10:10: fatal error: gelf.h: No such file or directory
10 | #include <gelf.h>
| ^~~~~~~~
compilation terminated.
HOSTCC scripts/selinux/mdp/mdp
In file included from /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/include/objtool/objtool.h:13,
from /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/include/objtool/arch.h:11,
from check.c:14:
/home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/include/objtool/elf.h:10:10: fatal error: gelf.h: No such file or directory
10 | #include <gelf.h>
| ^~~~~~~~
compilation terminated.
make[6]: *** [/home/ysu66/rt_kernel_build/linux-5.15.94/tools/build/Makefile.build:97: /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/check.o] Error 1
CC /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/help.o
make[6]: *** [/home/ysu66/rt_kernel_build/linux-5.15.94/tools/build/Makefile.build:97: /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/special.o] Error 1
make[5]: *** [Makefile:56: /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/objtool-in.o] Error 2
make[5]: *** Waiting for unfinished jobs....
CC /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/pager.o
CC /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/parse-options.o
CC /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids/libsubcmd/exec-cmd.o
HOSTLD arch/x86/tools/relocs
CC /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/run-command.o
CC /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids/libsubcmd/help.o
CC /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/sigchain.o
CC /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/subcmd-config.o
HOSTCC scripts/genksyms/parse.tab.o
CC /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids/libsubcmd/pager.o
HOSTCC scripts/asn1_compiler
CC /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids/libsubcmd/parse-options.o
CC /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids/main.o
HOSTCC scripts/sign-file
CC /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids/rbtree.o
CC /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids/libsubcmd/run-command.o
CC /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids/zalloc.o
main.c:55:10: fatal error: libelf.h: No such file or directory
55 | #include <libelf.h>
| ^~~~~~~~~~
compilation terminated.
make[6]: *** [/home/ysu66/rt_kernel_build/linux-5.15.94/tools/build/Makefile.build:97: /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids/main.o] Error 1
make[6]: *** Waiting for unfinished jobs....
CC /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids/libsubcmd/sigchain.o
CC /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids/libsubcmd/subcmd-config.o
HOSTCC scripts/genksyms/lex.lex.o
make[6]: *** [Makefile:158: /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids/libbpf/staticobjs/libbpf-in.o] Error 2
make[5]: *** [Makefile:48: /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids//libbpf/libbpf.a] Error 2
make[5]: *** Waiting for unfinished jobs....
HOSTCC scripts/extract-cert
HOSTCC scripts/insert-sys-cert
make[5]: *** [Makefile:62: /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids//resolve_btfids-in.o] Error 2
LD /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/libsubcmd-in.o
AR /home/ysu66/rt_kernel_build/linux-5.15.94/tools/objtool/libsubcmd.a
make[4]: *** [Makefile:69: objtool] Error 2
make[3]: *** [Makefile:1406: tools/objtool] Error 2
make[3]: *** Waiting for unfinished jobs....
LD /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids/libsubcmd/libsubcmd-in.o
AR /home/ysu66/rt_kernel_build/linux-5.15.94/tools/bpf/resolve_btfids/libsubcmd/libsubcmd.a
make[4]: *** [Makefile:72: bpf/resolve_btfids] Error 2
make[3]: *** [Makefile:1406: tools/bpf/resolve_btfids] Error 2
HOSTLD scripts/genksyms/genksyms
make[2]: *** [debian/rules:7: build-arch] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
make[1]: *** [scripts/Makefile.package:77: deb-pkg] Error 2
make: *** [Makefile:1611: deb-pkg] Error 2

@xiaomengfang
Copy link

Hi, @stevensu1838 , I met the same issue, have you solved it? Could you please share your solution?

@shuobh
Copy link

shuobh commented Jun 21, 2023

You would need to install some additional libraries manually using sudo apt get.
From my log history, I've installed dwarves zstd flex bison libelf-dev libncurses-dev libssl-dev resolvconf. Most of the time you have to do a full cleanup and rebuild from scratch.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants