help-gplusplus
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Linker won't find dll


From: Paul Pluzhnikov
Subject: Re: Linker won't find dll
Date: Tue, 26 Aug 2008 03:31:23 -0700
User-agent: Gnus/5.1006 (Gnus v5.10.6) XEmacs/21.4 (Jumbo Shrimp, linux)

jjones7947@comcast.net writes:

> The link errors I get are the following:
> build/jsummarizer.o:jsummarizer.cc:(.text 
> $_ZN7inxight10summarizerD1Ev[inxight::summarizer::~summarizer()]+0x4f): 
> undefined reference to 
> `inxight::delete_summarizer(inxight::summarizer_interface*)'

Is 'inxight::delete_summarizer(inxight::summarizer_interface*)'
exported by any of the DLLs on your link line?

> Now in continuing to look for answers I found a post about virtual
> functions being a problem,

You can find a post about anything being a problem.
There are a lot of posts which are "plain wrong" (possibly including
this one :)

> I looked the methods up in the header
> files. They are all virtual. Apparently, I have to implement them?

Implement virtual methods of a class you are inheriting from?
Usually no; otherwise what's the point of inheriting from that class?

> As you may have understood, this is a JNI project. I have done these
> before against dlls of unknown compilation. I am not trying make
> summarizer37.dll a part of the one I'm building, merely load it at run-
> time.

There are two different ways to load a DLL at runtime on Windows:
have a direct dependency on it (in which case the runtime loader
loads the DLL for you at process startup, or when your own DLL is
loaded), or call LoadLibrary() on it.

You are doing the former, but when people talk about "loading a
DLL at runtime", they usually mean the latter.

> I may be confused about this, but thought that linking
> involved putting the code together in some way as a single exe or dll.

Yes, linking is usually about that (sometimes the result of a link
is another object, not an EXE or DLL; but that is rare).

> Thought this is different from writing code which calls functions in a
> dll/lib/so, even though the calling code and the dll are compiled by
> different compilers.  

Yes, linking is different from writing code (you use linker instead
of a text editor :). But you probably meant to ask something else.

> Am I completely off base on that?

I can't tell, because I didn't understand what you mean.

Cheers,
-- 
In order to understand recursion you must first understand recursion.
Remove /-nsp/ for email.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]