Как исправить ошибку, связанную с GCC8 и sys / stat.h? - PullRequest
0 голосов
/ 07 апреля 2019

Я пытаюсь скомпилировать код, который обычно компилируется просто отлично, но в MacOS Mojave с GCC8 я получаю ошибку, связанную с gid_t. Используемая версия GCC была установлена ​​с использованием MacPorts.

Я скомпилировал этот код ранее на других системах с использованием различных компиляторов, и это, похоже, проблема с GCC8 и MacOS из того, что я могу вывести.

Вот моя строка компиляции и связанная с ней ошибка:

g++ -c -DNO_MCDB -DNETCDF -I. -I/opt/local/include -D__USE_XOPEN2K8 -O2  ./MConf/src/loadwout.cpp -o obj/loadwout.o
In file included from ./MConf/src/loadwout.cpp:19:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/stat.h:182:13: error: 'gid_t' does not name a type; did you mean 'uid_t'?
 struct stat __DARWIN_STRUCT_STAT64;
             ^~~~~~~~~~~~~~~~~~~~~~
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/stat.h:221:15: error: 'gid_t' does not name a type; did you mean 'uid_t'?
 struct stat64 __DARWIN_STRUCT_STAT64;
               ^~~~~~~~~~~~~~~~~~~~~~

Любая помощь будет оценена. Я не разработчик кода, но я проверял это с GCC7 в прошлом, и тот же исходный код скомпилирован нормально.

...