LiteBSD icon indicating copy to clipboard operation
LiteBSD copied to clipboard

Problems compiling on Ubuntu 20.04

Open tadryanom opened this issue 1 year ago • 2 comments

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

tadryanom avatar Nov 13 '23 07:11 tadryanom

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.

calmsacibis995 avatar Feb 03 '24 11:02 calmsacibis995

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.

sergev avatar Feb 08 '24 22:02 sergev

Perhaps I found a solution.

  1. 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))

  1. 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);

config.h.txt config.y.txt

pic32mx370f512h avatar Sep 28 '24 09:09 pic32mx370f512h