Is this a bug of VC6? Why dependency works in this way?
- From: wxiong.david@xxxxxxxxx
- Date: 27 Mar 2006 18:52:00 -0800
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)
.
- Follow-Ups:
- Re: Is this a bug of VC6? Why dependency works in this way?
- From: Tom Serface
- Re: Is this a bug of VC6? Why dependency works in this way?
- Prev by Date: Re: control on toolbar
- Next by Date: Re: UI Threads v. Worker Threads
- Previous by thread: Re: Precompiled header error
- Next by thread: Re: Is this a bug of VC6? Why dependency works in this way?
- Index(es):
Relevant Pages
|