Error: undefined reference to ndbm functions

Vaibhav Gupta vaibhavgupta40 at gmail.com
Fri Jun 28 12:40:39 UTC 2019


On Fri, Jun 28, 2019, 5:57 PM Joel Sherrill <joel at rtems.org> wrote:

> You need to add the library to the gcc command that links the program. If
> the libndbm is in the library search path, add -lndbm.
>
> I don't recall the exact Makefile variable to set for this to show up.
> Look at the paranoia sample. It should be doing this with -lm.
>
> --joel
>
Okay, I will try this!

>
> On Fri, Jun 28, 2019, 8:12 AM Vaibhav Gupta <vaibhavgupta40 at gmail.com>
> wrote:
>
>> Hello,
>> .
>> Status:
>>
>>    1. I have ported ndbm in newlib. When compiled newlib-cygwin,
>>    function symbols were generated. Created patch.
>>    2. Applied the patch to RSB and rebuild toolchain. Generated ndbm.h
>>    in 5/sparc-rtems5/include directory.
>>
>> Blocker:
>>
>>    1. I made a raw program which calls dbm_open, dbm_close, dbm_store,
>>    dbm_fetch.
>>    2. When  I run 'make -j 2', in erc32 directory, it shows undefined
>>    reference to those functions.
>>
>> https://github.com/VARoDeK/rtems/compare/test_ndbm_presence_02
>> .
>> home/varodek/development/rtems/5/lib/gcc/sparc-rtems5/7.4.1/../../../../sparc-rtems5/bin/ld:
>> psxinttypes01/psxinttypes01-init.o: in function `Init':
>> /home/varodek/development/rtems/kernel/rtems/c/src/../../testsuites/psxtests/psxinttypes01/init.c:231:
>> undefined reference to `dbm_open'
>> /home/varodek/development/rtems/5/lib/gcc/sparc-rtems5/7.4.1/../../../../sparc-rtems5/bin/ld:
>> /home/varodek/development/rtems/kernel/rtems/c/src/../../testsuites/psxtests/psxinttypes01/init.c:232:
>> undefined reference to `dbm_store'
>> /home/varodek/development/rtems/5/lib/gcc/sparc-rtems5/7.4.1/../../../../sparc-rtems5/bin/ld:
>> /home/varodek/development/rtems/kernel/rtems/c/src/../../testsuites/psxtests/psxinttypes01/init.c:236:
>> undefined reference to `dbm_fetch'
>> /home/varodek/development/rtems/5/lib/gcc/sparc-rtems5/7.4.1/../../../../sparc-rtems5/bin/ld:
>> /home/varodek/development/rtems/kernel/rtems/c/src/../../testsuites/psxtests/psxinttypes01/init.c:239:
>> undefined reference to `dbm_close'
>> collect2: error: ld returned 1 exit status
>> make[5]: *** [Makefile:7679: psxinttypes01.exe] Error 1
>> make[5]: Leaving directory
>> '/home/varodek/development/rtems/kernel/erc32/sparc-rtems5/c/erc32/testsuites/psxtests'
>> make[4]: *** [Makefile:663: psxtests] Error 2
>> make[4]: *** Waiting for unfinished jobs....
>> .
>> .
>> .
>> Maybe I have compiled it incorrectly, please verify.
>>
>>    1. ndbm port: https://github.com/VARoDeK/newlib/compare/port_ndbm
>>    2. RSB patch:
>>    https://github.com/VARoDeK/rsb/compare/newlib_ndbm_rsb_patch_01
>>
>> Vaibhav Gupta
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/devel/attachments/20190628/14fdc148/attachment.html>


More information about the devel mailing list