Board index » cppbuilder » Re: BDS2006: [Linker Fatal Error] Unable to open file *.LIB/IDIOTIC,USELESS Error Messages...

Re: BDS2006: [Linker Fatal Error] Unable to open file *.LIB/IDIOTIC,USELESS Error Messages...


2007-06-30 08:05:03 AM
cppbuilder74
Hi,
Quote
#pragma link "Component"
or
#pragma link "ComponentCollection.lib"
Meanwhile I have added all used component collections, but now I have the
mentioned problem with VCLE50.LIB.
It means that you are picking up a lib or obj that
was built with BCB5. That lib or obj has a pragma
link of vcle50 in it. "Build All" will not help with
#pragma linked files. You will have to find the obj's
and/or libs that you want rebuilt and make sure they
get rebuilt with BDS2006, i.e. delete them and build
the project(s) they are in.
--Craig
 
 

Re:Re: BDS2006: [Linker Fatal Error] Unable to open file *.LIB/IDIOTIC,USELESS Error Messages...

Hello Craig,
Quote
>#pragma link "Component"
>or
>#pragma link "ComponentCollection.lib"
>Meanwhile I have added all used component collections, but now I have the
>mentioned problem with VCLE50.LIB.

It means that you are picking up a lib or obj that
was built with BCB5. That lib or obj has a pragma
link of vcle50 in it. "Build All" will not help with
#pragma linked files. You will have to find the obj's
and/or libs that you want rebuilt and make sure they
get rebuilt with BDS2006, i.e. delete them and build
the project(s) they are in.
the problem is component-related, I don't use any other *.obj- or *.lib-files.
And because I have installed all components in BDS2006 there should be of course
no vcle50-reference.
Be as it be, the main problem is the USELESS error message. The Linker should
clearly indicate which file causes the error. WHY IS THAT NOT POSSIBLE?
Thanks
Udo
 

Re:Re: BDS2006: [Linker Fatal Error] Unable to open file *.LIB/IDIOTIC,USELESS Error Messages...

You should be able to find out which cones are dependent on vcle50 with
something like this. I've written it as if it is to work with *.bpl files.
Open a command window and change directory to where the components are.
Type in the commands below. Note that the symbol ^Z means hold down the
control key while pressing the letter Z.
------------------
copy con 1.cmd
tdump -s %1>%1.dmp^Z
for %a in (*.bpl) do call 1 %1
grep -li "vcle50" *.dmp
------------------
This should list all the files that have it with ".dmp" appended to the file
name. You can also look at *.dmp files in an editor to verify what you
found.
This creates a *.dmp file for each file searched. You can delete the *.dmp
files and the 1.cmd file afterwards.
. Ed
Quote
Udo Weik wrote in message
news: XXXX@XXXXX.COM ...

the problem is component-related, I don't use any other *.obj- or
*.lib-files. And because I have installed all components in BDS2006 there
should be of course no vcle50-reference.

Be as it be, the main problem is the USELESS error message. The Linker
should clearly indicate which file causes the error. WHY IS THAT NOT
POSSIBLE?
 

{smallsort}