NEW BUILD SYSTEM: Cannot build rtems-libbsd

Niteesh G. S. niteesh.gs at gmail.com
Wed Jul 8 09:11:39 UTC 2020


On Wed, Jul 8, 2020 at 2:00 PM Sebastian Huber <
sebastian.huber at embedded-brains.de> wrote:

> On 29/06/2020 21:39, Niteesh G. S. wrote:
>
> > Hello,
> >
> > I tried compiling RTEMS-libBSD with RTEMS6 toolchain and the new build
> > system
> > but failed. I get errors when compiling RTEMS-libBSD
> >
> > The new build system is pulled from Sebastian's branch
> > HEAD: e4c193ddc163d6adb1b003254af9cc6b5d174a6f
> >
> > RTEMS was configured with the following options:
> > 1) ./waf bsp_defaults --rtems-bsps=arm/beagleboneblack > config.ini
> > 2) Enabled posix since libBSD complained about it during configuration.
> > 3) ./waf configure --prefix=$HOME/development/rtems/6
> > 4) ./waf -j32
>
> This didn't work for me. I got:
>
> [1391/1410] Linking
> build/arm/beagleboneblack/testsuites/samples/iostream.exe
> /opt/rtems/6/lib/gcc/arm-rtems6/10.0.1/../../../../arm-rtems6/bin/ld:
> ./librtemsbsp.a(bbb-i2c.c.1.o): in function `am335x_i2c_reset':
> /home/EB/sebastian_h/src/rtems/build/arm/beagleboneblack/../../../bsps/arm/beagle/i2c/bbb-i2c.c:202:
>
> undefined reference to `__wrap_puts'
> collect2: error: ld returned 1 exit status
>

I also got this error when I first tried out the new build system.
Christian suggested to comment it out temporarily.


> This error is related to this change:
>
>
> https://git.rtems.org/sebh/rtems.git/commit/?h=build&id=9e3a23e4dde96fca2fc5855995527e10a4a119cb
>
> I guess I made this during the work to get rid of the bsp_specs. The
> problem is that we have a cyclic reference: librtemstest depends on
> librtemscpu which depends on librtemstest (via the wrapped output
> functions). The librtemscpu and librtemsbsp are implicitly given at the
> end via the -qrtems flag. I reverted the change since it seems to work
> without it. Afterwards, I was able to install the BSP.
>
> > 5) ./waf install
> >
> > RTEMS-libBSD was configured with the following options:
> > 1) ./waf configure --prefix=$HOME/development/rtems/6
> > --rtems-bsps=arm/beagleboneblack --buildset=buildset/minimal.ini
> > --rtems-version=6
> > 2) ./waf -j16
> > I have attached the error log file.
>
> I got a different error:
>
> [1163/1163] Linking build/arm-rtems6-beagleboneblack-minimal/zerocopy01.exe
> /opt/rtems/6/lib/gcc/arm-rtems6/10.0.1/../../../../arm-rtems6/bin/ld:
> testsuite/zerocopy01/test_main.c.96.o: in function `.LANCHOR0':
> /home/EB/sebastian_h/src/rtems-libbsd/build/arm-rtems6-beagleboneblack-minimal/../../rtemsbsd/include/machine/rtems-bsd-config.h:238:
>
> undefined reference to `_bsd_ip6_mroutemodule_sys_init'
>
> I fixed this with this commit:
>
>
> https://git.rtems.org/rtems-libbsd/commit/?h=5-freebsd-12&id=26866d2c1f2432b25b5db71995bce2035187c715
>
> Which branch do you use for libbsd?
>

I use the master branch: 6da0dda3255e2a49365aee6904fe00d4f2ca9d68


> It seems the master branch. Here I get also your error:
>
> [1084/1184] Linking build/arm-rtems6-beagleboneblack-minimal/condvar01.exe
> /opt/rtems/6/lib/gcc/arm-rtems6/10.0.1/../../../../arm-rtems6/bin/ld:
> ./libbsd.a(uipc_mbuf.c.16.o): in function `m_unmappedtouio':
> /home/EB/sebastian_h/src/rtems-libbsd/build/arm-rtems6-beagleboneblack-minimal/../../freebsd/sys/kern/uipc_mbuf.c:1813:
>
> undefined reference to `PHYS_TO_VM_PAGE'
> /opt/rtems/6/lib/gcc/arm-rtems6/10.0.1/../../../../arm-rtems6/bin/ld:
> /home/EB/sebastian_h/src/rtems-libbsd/build/arm-rtems6-beagleboneblack-minimal/../../freebsd/sys/kern/uipc_mbuf.c:1814:
>
> undefined reference to `uiomove_fromphys'
>
> Could you please use the 5-freebsd-12 branch with the default build set.
> This is what I use normally.
>

I was able to build libbsd on 5-freebsd-12 branch with the default build set
though using minimal build set doesn't work. I have attached the output
file.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/devel/attachments/20200708/f5c09423/attachment-0001.html>
-------------- next part --------------
Dependency /home/niteesh/development/rtems/rtems-libbsd/freebsd/sys/sys/_eventhandler.h for
        {task 139787987585736: c musb_otg.c -> musb_otg.c.16.o} is missing: check the task declaration and the build order!
Waf: Leaving directory `/home/niteesh/development/rtems/rtems-libbsd/build/arm-rtems6-beagleboneblack-minimal'
Build failed
Traceback (most recent call last):
  File "/home/niteesh/development/rtems/rtems-libbsd/.waf3-2.0.19-1f3c580272b15a03d2566843c5fe872a/waflib/Node.py", line 463, in get_bld_sig
    ret=cache[self]
KeyError: /home/niteesh/development/rtems/rtems-libbsd/freebsd/sys/sys/_eventhandler.h

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/niteesh/development/rtems/rtems-libbsd/.waf3-2.0.19-1f3c580272b15a03d2566843c5fe872a/waflib/Runner.py", line 255, in task_status
    return tsk.runnable_status()
  File "/home/niteesh/development/rtems/rtems-libbsd/.waf3-2.0.19-1f3c580272b15a03d2566843c5fe872a/waflib/Task.py", line 372, in runnable_status
    new_sig=self.signature()
  File "/home/niteesh/development/rtems/rtems-libbsd/.waf3-2.0.19-1f3c580272b15a03d2566843c5fe872a/waflib/Task.py", line 357, in signature
    self.sig_implicit_deps()
  File "/home/niteesh/development/rtems/rtems-libbsd/rtems_waf/gccdeps.py", line 167, in sig_implicit_deps
    return Task.Task.sig_implicit_deps(self)
  File "/home/niteesh/development/rtems/rtems-libbsd/.waf3-2.0.19-1f3c580272b15a03d2566843c5fe872a/waflib/Task.py", line 460, in sig_implicit_deps
    bld.imp_sigs[key]=self.compute_sig_implicit_deps()
  File "/home/niteesh/development/rtems/rtems-libbsd/.waf3-2.0.19-1f3c580272b15a03d2566843c5fe872a/waflib/Task.py", line 470, in compute_sig_implicit_deps
    upd(k.get_bld_sig())
  File "/home/niteesh/development/rtems/rtems-libbsd/.waf3-2.0.19-1f3c580272b15a03d2566843c5fe872a/waflib/Node.py", line 467, in get_bld_sig
    ret=cache[self]=self.h_file()
  File "/home/niteesh/development/rtems/rtems-libbsd/.waf3-2.0.19-1f3c580272b15a03d2566843c5fe872a/waflib/Node.py", line 456, in h_file
    return Utils.h_file(self.abspath())
  File "/home/niteesh/development/rtems/rtems-libbsd/.waf3-2.0.19-1f3c580272b15a03d2566843c5fe872a/waflib/Utils.py", line 164, in h_file
    with open(fname,'rb')as f:
FileNotFoundError: [Errno 2] No such file or directory: '/home/niteesh/development/rtems/rtems-libbsd/freebsd/sys/sys/_eventhandler.h'



More information about the devel mailing list