[Date Prev][Date Next] [Chronological] [Thread] [Top]

[rtl] Re: Object Oriented programming and RTLinux



I'm interested in this topic and want to understand more.

From: David Olofson <david.olofson@reologica.se>
Subject: Re: [rtl]:Object Oriented programming and RTLinux
Date: Mon, 15 Feb 1999 12:59:11 +0100
Message-ID: <36C80C0F.B6D129C3@reologica.se>

> I use C++ in my RTL modules, and it works almost like normal linking -
> no need for special interfaces or other ugly hacks. (Linux kernel
> modules are NOT Windoze DLLs... :-) All you need to do is provide the
> functions needed for instantiating and deleting objects - that is new
> and delete. (See below.)
...
> > How can I deal with my intention to create an OO application and the
> > use of  RT loadable modules?
> 
> (See above.) Just a note; If you have static instances in the modules,
> you need to use __do_global_ctors_aux() and __do_global_dtors_aux() to
> run the constructors/destructors. Call the first one in module_init()
> and
> the second one in cleanup_module() and when linking, first specify
> crtbegin.o and after your object files, link in crtend.o. (On my RedHat
> system they're in /usr/lib/gcc-lib/i386-redhat-linux/2.7.2.3/.)

Let me ask you a question.

How do I need to specify the options at linking?
Please tell me the options for `ld', which you use in your
Makefile/command line.

In fact, I try to do it with my code, but I failed.
Although the compile and link are success, I got errors
at loading with insmod. The errors are something like;
unreferrenced symbol __eh_pc, __rtti_user, __throw.

Thanks in advance,
Hideto Ishibashi

// Hideto Ishibashi <hideto-i@ijk.com>
// http://vip.cis.kurume-nct.ac.jp/~s34204/
// Kurume National College of Technology, Japan
--- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail majordomo@rtlinux.cs.nmt.edu OR
echo "unsubscribe rtl <Your_email>" | mail majordomo@rtlinux.cs.nmt.edu
----
For more information on Real-Time Linux see:
http://www.rtlinux.org/~rtlinux/