0

I am working with Borland C++Builder 2010, and we have a big problem for debugging.

We have more than 200 TDS files to load due to a big project, and we can't load every .tds of the project in debug mode.

In result we can't have any break point or visu on what our project do in some part. So we are suppressing some useless .tds to load parts that we want but i am at the point that I need a good number of tds and i can't load them all because of that limit and I am totaly blocked for the debug.

Is there any way to suppress this limit of loading .tds for the debug?

Remy Lebeau
  • 555,201
  • 31
  • 458
  • 770
darkhades
  • 9
  • 2
  • I am using ancient BDS2006 and I always had only single tds per app even for very big and merged MDI projects like 3D CAD/CAM (the same goes for older versions). They changed TDS politics in newer version or you just have weirdly merged projects so it keep generating a lot of tds per project? – Spektre Nov 20 '15 at 09:55
  • We have a project with one TDS and many plugins .dll to load dynamically, so as many as plugin we have as many TDS. – darkhades Nov 23 '15 at 08:44
  • Ah that makes sense. if you got Borland style obj for plug-ins you can link them statically (for debug purposes) by `#pragma link "blablabla.obj"` statement eliminating the dll linkage to cut the TDS number up to limit ... – Spektre Nov 23 '15 at 09:01
  • I got .dll for plug-ins, so i can't link them statically (or maybe i did something wrong, I get an error message : omf not valid, type 0x4d). And if I link all the .obj statically, I get no debug option of the plug-ins. – darkhades Nov 23 '15 at 16:21
  • that means the obj is not borland style (Intel format) but Microsoft instead. – Spektre Nov 23 '15 at 16:41
  • see the [difference between COFF and OMF](http://stackoverflow.com/a/966689/2521214) – Spektre Nov 23 '15 at 19:36
  • Since I can load dynamically all my .dll and that is working, I think my plug-ins are OMF, or Borland can handle COFF dynamically.. It's just I can't load their TDS (debug) for debugging purpose after more than approximatively 50 .TDS but all the .dll were loaded and worked. – darkhades Nov 24 '15 at 09:16
  • you can link any **dll** statically if you got the correct **lib** file in Intel format for it. Dynamic linking has nothing to do with borland and it uses winapi instead (so then it should not have TDS in my opinion). if the obj file was compiled by MSVC/GCC or whatever then it is in wrong format and can not be linked... try to link your DLL statically (create lib file by implib.exe located in borlands bin directory) those does not generate additional TDS files at least I saw none in any project in my time... – Spektre Nov 24 '15 at 09:26
  • We will try it the next week, to load half the lib statically and the other dynamically. If this is working I will tell you :) – darkhades Nov 30 '15 at 08:38
  • Do not forget to play with implib.exe commandline switches until each individual lib is linkable (to handle different mangling and stuff if no borland lib is provided for dll)... especially combination of `-c -f -a` for example: `implib.exe -c -f -a cg.lib cg.dll ` – Spektre Nov 30 '15 at 10:15

0 Answers0