Итак, кто-то недавно представил некоторые исправления ошибок в мой проект, и они также включили это:
#ifdef _MSC_VER
#ifndef PATH_MAX
#define PATH_MAX _MAX_PATH
#endif
#define realpath(N,R) _fullpath((R),(N),_MAX_PATH)
#endif
Проблема в том, что я использую Code :: Blocks с MinGW, поэтому, когда я пытаюсь скомпилировать, он говорит, что realpath () вообще не определен. Отправитель не предоставил никакой альтернативы, и когда я пытаюсь найти realpath без MSVC, я получаю только использование realpath с MSVC. У кого-нибудь есть что-то, что я могу использовать вместо MinGW?
realpath()
является функцией POSIX, поэтому MinGW не находит ее Что вы могли бы сделать, это использовать библиотеку boost :: filesystem в качестве кроссплатформенной альтернативы, чтобы найти абсолютный путь. Учебник для boost :: filesystem доступен ниже:
http://www.boost.org/doc/libs/1_45_0/libs/filesystem/v2/doc/index.htm#tutorial
Там уже было несколько вопросов по библиотеке boost :: filesystem.
Ссылка на тот, который может быть полезен, была прикреплена ниже:
Как я "нормализовать" путь с использованием boost :: filesystem?
Других решений пока нет …