Hi Havard --

        You need to link in the libgcc.a which is located at:

/usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/libgcc.a  

        It could be a slightly different directory depending on your linux
install. These are some internal math rountines used by gcc.

        Now, I see you are including libm.a -- you will probably see
multiple defines, since libm.a needs libc.a -- functions like perror. And
you cannot bring in libc.a into the kernel for a variety of reasons. If
you need math functionality, others may have solution to that ...

                Hope that helps,
                Chris

--------------------------------------------------------------------
Christopher D. Carothers

Assistant Professor
Department of Computer Science         
Rensselaer Polytechnic Institute
110 8th Street
Troy, New York 12180-3590

e-mail: [EMAIL PROTECTED]
web page: www.cs.rpi.edu/~chrisc
phone: (518) 276-2930 
fax: (518) 276-4033
--------------------------------------------------------------------


On Wed, 23 May 2001, Havard Gullbekk wrote:

> Hello!
> I just uppgraded from rtlinux 2.2 on RH 6.2 to rtlinux 3.0 on SuSE 7.1.
> I'm using the prepatched, 2.4.0-test1-rtl kernel.
> My program was running on the old version, but I got some unresolved
> symbols on my math functions (sin, cos etc) after uppgrading so I added
> the -lm and -lc as described in the FAQ.
> My makefile now looks like this:
> 
> ahrs.o: ahrs.c
>       $(CC) ${CFLAGS} -c -o ahrs_tmp.o ahrs.c
>       $(LD) -r -static ahrs_tmp.o -o ahrs.o -L/usr/lib -lm -lc
>       rm -f ahrs_tmp.o
> 
> When I insert ahrs.o as a module (insmod ahrs.o) I get these errors:
> 
> ahrs.o: unresolved symbol __udivdi3
> ahrs.o: unresolved symbol __umoddi3
> 
> I have no idea where the __udivdi3 and __umoddi3 are comming from and
> what their purpose is. So any suggestions are welcome.
> Thanks
> Havard
> 
> -- [rtl] ---
> To unsubscribe:
> echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
> echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED]
> --
> For more information on Real-Time Linux see:
> http://www.rtlinux.org/rtlinux/
> 
> 

-- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED]
--
For more information on Real-Time Linux see:
http://www.rtlinux.org/rtlinux/

Reply via email to