LiteBSD
LiteBSD copied to clipboard
Problems compiling on Ubuntu 20.04
I'm trying to compile the LiteBSD kernel on Ubuntu 20.04 x86_64 architecture and I'm having trouble completing it. I am following the explanations provided by the Wiki at this link: https://github.com/sergev/LiteBSD/wiki/Build. I installed all the necessary tools and set the variables as required. Furthermore, it removes the -Werror flag from the compiler as reported in this issue link: https://github.com/sergev/LiteBSD/issues/71
My console output is this:
:/mnt/d/Development/LiteBSD$ bmake kernel
bmake -Csys/compile all
bmake -C../../usr.sbin/config
gcc -c config.c
config.y: In function ‘checksystemspec’:
config.y:1003:21: warning: implicit declaration of function ‘minor’ [-Wimplicit-function-declaration]
1003 | if (minor(dev) & 07) {
| ^~~~~
config.y:1010:20: warning: implicit declaration of function ‘makedev’ [-Wimplicit-function-declaration]
1010 | makedev(major(dev), (minor(dev) &~ 07) | ('b' - 'a' + 1));
| ^~~~~~~
config.y:1010:28: warning: implicit declaration of function ‘major’ [-Wimplicit-function-declaration]
1010 | makedev(major(dev), (minor(dev) &~ 07) | ('b' - 'a' + 1));
| ^~~~~
gcc -c main.c
flex lang.l
mv lex.yy.c lang.c
gcc -c lang.c
gcc -c mkioconf.c
gcc -c mkmakefile.c
gcc -c mkglue.c
gcc -c mkheaders.c
gcc -c mkswapconf.c
mkswapconf.c: In function ‘do_swap’:
mkswapconf.c:90:17: warning: implicit declaration of function ‘major’ [-Wimplicit-function-declaration]
90 | major(fl->f_rootdev), minor(fl->f_rootdev));
| ^~~~~
mkswapconf.c:90:39: warning: implicit declaration of function ‘minor’ [-Wimplicit-function-declaration]
90 | major(fl->f_rootdev), minor(fl->f_rootdev));
| ^~~~~
mkswapconf.c: In function ‘nametodev’:
mkswapconf.c:190:17: warning: implicit declaration of function ‘makedev’ [-Wimplicit-function-declaration]
190 | return (makedev(dp->dev_major, (unit << 3) + (partition - 'a' + 1)));
| ^~~~~~~
gcc -o config config.o main.o lang.o mkioconf.o mkmakefile.o mkglue.o mkheaders.o mkswapconf.o -ll
/usr/bin/ld: main.o:(.bss+0x0): multiple definition of machine'; config.o:(.bss+0x0): first defined here /usr/bin/ld: main.o:(.bss+0x8): multiple definition of
machinename'; config.o:(.bss+0x8): first defined here
/usr/bin/ld: main.o:(.bss+0x10): multiple definition of cputype'; config.o:(.bss+0x10): first defined here /usr/bin/ld: main.o:(.bss+0x18): multiple definition of
opt'; config.o:(.bss+0x18): first defined here
/usr/bin/ld: main.o:(.bss+0x20): multiple definition of mkopt'; config.o:(.bss+0x20): first defined here /usr/bin/ld: main.o:(.bss+0x28): multiple definition of
siglist'; config.o:(.bss+0x28): first defined here
/usr/bin/ld: main.o:(.bss+0x30): multiple definition of ident'; config.o:(.bss+0x30): first defined here /usr/bin/ld: main.o:(.bss+0x38): multiple definition of
ldscript'; config.o:(.bss+0x38): first defined here
/usr/bin/ld: main.o:(.bss+0x40): multiple definition of do_trace'; config.o:(.bss+0x40): first defined here /usr/bin/ld: main.o:(.bss+0x44): multiple definition of
seen_mba'; config.o:(.bss+0x44): first defined here
/usr/bin/ld: main.o:(.bss+0x48): multiple definition of seen_uba'; config.o:(.bss+0x48): first defined here /usr/bin/ld: main.o:(.bss+0x4c): multiple definition of
seen_vba'; config.o:(.bss+0x4c): first defined here
/usr/bin/ld: main.o:(.bss+0x50): multiple definition of seen_isa'; config.o:(.bss+0x50): first defined here /usr/bin/ld: main.o:(.bss+0x54): multiple definition of
seen_cd'; config.o:(.bss+0x54): first defined here
/usr/bin/ld: main.o:(.bss+0x58): multiple definition of dtab'; config.o:(.bss+0x58): first defined here /usr/bin/ld: main.o:(.bss+0x60): multiple definition of
errbuf'; config.o:(.bss+0x60): first defined here
/usr/bin/ld: main.o:(.bss+0xb0): multiple definition of yyline'; config.o:(.bss+0xb0): first defined here /usr/bin/ld: main.o:(.bss+0xb8): multiple definition of
ftab'; config.o:(.bss+0xb8): first defined here
/usr/bin/ld: main.o:(.bss+0xc0): multiple definition of conf_list'; config.o:(.bss+0xc0): first defined here /usr/bin/ld: main.o:(.bss+0xc8): multiple definition of
confp'; config.o:(.bss+0xc8): first defined here
/usr/bin/ld: main.o:(.bss+0xd0): multiple definition of comp_list'; config.o:(.bss+0xd0): first defined here /usr/bin/ld: main.o:(.bss+0xd8): multiple definition of
compp'; config.o:(.bss+0xd8): first defined here
/usr/bin/ld: main.o:(.bss+0xe0): multiple definition of zone'; config.o:(.bss+0xe0): first defined here /usr/bin/ld: main.o:(.bss+0xe4): multiple definition of
hadtz'; config.o:(.bss+0xe4): first defined here
/usr/bin/ld: main.o:(.bss+0xe8): multiple definition of dst'; config.o:(.bss+0xe8): first defined here /usr/bin/ld: main.o:(.bss+0xec): multiple definition of
hz'; config.o:(.bss+0xec): first defined here
/usr/bin/ld: main.o:(.bss+0xf0): multiple definition of profiling'; config.o:(.bss+0xf0): first defined here /usr/bin/ld: main.o:(.bss+0xf4): multiple definition of
debugging'; config.o:(.bss+0xf4): first defined here
/usr/bin/ld: main.o:(.bss+0xf8): multiple definition of maxusers'; config.o:(.bss+0xf8): first defined here /usr/bin/ld: lang.o:(.bss+0x28): multiple definition of
machine'; config.o:(.bss+0x0): first defined here
/usr/bin/ld: lang.o:(.bss+0x30): multiple definition of machinename'; config.o:(.bss+0x8): first defined here /usr/bin/ld: lang.o:(.bss+0x38): multiple definition of
cputype'; config.o:(.bss+0x10): first defined here
/usr/bin/ld: lang.o:(.bss+0x40): multiple definition of opt'; config.o:(.bss+0x18): first defined here /usr/bin/ld: lang.o:(.bss+0x48): multiple definition of
mkopt'; config.o:(.bss+0x20): first defined here
/usr/bin/ld: lang.o:(.bss+0x50): multiple definition of siglist'; config.o:(.bss+0x28): first defined here /usr/bin/ld: lang.o:(.bss+0x58): multiple definition of
ident'; config.o:(.bss+0x30): first defined here
/usr/bin/ld: lang.o:(.bss+0x60): multiple definition of ldscript'; config.o:(.bss+0x38): first defined here /usr/bin/ld: lang.o:(.bss+0x68): multiple definition of
do_trace'; config.o:(.bss+0x40): first defined here
/usr/bin/ld: lang.o:(.bss+0x6c): multiple definition of seen_mba'; config.o:(.bss+0x44): first defined here /usr/bin/ld: lang.o:(.bss+0x70): multiple definition of
seen_uba'; config.o:(.bss+0x48): first defined here
/usr/bin/ld: lang.o:(.bss+0x74): multiple definition of seen_vba'; config.o:(.bss+0x4c): first defined here /usr/bin/ld: lang.o:(.bss+0x78): multiple definition of
seen_isa'; config.o:(.bss+0x50): first defined here
/usr/bin/ld: lang.o:(.bss+0x7c): multiple definition of seen_cd'; config.o:(.bss+0x54): first defined here /usr/bin/ld: lang.o:(.bss+0x80): multiple definition of
dtab'; config.o:(.bss+0x58): first defined here
/usr/bin/ld: lang.o:(.bss+0xa0): multiple definition of errbuf'; config.o:(.bss+0x60): first defined here /usr/bin/ld: lang.o:(.bss+0xf0): multiple definition of
yyline'; config.o:(.bss+0xb0): first defined here
/usr/bin/ld: lang.o:(.bss+0xf8): multiple definition of ftab'; config.o:(.bss+0xb8): first defined here /usr/bin/ld: lang.o:(.bss+0x100): multiple definition of
conf_list'; config.o:(.bss+0xc0): first defined here
/usr/bin/ld: lang.o:(.bss+0x108): multiple definition of confp'; config.o:(.bss+0xc8): first defined here /usr/bin/ld: lang.o:(.bss+0x110): multiple definition of
comp_list'; config.o:(.bss+0xd0): first defined here
/usr/bin/ld: lang.o:(.bss+0x118): multiple definition of compp'; config.o:(.bss+0xd8): first defined here /usr/bin/ld: lang.o:(.bss+0x120): multiple definition of
zone'; config.o:(.bss+0xe0): first defined here
/usr/bin/ld: lang.o:(.bss+0x124): multiple definition of hadtz'; config.o:(.bss+0xe4): first defined here /usr/bin/ld: lang.o:(.bss+0x128): multiple definition of
dst'; config.o:(.bss+0xe8): first defined here
/usr/bin/ld: lang.o:(.bss+0x12c): multiple definition of hz'; config.o:(.bss+0xec): first defined here /usr/bin/ld: lang.o:(.bss+0x130): multiple definition of
profiling'; config.o:(.bss+0xf0): first defined here
/usr/bin/ld: lang.o:(.bss+0x134): multiple definition of debugging'; config.o:(.bss+0xf4): first defined here /usr/bin/ld: lang.o:(.bss+0x138): multiple definition of
maxusers'; config.o:(.bss+0xf8): first defined here
/usr/bin/ld: mkioconf.o:(.bss+0x0): multiple definition of machine'; config.o:(.bss+0x0): first defined here /usr/bin/ld: mkioconf.o:(.bss+0x8): multiple definition of
machinename'; config.o:(.bss+0x8): first defined here
/usr/bin/ld: mkioconf.o:(.bss+0x10): multiple definition of cputype'; config.o:(.bss+0x10): first defined here /usr/bin/ld: mkioconf.o:(.bss+0x18): multiple definition of
opt'; config.o:(.bss+0x18): first defined here
/usr/bin/ld: mkioconf.o:(.bss+0x20): multiple definition of mkopt'; config.o:(.bss+0x20): first defined here /usr/bin/ld: mkioconf.o:(.bss+0x28): multiple definition of
siglist'; config.o:(.bss+0x28): first defined here
/usr/bin/ld: mkioconf.o:(.bss+0x30): multiple definition of ident'; config.o:(.bss+0x30): first defined here /usr/bin/ld: mkioconf.o:(.bss+0x38): multiple definition of
ldscript'; config.o:(.bss+0x38): first defined here
/usr/bin/ld: mkioconf.o:(.bss+0x40): multiple definition of do_trace'; config.o:(.bss+0x40): first defined here /usr/bin/ld: mkioconf.o:(.bss+0x44): multiple definition of
seen_mba'; config.o:(.bss+0x44): first defined here
/usr/bin/ld: mkioconf.o:(.bss+0x48): multiple definition of seen_uba'; config.o:(.bss+0x48): first defined here /usr/bin/ld: mkioconf.o:(.bss+0x4c): multiple definition of
seen_vba'; config.o:(.bss+0x4c): first defined here
/usr/bin/ld: mkioconf.o:(.bss+0x50): multiple definition of seen_isa'; config.o:(.bss+0x50): first defined here /usr/bin/ld: mkioconf.o:(.bss+0x54): multiple definition of
seen_cd'; config.o:(.bss+0x54): first defined here
/usr/bin/ld: mkioconf.o:(.bss+0x58): multiple definition of dtab'; config.o:(.bss+0x58): first defined here /usr/bin/ld: mkioconf.o:(.bss+0x60): multiple definition of
errbuf'; config.o:(.bss+0x60): first defined here
/usr/bin/ld: mkioconf.o:(.bss+0xb0): multiple definition of yyline'; config.o:(.bss+0xb0): first defined here /usr/bin/ld: mkioconf.o:(.bss+0xb8): multiple definition of
ftab'; config.o:(.bss+0xb8): first defined here
/usr/bin/ld: mkioconf.o:(.bss+0xc0): multiple definition of conf_list'; config.o:(.bss+0xc0): first defined here /usr/bin/ld: mkioconf.o:(.bss+0xc8): multiple definition of
confp'; config.o:(.bss+0xc8): first defined here
/usr/bin/ld: mkioconf.o:(.bss+0xd0): multiple definition of comp_list'; config.o:(.bss+0xd0): first defined here /usr/bin/ld: mkioconf.o:(.bss+0xd8): multiple definition of
compp'; config.o:(.bss+0xd8): first defined here
/usr/bin/ld: mkioconf.o:(.bss+0xe0): multiple definition of zone'; config.o:(.bss+0xe0): first defined here /usr/bin/ld: mkioconf.o:(.bss+0xe4): multiple definition of
hadtz'; config.o:(.bss+0xe4): first defined here
/usr/bin/ld: mkioconf.o:(.bss+0xe8): multiple definition of dst'; config.o:(.bss+0xe8): first defined here /usr/bin/ld: mkioconf.o:(.bss+0xec): multiple definition of
hz'; config.o:(.bss+0xec): first defined here
/usr/bin/ld: mkioconf.o:(.bss+0xf0): multiple definition of profiling'; config.o:(.bss+0xf0): first defined here /usr/bin/ld: mkioconf.o:(.bss+0xf4): multiple definition of
debugging'; config.o:(.bss+0xf4): first defined here
/usr/bin/ld: mkioconf.o:(.bss+0xf8): multiple definition of maxusers'; config.o:(.bss+0xf8): first defined here /usr/bin/ld: mkmakefile.o:(.bss+0x0): multiple definition of
machine'; config.o:(.bss+0x0): first defined here
/usr/bin/ld: mkmakefile.o:(.bss+0x8): multiple definition of machinename'; config.o:(.bss+0x8): first defined here /usr/bin/ld: mkmakefile.o:(.bss+0x10): multiple definition of
cputype'; config.o:(.bss+0x10): first defined here
/usr/bin/ld: mkmakefile.o:(.bss+0x18): multiple definition of opt'; config.o:(.bss+0x18): first defined here /usr/bin/ld: mkmakefile.o:(.bss+0x20): multiple definition of
mkopt'; config.o:(.bss+0x20): first defined here
/usr/bin/ld: mkmakefile.o:(.bss+0x28): multiple definition of siglist'; config.o:(.bss+0x28): first defined here /usr/bin/ld: mkmakefile.o:(.bss+0x30): multiple definition of
ident'; config.o:(.bss+0x30): first defined here
/usr/bin/ld: mkmakefile.o:(.bss+0x38): multiple definition of ldscript'; config.o:(.bss+0x38): first defined here /usr/bin/ld: mkmakefile.o:(.bss+0x40): multiple definition of
do_trace'; config.o:(.bss+0x40): first defined here
/usr/bin/ld: mkmakefile.o:(.bss+0x44): multiple definition of seen_mba'; config.o:(.bss+0x44): first defined here /usr/bin/ld: mkmakefile.o:(.bss+0x48): multiple definition of
seen_uba'; config.o:(.bss+0x48): first defined here
/usr/bin/ld: mkmakefile.o:(.bss+0x4c): multiple definition of seen_vba'; config.o:(.bss+0x4c): first defined here /usr/bin/ld: mkmakefile.o:(.bss+0x50): multiple definition of
seen_isa'; config.o:(.bss+0x50): first defined here
/usr/bin/ld: mkmakefile.o:(.bss+0x54): multiple definition of seen_cd'; config.o:(.bss+0x54): first defined here /usr/bin/ld: mkmakefile.o:(.bss+0x58): multiple definition of
dtab'; config.o:(.bss+0x58): first defined here
/usr/bin/ld: mkmakefile.o:(.bss+0x60): multiple definition of errbuf'; config.o:(.bss+0x60): first defined here /usr/bin/ld: mkmakefile.o:(.bss+0xb0): multiple definition of
yyline'; config.o:(.bss+0xb0): first defined here
/usr/bin/ld: mkmakefile.o:(.bss+0xb8): multiple definition of ftab'; config.o:(.bss+0xb8): first defined here /usr/bin/ld: mkmakefile.o:(.bss+0xc0): multiple definition of
conf_list'; config.o:(.bss+0xc0): first defined here
/usr/bin/ld: mkmakefile.o:(.bss+0xc8): multiple definition of confp'; config.o:(.bss+0xc8): first defined here /usr/bin/ld: mkmakefile.o:(.bss+0xd0): multiple definition of
comp_list'; config.o:(.bss+0xd0): first defined here
/usr/bin/ld: mkmakefile.o:(.bss+0xd8): multiple definition of compp'; config.o:(.bss+0xd8): first defined here /usr/bin/ld: mkmakefile.o:(.bss+0xe0): multiple definition of
zone'; config.o:(.bss+0xe0): first defined here
/usr/bin/ld: mkmakefile.o:(.bss+0xe4): multiple definition of hadtz'; config.o:(.bss+0xe4): first defined here /usr/bin/ld: mkmakefile.o:(.bss+0xe8): multiple definition of
dst'; config.o:(.bss+0xe8): first defined here
/usr/bin/ld: mkmakefile.o:(.bss+0xec): multiple definition of hz'; config.o:(.bss+0xec): first defined here /usr/bin/ld: mkmakefile.o:(.bss+0xf0): multiple definition of
profiling'; config.o:(.bss+0xf0): first defined here
/usr/bin/ld: mkmakefile.o:(.bss+0xf4): multiple definition of debugging'; config.o:(.bss+0xf4): first defined here /usr/bin/ld: mkmakefile.o:(.bss+0xf8): multiple definition of
maxusers'; config.o:(.bss+0xf8): first defined here
/usr/bin/ld: mkglue.o:(.bss+0x0): multiple definition of machine'; config.o:(.bss+0x0): first defined here /usr/bin/ld: mkglue.o:(.bss+0x8): multiple definition of
machinename'; config.o:(.bss+0x8): first defined here
/usr/bin/ld: mkglue.o:(.bss+0x10): multiple definition of cputype'; config.o:(.bss+0x10): first defined here /usr/bin/ld: mkglue.o:(.bss+0x18): multiple definition of
opt'; config.o:(.bss+0x18): first defined here
/usr/bin/ld: mkglue.o:(.bss+0x20): multiple definition of mkopt'; config.o:(.bss+0x20): first defined here /usr/bin/ld: mkglue.o:(.bss+0x28): multiple definition of
siglist'; config.o:(.bss+0x28): first defined here
/usr/bin/ld: mkglue.o:(.bss+0x30): multiple definition of ident'; config.o:(.bss+0x30): first defined here /usr/bin/ld: mkglue.o:(.bss+0x38): multiple definition of
ldscript'; config.o:(.bss+0x38): first defined here
/usr/bin/ld: mkglue.o:(.bss+0x40): multiple definition of do_trace'; config.o:(.bss+0x40): first defined here /usr/bin/ld: mkglue.o:(.bss+0x44): multiple definition of
seen_mba'; config.o:(.bss+0x44): first defined here
/usr/bin/ld: mkglue.o:(.bss+0x48): multiple definition of seen_uba'; config.o:(.bss+0x48): first defined here /usr/bin/ld: mkglue.o:(.bss+0x4c): multiple definition of
seen_vba'; config.o:(.bss+0x4c): first defined here
/usr/bin/ld: mkglue.o:(.bss+0x50): multiple definition of seen_isa'; config.o:(.bss+0x50): first defined here /usr/bin/ld: mkglue.o:(.bss+0x54): multiple definition of
seen_cd'; config.o:(.bss+0x54): first defined here
/usr/bin/ld: mkglue.o:(.bss+0x58): multiple definition of dtab'; config.o:(.bss+0x58): first defined here /usr/bin/ld: mkglue.o:(.bss+0x60): multiple definition of
errbuf'; config.o:(.bss+0x60): first defined here
/usr/bin/ld: mkglue.o:(.bss+0xb0): multiple definition of yyline'; config.o:(.bss+0xb0): first defined here /usr/bin/ld: mkglue.o:(.bss+0xb8): multiple definition of
ftab'; config.o:(.bss+0xb8): first defined here
/usr/bin/ld: mkglue.o:(.bss+0xc0): multiple definition of conf_list'; config.o:(.bss+0xc0): first defined here /usr/bin/ld: mkglue.o:(.bss+0xc8): multiple definition of
confp'; config.o:(.bss+0xc8): first defined here
/usr/bin/ld: mkglue.o:(.bss+0xd0): multiple definition of comp_list'; config.o:(.bss+0xd0): first defined here /usr/bin/ld: mkglue.o:(.bss+0xd8): multiple definition of
compp'; config.o:(.bss+0xd8): first defined here
/usr/bin/ld: mkglue.o:(.bss+0xe0): multiple definition of zone'; config.o:(.bss+0xe0): first defined here /usr/bin/ld: mkglue.o:(.bss+0xe4): multiple definition of
hadtz'; config.o:(.bss+0xe4): first defined here
/usr/bin/ld: mkglue.o:(.bss+0xe8): multiple definition of dst'; config.o:(.bss+0xe8): first defined here /usr/bin/ld: mkglue.o:(.bss+0xec): multiple definition of
hz'; config.o:(.bss+0xec): first defined here
/usr/bin/ld: mkglue.o:(.bss+0xf0): multiple definition of profiling'; config.o:(.bss+0xf0): first defined here /usr/bin/ld: mkglue.o:(.bss+0xf4): multiple definition of
debugging'; config.o:(.bss+0xf4): first defined here
/usr/bin/ld: mkglue.o:(.bss+0xf8): multiple definition of maxusers'; config.o:(.bss+0xf8): first defined here /usr/bin/ld: mkheaders.o:(.bss+0x0): multiple definition of
machine'; config.o:(.bss+0x0): first defined here
/usr/bin/ld: mkheaders.o:(.bss+0x8): multiple definition of machinename'; config.o:(.bss+0x8): first defined here /usr/bin/ld: mkheaders.o:(.bss+0x10): multiple definition of
cputype'; config.o:(.bss+0x10): first defined here
/usr/bin/ld: mkheaders.o:(.bss+0x18): multiple definition of opt'; config.o:(.bss+0x18): first defined here /usr/bin/ld: mkheaders.o:(.bss+0x20): multiple definition of
mkopt'; config.o:(.bss+0x20): first defined here
/usr/bin/ld: mkheaders.o:(.bss+0x28): multiple definition of siglist'; config.o:(.bss+0x28): first defined here /usr/bin/ld: mkheaders.o:(.bss+0x30): multiple definition of
ident'; config.o:(.bss+0x30): first defined here
/usr/bin/ld: mkheaders.o:(.bss+0x38): multiple definition of ldscript'; config.o:(.bss+0x38): first defined here /usr/bin/ld: mkheaders.o:(.bss+0x40): multiple definition of
do_trace'; config.o:(.bss+0x40): first defined here
/usr/bin/ld: mkheaders.o:(.bss+0x44): multiple definition of seen_mba'; config.o:(.bss+0x44): first defined here /usr/bin/ld: mkheaders.o:(.bss+0x48): multiple definition of
seen_uba'; config.o:(.bss+0x48): first defined here
/usr/bin/ld: mkheaders.o:(.bss+0x4c): multiple definition of seen_vba'; config.o:(.bss+0x4c): first defined here /usr/bin/ld: mkheaders.o:(.bss+0x50): multiple definition of
seen_isa'; config.o:(.bss+0x50): first defined here
/usr/bin/ld: mkheaders.o:(.bss+0x54): multiple definition of seen_cd'; config.o:(.bss+0x54): first defined here /usr/bin/ld: mkheaders.o:(.bss+0x58): multiple definition of
dtab'; config.o:(.bss+0x58): first defined here
/usr/bin/ld: mkheaders.o:(.bss+0x60): multiple definition of errbuf'; config.o:(.bss+0x60): first defined here /usr/bin/ld: mkheaders.o:(.bss+0xb0): multiple definition of
yyline'; config.o:(.bss+0xb0): first defined here
/usr/bin/ld: mkheaders.o:(.bss+0xb8): multiple definition of ftab'; config.o:(.bss+0xb8): first defined here /usr/bin/ld: mkheaders.o:(.bss+0xc0): multiple definition of
conf_list'; config.o:(.bss+0xc0): first defined here
/usr/bin/ld: mkheaders.o:(.bss+0xc8): multiple definition of confp'; config.o:(.bss+0xc8): first defined here /usr/bin/ld: mkheaders.o:(.bss+0xd0): multiple definition of
comp_list'; config.o:(.bss+0xd0): first defined here
/usr/bin/ld: mkheaders.o:(.bss+0xd8): multiple definition of compp'; config.o:(.bss+0xd8): first defined here /usr/bin/ld: mkheaders.o:(.bss+0xe0): multiple definition of
zone'; config.o:(.bss+0xe0): first defined here
/usr/bin/ld: mkheaders.o:(.bss+0xe4): multiple definition of hadtz'; config.o:(.bss+0xe4): first defined here /usr/bin/ld: mkheaders.o:(.bss+0xe8): multiple definition of
dst'; config.o:(.bss+0xe8): first defined here
/usr/bin/ld: mkheaders.o:(.bss+0xec): multiple definition of hz'; config.o:(.bss+0xec): first defined here /usr/bin/ld: mkheaders.o:(.bss+0xf0): multiple definition of
profiling'; config.o:(.bss+0xf0): first defined here
/usr/bin/ld: mkheaders.o:(.bss+0xf4): multiple definition of debugging'; config.o:(.bss+0xf4): first defined here /usr/bin/ld: mkheaders.o:(.bss+0xf8): multiple definition of
maxusers'; config.o:(.bss+0xf8): first defined here
/usr/bin/ld: mkswapconf.o:(.bss+0x0): multiple definition of machine'; config.o:(.bss+0x0): first defined here /usr/bin/ld: mkswapconf.o:(.bss+0x8): multiple definition of
machinename'; config.o:(.bss+0x8): first defined here
/usr/bin/ld: mkswapconf.o:(.bss+0x10): multiple definition of cputype'; config.o:(.bss+0x10): first defined here /usr/bin/ld: mkswapconf.o:(.bss+0x18): multiple definition of
opt'; config.o:(.bss+0x18): first defined here
/usr/bin/ld: mkswapconf.o:(.bss+0x20): multiple definition of mkopt'; config.o:(.bss+0x20): first defined here /usr/bin/ld: mkswapconf.o:(.bss+0x28): multiple definition of
siglist'; config.o:(.bss+0x28): first defined here
/usr/bin/ld: mkswapconf.o:(.bss+0x30): multiple definition of ident'; config.o:(.bss+0x30): first defined here /usr/bin/ld: mkswapconf.o:(.bss+0x38): multiple definition of
ldscript'; config.o:(.bss+0x38): first defined here
/usr/bin/ld: mkswapconf.o:(.bss+0x40): multiple definition of do_trace'; config.o:(.bss+0x40): first defined here /usr/bin/ld: mkswapconf.o:(.bss+0x44): multiple definition of
seen_mba'; config.o:(.bss+0x44): first defined here
/usr/bin/ld: mkswapconf.o:(.bss+0x48): multiple definition of seen_uba'; config.o:(.bss+0x48): first defined here /usr/bin/ld: mkswapconf.o:(.bss+0x4c): multiple definition of
seen_vba'; config.o:(.bss+0x4c): first defined here
/usr/bin/ld: mkswapconf.o:(.bss+0x50): multiple definition of seen_isa'; config.o:(.bss+0x50): first defined here /usr/bin/ld: mkswapconf.o:(.bss+0x54): multiple definition of
seen_cd'; config.o:(.bss+0x54): first defined here
/usr/bin/ld: mkswapconf.o:(.bss+0x58): multiple definition of dtab'; config.o:(.bss+0x58): first defined here /usr/bin/ld: mkswapconf.o:(.bss+0x60): multiple definition of
errbuf'; config.o:(.bss+0x60): first defined here
/usr/bin/ld: mkswapconf.o:(.bss+0xb0): multiple definition of yyline'; config.o:(.bss+0xb0): first defined here /usr/bin/ld: mkswapconf.o:(.bss+0xb8): multiple definition of
ftab'; config.o:(.bss+0xb8): first defined here
/usr/bin/ld: mkswapconf.o:(.bss+0xc0): multiple definition of conf_list'; config.o:(.bss+0xc0): first defined here /usr/bin/ld: mkswapconf.o:(.bss+0xc8): multiple definition of
confp'; config.o:(.bss+0xc8): first defined here
/usr/bin/ld: mkswapconf.o:(.bss+0xd0): multiple definition of comp_list'; config.o:(.bss+0xd0): first defined here /usr/bin/ld: mkswapconf.o:(.bss+0xd8): multiple definition of
compp'; config.o:(.bss+0xd8): first defined here
/usr/bin/ld: mkswapconf.o:(.bss+0xe0): multiple definition of zone'; config.o:(.bss+0xe0): first defined here /usr/bin/ld: mkswapconf.o:(.bss+0xe4): multiple definition of
hadtz'; config.o:(.bss+0xe4): first defined here
/usr/bin/ld: mkswapconf.o:(.bss+0xe8): multiple definition of dst'; config.o:(.bss+0xe8): first defined here /usr/bin/ld: mkswapconf.o:(.bss+0xec): multiple definition of
hz'; config.o:(.bss+0xec): first defined here
/usr/bin/ld: mkswapconf.o:(.bss+0xf0): multiple definition of profiling'; config.o:(.bss+0xf0): first defined here /usr/bin/ld: mkswapconf.o:(.bss+0xf4): multiple definition of
debugging'; config.o:(.bss+0xf4): first defined here
/usr/bin/ld: mkswapconf.o:(.bss+0xf8): multiple definition of maxusers'; config.o:(.bss+0xf8): first defined here /usr/bin/ld: config.o: in function
checksystemspec':
config.c:(.text+0xb4d): undefined reference to minor' /usr/bin/ld: config.c:(.text+0xb68): undefined reference to
minor'
/usr/bin/ld: config.c:(.text+0xbb4): undefined reference to minor' /usr/bin/ld: config.c:(.text+0xbd1): undefined reference to
major'
/usr/bin/ld: config.c:(.text+0xbe0): undefined reference to makedev' /usr/bin/ld: config.o: in function
alreadychecked':
config.c:(.text+0xf92): undefined reference to minor' /usr/bin/ld: config.c:(.text+0xfa6): undefined reference to
minor'
/usr/bin/ld: config.o: in function yyparse': config.c:(.text+0x1f05): undefined reference to
makedev'
/usr/bin/ld: mkswapconf.o: in function do_swap': mkswapconf.c:(.text+0x1af): undefined reference to
minor'
/usr/bin/ld: mkswapconf.c:(.text+0x1c4): undefined reference to major' /usr/bin/ld: mkswapconf.c:(.text+0x1f6): undefined reference to
minor'
/usr/bin/ld: mkswapconf.c:(.text+0x20b): undefined reference to major' /usr/bin/ld: mkswapconf.c:(.text+0x28d): undefined reference to
minor'
/usr/bin/ld: mkswapconf.c:(.text+0x2a4): undefined reference to major' /usr/bin/ld: mkswapconf.o: in function
nametodev':
mkswapconf.c:(.text+0x6d9): undefined reference to makedev' /usr/bin/ld: mkswapconf.o: in function
devtoname':
mkswapconf.c:(.text+0x731): undefined reference to major' /usr/bin/ld: mkswapconf.c:(.text+0x761): undefined reference to
minor'
/usr/bin/ld: mkswapconf.c:(.text+0x779): undefined reference to `minor'
collect2: error: ld returned 1 exit status
*** Error code 1
Stop. bmake[2]: stopped in /mnt/d/Development/LiteBSD/usr.sbin/config *** Error code 1
Stop. bmake[1]: stopped in /mnt/d/Development/LiteBSD/sys/compile *** Error code 1
Stop. bmake: stopped in /mnt/d/Development/LiteBSD
There was a similar issue in RetroBSD as well, but that one got fixed. However, I guess that Serge has abandoned all efforts to maintain LiteBSD.
Sorry guys, I'm just busy with other stuff now. Frankly I don't much reason to invest into LiteBSD anymore. Modern microcontrollers became powerful enough to run full scale Linux. For smaller microcontrollers, like esp32 or rp2040, unix in general does not give any benefit. It has to be something else, maybe like CP/M.
Perhaps I found a solution.
- Editing source code of LiteBSD/usr.sbin/config/config.h
char *ident;
char *ldscript;
char *ns(char *);
char *get_word(FILE *);
char *get_quoted_word(FILE *);
char *path(char *);
char *raise(char *);
/******** Change to extern variable ********/
extern int do_trace;
#if MACHINE_VAX
extern int seen_mba, seen_uba;
#endif
#if MACHINE_TAHOE
extern int seen_vba;
#endif
#if MACHINE_I386
extern int seen_isa;
#endif
extern int seen_cd;
extern struct device *dtab;
dev_t nametodev(char *, int);
char *devtoname(dev_t);
extern char errbuf[80];
extern int yyline;
extern struct file_list *ftab, *conf_list, **confp, *comp_list, **compp;
extern int zone, hadtz;
extern int dst;
extern int hz;
extern int profiling;
extern int debugging;
extern int maxusers;
/***********************************************/
#define eq(a,b) (!strcmp(a,b))
- Editing source code of LiteBSD/usr.sbin/config/config.y
struct device cur;
struct device *curp = 0;
char *temp_id;
char *val_id;
/******** Adding variable declarations ********/
struct device *dtab;
struct file_list *ftab, *conf_list, **confp, *comp_list, **compp;
char errbuf[80];
int machine;
int zone, hadtz;
int do_trace;
char *machinename;
struct cputype *cputype;
char *ident;
char *ldscript;
struct signal *siglist;
int dst;
int hz;
int maxusers;
struct opt *opt, *mkopt;
#if MACHINE_VAX
int seen_mba, seen_uba;
#endif
#if MACHINE_TAHOE
int seen_vba;
#endif
#if MACHINE_I386
int seen_isa;
#endif
int seen_cd;
int profiling;
int debugging;
/**************************************************/
int yylex(void);
int finddev(dev_t dev);
void deverror(char *systemname, char *devtype);
int alreadychecked(dev_t dev, dev_t list[], dev_t *last);