Link issue on xilinx_zynq_a9_qemu BSP on rtems-libbsd head

Alan Cudmore alan.cudmore at gmail.com
Fri Feb 28 03:40:38 UTC 2020


Hi Lou,
Did you ever solve this problem?
I just tried linking an out of tree program for the beaglebone black
BSP and have the same undefined symbols. The testsuite links correctly
and the symbols are in the testsuite binaries, but not in libbsd.a

doing a grep of the rtems-libbsd source there is a PHYS_TO_VM_PAGE in
rtemsbsd/powerpc/include/linux/page.h
When I grep the directory where I installed the bsd library and
headers, this file is not present.

Any ideas?

Thanks,
Alan

On Wed, Jan 15, 2020 at 1:59 PM Lou Woods <Lou.Woods at oarcorp.com> wrote:
>
> Hello all,
>
> I just pulled from the master of both rtems (362cf319d44e7e64987f12aa36ea030e6298c586) and rtems-libbsd (d892051f37c2c4ad7f345f6a817ea3d38e56a431) trees and ran into an couple undefined references when linking an application outside of the tree.  The application doesn't directly use either symbol and has worked unmodified on older trees.  This build issue is not present when using the 5-freebsd-12 branch of rtems-libbsd on the same application code.  I can move forward with the 5-freebsd-12 branch so this isn't a show stopper for me.
>
> $ make
> arm-rtems5-gcc --pipe -march=armv7-a -mthumb -mfpu=neon -mfloat-abi=hard -mtune=cortex-a9 -O0 -g -ffunction-sections -fdata-sections -Wall -Wmissing-prototypes -Wimplicit-function-declaration -Wstrict-prototypes -Wnested-externs -B /home/woods/zynq-quickstart-trial/bsp-install/arm-rtems5/xilinx_zynq_a9_qemu/lib/ -specs bsp_specs -qrtems init.c  -o init.exe -lbsd -lm -ltelnetd
> /data/home/woods/zynq-quickstart-trial/tools/bin/../lib/gcc/arm-rtems5/7.5.0/../../../../arm-rtems5/bin/ld: /home/woods/zynq-quickstart-trial/bsp-install/arm-rtems5/xilinx_zynq_a9_qemu/lib/libbsd.a(uipc_mbuf.c.18.o): in function `m_unmappedtouio':
> /data/home/woods/zynq-quickstart-trial/rtems-libbsd/build/arm-rtems5-xilinx_zynq_a9_qemu-default/../../freebsd/sys/kern/uipc_mbuf.c:1813: undefined reference to `PHYS_TO_VM_PAGE'
> /data/home/woods/zynq-quickstart-trial/tools/bin/../lib/gcc/arm-rtems5/7.5.0/../../../../arm-rtems5/bin/ld: /data/home/woods/zynq-quickstart-trial/rtems-libbsd/build/arm-rtems5-xilinx_zynq_a9_qemu-default/../../freebsd/sys/kern/uipc_mbuf.c:1814: undefined reference to `uiomove_fromphys'
> collect2: error: ld returned 1 exit status
> make: *** [init.exe] Error 1
>
> RTEMS was configured like this:
> ../rtems/configure --prefix=${rw}/bsp-install --target=arm-rtems5 \
>  --enable-rtemsbsp=xilinx_zynq_a9_qemu --disable-networking
>
> libbsd was configured like this:
> $ git clone git://git.rtems.org/rtems-libbsd.git
> $ cd ./rtems-libbsd
> $ git submodule init
> $ git submodule update rtems_waf
> $ python3 ./waf configure --rtems-tools=${rw}/tools --rtems=${rw}/bsp-install \
>  --prefix=${rw}/bsp-install --rtems-bsps=arm/xilinx_zynq_a9_qemu
> $ python3 ./waf
> $ python3 ./waf install
>
> Makefile
>
> include $(RTEMS_MAKEFILE_PATH)/Makefile.inc
> include $(RTEMS_MAKEFILE_PATH)/make/target.cfg
> include $(RTEMS_CUSTOM)
>
> all: init.exe
>
> CFLAGS += -B ${RTEMS_MAKEFILE_PATH}/lib/ -specs bsp_specs -qrtems
>
> init.exe: init.c
>         $(CC) $(CFLAGS) init.c  -o $@ -lbsd -lm -ltelnetd
>
>  clean:
>          init.exe
>
> If any other information can be useful, please let me know.
>
> Thanks,
> Lou Woods
> On-Line Applications Research
>
> _______________________________________________
> devel mailing list
> devel at rtems.org
> http://lists.rtems.org/mailman/listinfo/devel


More information about the devel mailing list