Static libraries

TwineCompile - Cut C++Builder compile times by up to 50x!
Post Reply
TKrauss
Posts: 97
Joined: Thu Jul 21, 2011 8:22 am

Static libraries

Post by TKrauss »

I cannot build static libraries with XE2 and latest TC...

There are errors with package version (with dynamic libraries these errors don't appear) and wrong TLIB parameters!

What can I do?

TLIB Error:
[MSBuild Error] TCTargetsXE2.targets: MSB4064 The "LibraryFile" parameter is not supported by the "TLIB" task. Verify the parameter exists on the task, and it is a settable public instance property.
[MSBuild Error] TCTargetsXE2.targets: MSB4063 The "TLIB" task could not be initialized with its input parameters.
jomitech
Site Admin
Posts: 2153
Joined: Wed Oct 08, 2008 12:23 am

Re: Static libraries

Post by jomitech »

What version of XE2 are you using?
Jon
TKrauss
Posts: 97
Joined: Thu Jul 21, 2011 8:22 am

Re: Static libraries

Post by TKrauss »

The latest one: Update 3
jomitech
Site Admin
Posts: 2153
Joined: Wed Oct 08, 2008 12:23 am

Re: Static libraries

Post by jomitech »

Extract the attached file into the BDS\bin folder. It should fix this issue.
Attachments
TCTargetsXE2.zip
(4.93 KiB) Downloaded 1719 times
Jon
TKrauss
Posts: 97
Joined: Thu Jul 21, 2011 8:22 am

Re: Static libraries

Post by TKrauss »

Thank you! Works like a charm...
WindSolutions
Posts: 7
Joined: Thu Apr 19, 2012 9:11 am

Re: Static libraries

Post by WindSolutions »

Exact same problem here but the above fix doesn't work. RAD Studio XE2 update 4.

Any clue?
WindSolutions
Posts: 7
Joined: Thu Apr 19, 2012 9:11 am

Re: Static libraries

Post by WindSolutions »

I dug a bit further and found the cause of the bug. I checked the Messages > Output memo to find the following:

c:\program files (x86)\embarcadero\rad studio\9.0\bin\bcc32.exe -D_DEBUG -D_RTLDLL;USEPACKAGES -nWin32\Debug -I"C:\Program Files (x86)\Embarcadero\RAD Studio\9.0\include\boost_1_39\boost\tr1\tr1";"C:\Program Files (x86)\Embarcadero\RAD Studio\9.0\include\boost_1_39";"c:\program files (x86)\embarcadero\rad studio\9.0\include";"c:\program files (x86)\embarcadero\rad studio\9.0\include\dinkumware";"c:\program files (x86)\embarcadero\rad studio\9.0\include\windows\crtl";"c:\program files (x86)\embarcadero\rad studio\9.0\include\windows\sdk";"c:\program files (x86)\embarcadero\rad studio\9.0\include\windows\rtl";"c:\program files (x86)\embarcadero\rad studio\9.0\include\windows\vcl";"C:\Program Files (x86)\FastReports\LibD16";"c:\program files (x86)\embarcadero\rad studio\9.0\RaveReports\Lib";"C:\Program Files (x86)\Raize\CS5\Lib\RS-XE2\Win32";"C:\VCLExts\TJD\BuilderXe2";"C:\Users\Public\Documents\RAD Studio\9.0\hpp" -y -Q -k -6 -r- -c -tW -C8 -oWin32\Debug\sqlite3.obj -w-par -Od -v -vi- -H=Win32\Debug\sqlite_XE2.pch -H sqlite3.c

The following folder did not exist and was causing the error: C:\VCLExts\TJD\BuilderXe2. I deleted the folder from Tools > Options > C++ Options > Paths and Directories, restarted the IDE and bug was fixed. Maybe it is possible to check the various paths and not add the invalid ones?
jomitech
Site Admin
Posts: 2153
Joined: Wed Oct 08, 2008 12:23 am

Re: Static libraries

Post by jomitech »

Glad you figured it out. The folder handling is part of the Embarcadero MSBuild code, but I'll see if I can make TC check the paths before they're passed to the compiler/linker/librarian.
Jon
Post Reply