Intel® oneAPI Threading Building Blocks
Ask questions and share information about adding parallelism to your applications when using this threading library.

Embedded manifest request

pvonkaenel
New Contributor III
407 Views
Hi all,

I've just started working with the source distribution of TBB 2.1 U4 and have successfully built it using the /MT flag instead of /MD - no problems yet. However, I noticed that the build does not embed the manifest in the DLL (windows platform). I would like to add a change request to the have the build process automatically embed the manifest.

Thanks,
Peter
0 Kudos
6 Replies
pvonkaenel
New Contributor III
407 Views
Quoting - pvonkaenel
Hi all,

I've just started working with the source distribution of TBB 2.1 U4 and have successfully built it using the /MT flag instead of /MD - no problems yet. However, I noticed that the build does not embed the manifest in the DLL (windows platform). I would like to add a change request to the have the build process automatically embed the manifest.

Thanks,
Peter

Never mind, I think there was no manifest due to my conversion to /MD. I believe I have it straightened out now.

Peter
0 Kudos
pvonkaenel
New Contributor III
407 Views
Quoting - pvonkaenel

Never mind, I think there was no manifest due to my conversion to /MD. I believe I have it straightened out now.

Peter

I have a follow-on question relating to this. When I build with the standard /MD a manifest file is generated from the "created" tbbmanifest.c file. When I build with /MT that manifest is not created and I have to comment it out of the resource file to get the build to work. It looks like I can still use the tbb.dll file eventhough it has no embedded manifest. My quesion is, how is this possible? Are manifests only required for modules that have dependencies that themselves have manifests?

Thanks,
Peter
0 Kudos
Vladimir_P_1234567890
407 Views
Quoting - pvonkaenel

I have a follow-on question relating to this. When I build with the standard /MD a manifest file is generated from the "created" tbbmanifest.c file. When I build with /MT that manifest is not created and I have to comment it out of the resource file to get the build to work. It looks like I can still use the tbb.dll file eventhough it has no embedded manifest. My quesion is, how is this possible? Are manifests only required for modules that have dependencies that themselves have manifests?

Thanks,
Peter

My understanding is that when you use /MD switch manifest contains dependencies from VC runtime. When you use /MT switch you does not depend on any VC runtime because you linked statically with it. Why do you need a manifest in this case?

Vladimir
0 Kudos
pvonkaenel
New Contributor III
407 Views

My understanding is that when you use /MD switch manifest contains dependencies from VC runtime. When you use /MT switch you does not depend on any VC runtime because you linked statically with it. Why do you need a manifest in this case?

Vladimir

Thanks for responding. I think the answer is "I don't". I've been running with the manifest-free DLL for quite a while now without problems. If a manifest was required, then application loading would fail (which it has not).

Thanks again,
Peter
0 Kudos
William_C_Intel3
Employee
407 Views
The development downloads (tbb21_20090511oss for example) embed the manifests. It would be great if the stable release source provided a make option for this. We need the manifests to be embedded when the dll are loaded by a java app. So are project has been "camped" on the development releases, and would prefer not having to modify a stable release download.
0 Kudos
Alexey-Kukanov
Employee
407 Views
The development downloads (tbb21_20090511oss for example) embed the manifests. It would be great if the stable release source provided a make option for this. We need the manifests to be embedded when the dll are loaded by a java app. So are project has been "camped" on the development releases, and would prefer not having to modify a stable release download.

TBB 2.1 updates and so corresponding commercial-aligned OSS releases do embed MSVCRT manifests.
0 Kudos
Reply