I am having problems with the community edition of PGI 16.10 installed on macOS 10.11.6.
When compiling the following code
#include <iostream>
#include <tuple>
int main()
{
auto a = std::make_tuple(10,"Hello", 3.414);
return 0;
}
the command
pgc++ -std=c++11 main.cxx
yields the error
“main.cxx”, line 6: error: namespace “std” has no member “make_tuple”
auto a = std::make_tuple(10,“Hello”, 3.414);
^
1 error detected in the compilation of “main.cxx”.
I used the makelocalrc command to set
PGI directory /opt/pgi/osx86-64
PGI version 16.10
PATH entry /opt/pgi/osx86-64/16.10/bin
GCC directory /Applications/Xcode.app/Contents/Developer/usr/lib/llvm-gcc/4.2.1
GCC headers /usr/local/include /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/…/lib/clang/8.0.0/include /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include /usr/include /System/Library/Frameworks /Library/Frameworks
GCC version 4.2.1
localrc exists and is the same
If you have Xcode 8.3, move back to Xcode 8.2, or apply the following
workaround (TPR 24216)
Any C++ source file that includes one of the standard include files or will get six error messages similar to: " error: expected a “;” ~__tree_node_base() _LIBCPP_EQUAL_DELETE;". (These will be in addition to the five errors from problem #1, if that problem hasn’t been fixed yet.) There are two ways to get past this problem: (1) Compile with “-D _LIBCPP_EQUAL_DELETE=”. (The equals sign at the end of the option is necessary.) (2) Edit the file osx86-64/17.4/include/ __config8XC in the compiler installation directory, adding the text: #ifdef _LIBCPP_HAS_NO_DELETED_FUNCTIONS #define _LIBCPP_EQUAL_DELETE #else #define _LIBCPP_EQUAL_DELETE = delete #endif
right after the section that #defines _LIBCPP_DEFAULT
If you have Xcode 8.3, move back to Xcode 8.2, or apply the following
workaround (TPR 24216)
Any C++ source file that includes one of the standard include files or will get six error messages similar to: " error: expected a “;” ~__tree_node_base() _LIBCPP_EQUAL_DELETE;". (These will be in addition to the five errors from problem #1, if that problem hasn’t been fixed yet.) There are two ways to get past this problem: (1) Compile with “-D _LIBCPP_EQUAL_DELETE=”. (The equals sign at the end of the option is necessary.) (2) Edit the file osx86-64/17.4/include/ __config8XC in the compiler installation directory, adding the text: #ifdef _LIBCPP_HAS_NO_DELETED_FUNCTIONS #define _LIBCPP_EQUAL_DELETE #else #define _LIBCPP_EQUAL_DELETE = delete #endif
right after the section that #defines _LIBCPP_DEFAULT