Community
cancel
Showing results for 
Search instead for 
Did you mean: 
renorm
Beginner
92 Views

ICC 11.1 can't build boost 64 bit version

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
92 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
Lingfeng_C_Intel
Employee
92 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
renorm
Beginner
92 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.
Lingfeng_C_Intel
Employee
92 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
hfifnet
Beginner
92 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.
Reply