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

icpc totally broken Apple

John_G_8
Beginner
1,164 Views

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
5 Replies
Sushma_P_Intel
Employee
1,164 Views

Hello John,

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

 

Regards,

Sushma

0 Kudos
Varsha_M_Intel
Employee
1,164 Views
0 Kudos
John_G_8
Beginner
1,164 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?

0 Kudos
Viet_H_Intel
Moderator
1,164 Views

PSXE2020 should support  xCode version 11.2.

0 Kudos
MaheshB_Intel
Moderator
907 Views

Hi ,

We haven't heard back from you for long time. We assume that the issue is resolved. We are closing this thread. We will no longer monitor this thread. Please raise a new thread if you have any further issues. All communication on this thread will be considered community only.

Thanks,


0 Kudos
Reply