Intel® Business Client Software Development
Support for Intel® vPro™ software development and technologies associated with Intel vPro platforms.

Intel Activator with no DLL dependency

leoxtc
Beginner
821 Views

In my opinion the Intel Activator is an simple and basic utilitary.

Looking at the source code whe can see it is not an complex system.

But Intel choosed to distribute it with an bunch of dll dependencies.

Why not link it everything static ? It would easy the activator distribution to the system.

I can not see any advantage building it with that dll dependencie.

Any commments ????

Regards

Leonardo Cardoso

0 Kudos
4 Replies
Lance_A_Intel
Employee
821 Views

Good feedback.

I believe the dynamic library choice was made to reduce the code size and create some modularity for flexibility of maintenance.

0 Kudos
leoxtc
Beginner
821 Views

Hi Lance,

Thanks for the response.

But the point is:

Everything need to be distributed together.

And spliting the code in severall dlls make the entire package even bigger than linking everything together. This is because each dll has some code overhead.

The sum of the size of all modules became even bigger using several dlls. Linking everything together simplify the package distribution and reduce the size of the module. You can still make the package modular creating several static libraries. Specifically for the activator, i can not see any maintenance advantage using dynamic libraries. Making the package as one single module is the best thing to do in my opinion. I already did that and saved 600kb in size. But i would like to receive some feedback from intel and perhaps make this the default option.
0 Kudos
Lance_A_Intel
Employee
821 Views

Yes, I understand and appreciate you feedback.

The maintenance/size benefit comes from distribution of the activator code by itself. If there are updates to the code they will most likely only occur in the Activator code and not the DLLs. So distribution of these updates will be smaller.

I'm glad that you have been able to utilize the source code provided to create a distribution package that fits your needs. Your suggestion is good and I have passed it on.

0 Kudos
leoxtc
Beginner
821 Views

This works in theory, but pratically thinking this it is not what happens for the customers.

Think what happen if intel update only the activator.exe module. After that, Intel will provide for download the entire package with all dlls. As a costumer, i do not know what changed in wich module. I would need to check the version of each dll to see if the version is newer than tha last package. And we know that sometimes the developers forget to increment the version. So the best thing to do is to ship the entire module of all dlls.

I do not knot any customer who maintain the modules versions and distribute only the modules that was modified. This could happens in big applications, but with utilitary programs like the activator this does not happens.

Another problem with the activator is the size os the executable. Its big because of some problems with the gsoap. Mainly from linking code that never is used. The size of all modules from the activator 5.0 is about 5.3 Megabytes. Tweaking some things in gsoap i could create one unique module with only 1 Megabyte with everything together.

I would like to know if intel has any interest in my ideia. I can send the code and explaing what i did.

It would be an great improve to the activator 6.0.

thanks

0 Kudos
Reply