Community
cancel
Showing results for 
Search instead for 
Did you mean: 
John_G_8
Beginner
193 Views

icpc totally broken Apple

The following simple C++ program hello.cc will not compile on Apple OS 10.14.6 xCode version 11.2 icpc version 19.0.5.281

#include <iostream>

int main(int argc,char **argv)
{
    std::cerr << "Hello World\n";
    return 0;
}

icpc hello.cc

Undefined symbols for architecture x86_64:
  "__ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC1Emc", referenced from:
      _main in icpcRo7DOA.o
ld: symbol(s) not found for architecture x86_64

 

The load is clearly missing a library. The same routine compiles for Apple g++

/usr/bin/g++ hello.cc

./a.out

Hello World

 

Where is the missing library and when will this compiler version be fixed?

 

 

0 Kudos
4 Replies
Sushma_P_Intel
Employee
193 Views

Hello John,

Thanks for reaching out to us. We will get back to you.

 

Regards,

Sushma

Varsha_M_Intel
Employee
193 Views

HI,

We do not have support for Xcode 11 with 19.0.5. Please see below-

https://software.intel.com/en-us/articles/intel-c-compiler-190-for-macos-release-notes-for-intel-par...

-Varsha

John_G_8
Beginner
193 Views

Yes, this I understand. The fact that you say "do not" rather than "do not yet" is troubling, but is probably just an inaccurate statement. Unfortunately the inability of Intel to keep up with Xcode renders it mostly unusable by me. This problem is not new, and has troubled me repeatedly. Previously it was Intel does not support Xcode 10, revert to Xcode 9. It took you about half a year to fix that one. Unless Intel can come up with a method that permanently addresses the issue that every time Apple updates Xcode, the Intel compilers break, I don't seem much benefit in using it. GNU doesn't have this problem, or at least has a way of dealing with it via the use of "-isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk" as a command line option to tell the compiler where the system libraries are located. You have the option -isysroot too, but it doesn't work to solve the linking problem. Interestingly, the issue with g++ was only finding the system include files. Linking worked. It seems that Intel icpc found the headers but not the link libraries. Even pointing to these directly on the compiler command line didn't work for me. There must be some way you can provide command line arguments to allow such workarounds. Until you do, I am afraid the Intel compilers are simply not worth the money for Apple systems.

I am being contacted by one of your sales reps right now to renew my license. She is a very nice person and is quite helpful, but she can't solve this problem. It seems that Intel does not chose to provide the development resources to properly support Apple systems. This is not your fault and is surely a management decision. To me this just means they don't care much about this market niche, or else whenever Apple updated Xcode you would release a supporting version of your compilers within weeks if not days. You have apparently known about this issue for almost a year, and still no workarounds are provided. Perhaps you have beta versions we could be using. Why is this not a suggested remedy?

Viet_H_Intel
Moderator
193 Views

PSXE2020 should support  xCode version 11.2.