Wireshark-dev: Re: [Wireshark-dev] base64.x & crypt-md5.x; linking issues using them.

From: Brian Vandenberg <phantal@xxxxxxxxx>
Date: Tue, 19 Sep 2006 12:35:27 -0600
In the interim I've opted for the expedient approach of just adding the relevant .c files to makefile.common for my plugin, and that seems to work fine. I'm supposing there's a better way to do it, though, so I'm still open to suggestions.

-Brian

Brian Vandenberg wrote:
My apologies in advance if this ends up being a duplicate. I sent it earlier before my request to be added to the list had been approved.

I'm writing a plugin (win32 dev environment) in which I need access to functionality in base64.x and crypt-md5.x. I had been under the [faulty?] assumption that the object files for these two are compiled into libwireshark.lib, which is already being linked into my plugin:

...
LINK_PLUGIN_WITH=..\..\epan\libwireshark.lib
...
$(PLUGIN_NAME).dll $(PLUGIN_NAME).exp $(PLUGIN_NAME).lib : $(OBJECTS) $(LINK_PLUGIN_WITH)
   link -dll /out $(PLUGIN_NAME).dll $(LDFLAGS) $(OBJECTS) \
      $(LINK_PLUGIN_WITH) $(GLIB_LIBS) $(PCRE_LIBS) zdll.lib
...

 However, I still get the following link errors:

error: LNK2001: unresolved external symbol _md5_finish
error: LNK2001: unresolved external symbol _md5_append
error: LNK2001: unresolved external symbol _md5_init
error: LNK2001: unresolved external symbol _epan_base64_decode

My apologies in advance for the likely noobish question, I'm just not sure what I need to link in, or what to alter. I've not seen any examples of plugins that use them, and since the non-plugin dissectors are all linked either at compile or runtime when building wireshark itself, I'm supposing that I won't glean anything useful by looking at the wireshark/dissectors makefile (which hasn't stopped me from trying).

 If anyone has some suggestions, they'll be welcome.

-Brian

_______________________________________________
Wireshark-dev mailing list
Wireshark-dev@xxxxxxxxxxxxx
http://www.wireshark.org/mailman/listinfo/wireshark-dev