Intel® C++ Compiler
Community support and assistance for creating C++ code that runs on platforms based on Intel® processors.
7957 Discussions

ICC 11.1 can't build boost 64 bit version

renorm
Beginner
758 Views
Operating system Windows Vista 64
Compilers Visual Studio 2008 with x64
ICC 11.1 for Intel 64 only (no IA-32, no IA-64)

I could build boost 1.43 for x64 target with Microsoft's compiler by passing address-model=64 to bjam. I could build TBB and several other project for x64 target with ICC, but boost refuses to compile. Currently I am using library files for Visual Studio by renaming them into what ICC expects. A file ***-vc90-***.lib would be renamed into ***-iw-***.lib and so far it is working for me. But there should a proper way to get boost to work with ICC. Does anyone know how?

Regards,
renorm.
0 Kudos
5 Replies
Lingfeng_C_Intel
Employee
758 Views
Thanks Renorm,

Could you provide me some error message printed out when you were trying to build boost with ICC?
And how to do this build, I mean build steps you did?
I have an experience on IA32.

Thanks,
Wise
0 Kudos
Lingfeng_C_Intel
Employee
758 Views
Thanks Renorm,

I successfully built boost x64 today.
The details like belows:
1. Enter Command prompt with Intel 64 Visual Studio 2008 mode;
2. Enter bjam path of boost that you download from boost.org;
3. Build bjam tool first usign icl for x64;
4. Then build boost library using this x64 bjam;
5. Successfully built.

Good luck for you!
Thanks,
Wise
0 Kudos
renorm
Beginner
758 Views
OK, I finally managed to compile boost. I guess building bjam locally was the key.

One curios note. All boost libraries (release and debug) were build with _SECURE_SCL=0 option, even though I didn't specify it explicitly. But by default ICC uses _SECURE_SCL=1 unless it is explicit set to 0. I think it is worth mentioning somewhere in ICC documentation or on this forum.
0 Kudos
Lingfeng_C_Intel
Employee
758 Views
Glad to see your successs!

Yes, you are right, bjam is the key, I will keep this suggestion and try to let people know it.

Thanks,
Wise
0 Kudos
hfifnet
Beginner
758 Views
Quoting renorm
One curios note. All boost libraries (release and debug) were build with _SECURE_SCL=0 option, even though I didn't specify it explicitly. But by default ICC uses _SECURE_SCL=1 unless it is explicit set to 0. I think it is worth mentioning somewhere in ICC documentation or on this forum.
This may be caused by boost's configuration. Have a look at the jam files included in the boost tarball.
0 Kudos
Reply