View unanswered posts | View active topics It is currently September 20th, 2017, 9:52 pm



Reply to topic  [ 11 posts ]  Go to page 1, 2  Next
 Is that possible to deploy TBBMM like FastMM 
Author Message

Joined: September 28th, 2010, 5:13 pm
Posts: 2
Post Is that possible to deploy TBBMM like FastMM
Hi,

Deploying TBBMM based application need to deploy borlndMM.dll and TBBMM.dll together. This is not a good solution for those who deploy single .exe application. Furthermore, we need to overwrite borlndMM.dll while we program in Delphi IDE.

Is that possible to make TBBMM like FastMM, we may just put the TBBMM .pas files in the first line of our .dpr file and our application is TBBMM enabled.

Thank you.


September 29th, 2010, 12:38 am
Profile
Site Admin

Joined: July 4th, 2008, 2:56 pm
Posts: 226
Post Re: Is that possible to deploy TBBMM like FastMM
Not possible.

Intel's TBB has to be compiled in MSVC and there's no TBBMM.pas file. In short, any memory managers not written in Delphi cannot be linked into the exe (Delphi doesn't know how to).


September 29th, 2010, 2:42 pm
Profile

Joined: September 15th, 2010, 1:36 pm
Posts: 4
Post Re: Is that possible to deploy TBBMM like FastMM
Would be interesting however to use TBBMM in a non-shared way, and possibly with a full path to the DLL, in order to avoid problems when building DLLs possibly hosted by something that's already using an uncompatible DLL of the same name (especially BorlndMM.dll).


October 1st, 2010, 2:13 pm
Profile
Site Admin

Joined: July 4th, 2008, 2:56 pm
Posts: 226
Post Re: Is that possible to deploy TBBMM like FastMM
You'll have to lobby for that in Embarcadero's forum I'm afraid.


October 1st, 2010, 7:25 pm
Profile

Joined: September 8th, 2010, 9:20 pm
Posts: 6
Post Re: Is that possible to deploy TBBMM like FastMM
Yes this could be easy done...

1) look for sharemem.pas in BDS source path

2) look for BorlandMM.dpr in the FastMM4 source

then merge it.... :mrgreen:

Hp


October 6th, 2010, 12:26 am
Profile
Site Admin

Joined: July 4th, 2008, 2:56 pm
Posts: 226
Post Re: Is that possible to deploy TBBMM like FastMM
I think the OP was asking for TBBMM to be merged into his host app, not FastMM.


October 6th, 2010, 9:31 am
Profile

Joined: September 8th, 2010, 9:20 pm
Posts: 6
Post Re: Is that possible to deploy TBBMM like FastMM
Hi Zach,

>> I think the OP was asking for TBBMM to be merged into his host app, not FastMM.

YES, and those are the required sources to complete the merge tasks:

1: BorlandMM.dpr (dll project) = dll entry points for any custom MM, issued from sharemem.pas

2: sharemem.pas = the source unit/file what is required to use any BorlandMM.dll: This unit have to be included into your custom project. See below

program Bench_TBBV3;

uses
sharemem, <<<<<<<<<<<<
Forms,
FMain in 'FMain.pas' {Form1};

{$R *.res}

begin
Application.Initialize;
Application.MainFormOnTaskbar := True;
Application.Title := 'Bench_TBBV3';
Application.CreateForm(TForm1, Form1);
Application.Run;
end.


Hp


October 8th, 2010, 7:11 pm
Profile
Site Admin

Joined: July 4th, 2008, 2:56 pm
Posts: 226
Post Re: Is that possible to deploy TBBMM like FastMM
I don't think you understand what the OP was asking for.

What you've provided is only statically linking to BorlndMM.dll - not merging the memory manager into the host app as what the OP wanted. You'll still need to deploy BorlndMM.dll and TBBMM.dll with your method. OP wanted to deploy a standalone .exe with no dependencies on BorlndMM.dll and TBBMM.dll.


October 8th, 2010, 9:27 pm
Profile

Joined: September 8th, 2010, 9:20 pm
Posts: 6
Post Re: Is that possible to deploy TBBMM like FastMM
Hi

>> I don't think you understand what the OP was asking for.

I do know what he is looking for, but do not provide a final solution. The hard work to build a simple unit that has

1) the public calls pointing to the TBB dll

2) as pointed out you have to provide several MM calls (see source sharemem.pas & BarlandMM.dpr from FastMM)

3) one point is missing in this regard, the procedure source of your BorlandMM.xyz file to get the TBB target use or have to be reingineered

4) Then finally simple using the new unit: myLovelyTBBAccessUnit.pas

program Bench_TBBV3_Direct;

uses
myLovelyTBBAccessUnit, <<<<<<<<<<<<<<<<<<<<<<<<<<<<< ;)
Forms,
FMain in 'FMain.pas' {Form1};

{$R *.res}

begin
Application.Initialize;
Application.MainFormOnTaskbar := True;
Application.Title := 'Bench_TBBV3';
Application.CreateForm(TForm1, Form1);
Application.Run;
end.


5) in case even a simple DLL is used withn the application and strings are involved the BorlandMM.dll is still required

Hp


October 8th, 2010, 10:13 pm
Profile
Site Admin

Joined: July 4th, 2008, 2:56 pm
Posts: 226
Post Re: Is that possible to deploy TBBMM like FastMM
I still don't see how that would allow the OP to deploy single .exe with no borlndmm.dll and tbbmm.dll dependencies.


October 9th, 2010, 10:38 am
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 11 posts ]  Go to page 1, 2  Next

Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
Jump to:  
cron
Powered by phpBB.