Is this a bug of VC6? Why dependency works in this way?



I have a project B which depends on another DLL project A. But I use an
environment variable $(ACE_ROOT) in the configuration of Output files.
But when build project B, VC6 will use the following rule to generate
the path of A.lib:
Dir of Project A + Output Files configuration in Project A
It will always get a wrong path such as:
"\STUDY\CORBA\Project\LibTest\lib\$(ACE_ROOT)\lib\lib.lib"
Although VC6 may warn about using env variable in Project Settings,
actually, it's safe to use env variable in other configuration item.
Why VC6 doesn't use a normal search algorithm to find a.lib? As to some
..dsw and .dsp autogenerating tool, such as the tool provided by ACE,
it's much better to use env variable in project configuration.
Maybe the designer of VC6 want to make it easier to add dependency lib
for us, but actually, it brings me some trouble in this scenario.

The following is the output message I have gotten when build a test
project:
--------------------Configuration: lib - Win32
Debug--------------------
Linking...
Creating library D:\CORBA\ACE\ACE_wrappers\lib/lib.lib and object
D:\CORBA\ACE\ACE_wrappers\lib/lib.exp
--------------------Configuration: libtest - Win32
Debug--------------------
Compiling...
main.cpp
Linking...
LINK : fatal error LNK1104: cannot open file
"\STUDY\CORBA\Project\LibTest\lib\$(ACE_ROOT)\lib\lib.lib"
Error executing link.exe.

libtest.exe - 1 error(s), 0 warning(s)

.



Relevant Pages

  • Re: Is this a bug of VC6? Why dependency works in this way?
    ... There were lots of bugs in the dependency evaluator for VS6 and VS 7.0/.1. ... environment variable $in the configuration of Output files. ... Although VC6 may warn about using env variable in Project Settings, ...
    (microsoft.public.vc.mfc)
  • Re: All these dirs, debug,bin, etc..
    ... bin\release directory depending on your current build configuration. ... Find great Windows Forms articles in Windows Forms Tips and Tricks ... Answer those GDI+ questions with the GDI+ FAQ ... How do I know what are final output files, ...
    (microsoft.public.dotnet.languages.csharp)
  • Visual Studio 2005 Debugging and Tabs
    ... Deleting intermediate and output files for project 'Test', configuration ... All errors and warnings are also listed as "plain" text. ...
    (microsoft.public.vsnet.general)
  • Re: VC8 build much slower than VC7
    ... x86 is ... 1>Deleting intermediate and output files for project 'X', ... configuration 'Release|Win32' ... the ultimate audio player for mobiles ...
    (microsoft.public.vc.language)
  • Re: Setting a breakpoints in VS2005
    ... The question I have is a stupid one, ... I'm used to the old VC6, ... The project is configured to Debug mode, the breakpoint is in place, ... configuration clearly enough. ...
    (microsoft.public.dotnet.languages.vc)