Error: undefined reference to ndbm functions

Vaibhav Gupta vaibhavgupta40 at gmail.com
Mon Jul 1 12:33:20 UTC 2019


On Mon, Jul 1, 2019 at 5:58 PM Joel Sherrill <joel at rtems.org> wrote:

> If you have finished ndbm, please do not attempt to write memcpy for
> SPARC. It is not as important as having fenv.h methods. We have a default
> memcpy implementation for all architectures. The hope was to find an
> already implemented optimized version with history for the SPARC. But so
> far we haven't found one with appropriate license. It will be difficult to
> implement, ensure correctness, and really gain speed.
>
> So work on filling a gap in what APIs are provided. Fenv.h
>
Sure, then I will prepare for fenv.h.

>
> Also we need to work on merging your ndbm work.
>
Yah,

>
> --joel
>
> On Mon, Jul 1, 2019, 5:54 AM Vaibhav Gupta <vaibhavgupta40 at gmail.com>
> wrote:
>
>> Hello,
>> I am reading about memcpy to write it for newlib.
>> Should I also write wmemcpy along with it?
>> https://pubs.opengroup.org/onlinepubs/009695399/functions/wmemcpy.html
>> .
>> Regarding ndbm reference. RSB has not generated library files.
>> - but in newlib source tree, when I compiled newlib, while porting ndbm,
>> it generated *lib_a-ndbm.o* object file.
>> - I am planning to use that object file to compile ndbm testsuite.
>>
> This is the way I found, which can be practical.

> .
>> When Object file and C file are present in same directory, we can use :
>> $ gcc trial.c mylib.o
>> But I am not able to find out, how to use this in Makefile.am.
>> LDADD replaces all global variables while compiling.
>>
>> I tried various codes, but could not solve it. I just want to use the
>> object file (lib_a-ndbm.o)
>> created while building newlib, to compile ndbm testsuite.
>>
> I need guidance for this.

>
>> I need guidance for this.
>>
>> Vaibhav Gupta
>>
>> On Fri, Jun 28, 2019 at 9:57 PM Gedare Bloom <gedare at rtems.org> wrote:
>>
>>> On Fri, Jun 28, 2019 at 7:20 AM Vaibhav Gupta <vaibhavgupta40 at gmail.com>
>>> wrote:
>>> >
>>> >
>>> >
>>> > On Fri, Jun 28, 2019, 6:19 PM Joel Sherrill <joel at rtems.org> wrote:
>>> >>
>>> >>
>>> >>
>>> >> On Fri, Jun 28, 2019, 8:40 AM Vaibhav Gupta <vaibhavgupta40 at gmail.com>
>>> wrote:
>>> >>>
>>> >>>
>>> >>>
>>> >>> 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!
>>> >>
>>> >>
>>> >> The following web page is a pretty good description of building a
>>> library using a native GCC and linking it into a program. It includes some
>>> of the theory going on so this might help you.
>>> >>
>>> >>
>>> https://www.cs.swarthmore.edu/~newhall/unixhelp/howto_C_libraries.html
>>> >>
>>> >> Guys.. this comes up periodically, even though this is really basic
>>> tool usage to me, is this something we should provide some guidance on?
>>> >
>>> > Actually, i tried this before, but I cannot find libndbm in my
>>> development directory. I guess it is not generated.
>>> > .
>>> > One thing I can do is, the newlib-cygwin i compiled while porting
>>> ndbm, it generated ndbm library. I can use that.
>>>
>>> Yes, the library should be 'bundled' with the updated compiler
>>> toolchain. You need to be sure you are using this toolchain. Is it
>>> what you installed to /home/varodek/development/rtems/5 ?
>>>
>>> Gedare
>>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/devel/attachments/20190701/64e12f1a/attachment-0001.html>


More information about the devel mailing list