- From: He's Lemon Fresh OTA <eric@apocalypse.org>
- Date: Fri, 23 Aug 1996 09:22:33 -0400 (EDT)
- To: Dennis Gallagher <galron@seanet.com>
- cc: www-lib@w3.org
> The library compile runs through several of the sub- projects with only a few warnings and then VC++ gives me the following error and quits:
>
>
> Linking...
> Creating library ../../../Bin/wwwrules.lib and object ../../../Bin/wwwrules.exp
> HTProxy.obj : error LNK2001: unresolved external symbol _HTAuthFilter
> ../../../Bin/Debug/wwwrules.dll : fatal error LNK1120: 1 unresolved externals
> Error executing link.exe.
> msvc_40.dll - 2 error(s), 0 warning(s)
The problem stems from this function in HTProxy.c
PUBLIC BOOL HTProxy_add (const char * access, const char * proxy)
{
/*
** If this is the first time here then also add a before filter to handle
** proxy authentication and the normal AA after filter as well.
** These filters will be removed if we remove all proxies again.
*/
if (!proxies) {
proxies = HTList_new();
HTNetCall_addBefore(HTAA_proxyBeforeFilter, NULL, 0);
!!! HTNetCall_addAfter(HTAuthFilter, NULL, HT_NO_PROXY_ACCESS);
}
return add_object(proxies, access, proxy);
}
I believe that you can comment out this line as HTAuthFilter is added to
the netcalls in the call chain HTProfile_newClient->HTNetInit->
HTAfterInit->HTNetCall_addAfter(HTAuthFilter, NULL, HT_NO_ACCESS);
HTAuthFilter is part of the high-level library wwwapp which uses many of
the middle-level libraries like wwwrules. During the build process, MSVC
creates lib files for each dll. These lib files are used to resolve
externals in subsequent dlls/exes. Using this model, it is impossible to
create interdependent dlls. Which one do you build first? How does it
resolve the symbols defined in the other? wwwrules needed a symbol from
wwwapp, which wasn't built yet, and couldn't be built without first
building wwwrules. Catch 22.
> I usually work on single level projects so I'm a bit fuzzy how symbols get defined and made visible among sub-projects in a complex project like this.
As far as I know, subprojects don't mean anything to the build process
except that the product of the subproject is a depnendency in this
project. There is no implicit linkage between the two.
-eric
PS. I see no linebreaks in your mail so the reply text may be a little
bit ascew. Are you using the Microsoft mailer?
Received on Friday, 23 August 1996 09:22:55 UTC