Сборка Assimp с помощью MSYS

#c #msys2 #building #assimp

#c #msys2 #сборка #assimp

Вопрос:

Привет, я пытался создать Assimp. Я использую gcc (10.2.0) и MSYS2.

Можно загрузить пакет Assimp из репозитория пакетов MSYS, но я предпочитаю создавать Assimp с нуля.

при сборке Assimp появилось сообщение об ошибке:

 /c/Users/MY_NAME/Downloads/assimp-5.0.1/assimp-5.0.1/include/assimp/StringComparison.h: In function ‘int Assimp::ASSIMP_stricmp(const char*, const char*)’:
/c/Users/MY_NAME/Downloads/assimp-5.0.1/assimp-5.0.1/include/assimp/StringComparison.h:146:14: error: ‘::strcasecmp’ has not been declared; did you mean ‘strncmp’?
 

Я выполнил cmake со следующими командами:

 cmake  CMakelists.txt  -S ./  -B ./BUILD_ASSIMP 
 

затем я выполнил «make»

Не могли бы вы мне помочь?

Комментарии:

1. Если вы покажете, что находится в строке 7 zlib1.rc, тогда у людей будет больше представления о том, что происходит не так с вашей сборкой.

2. Вы используете MSYS2, а не MSYS, верно? Они разные.

3. Почему вы хотите создать его самостоятельно? MSYS2 позволяет загружать предварительно созданный.

4. Я использую MSYS2

5. Вот предложение (zlib1.rc: 7): VS_VERSION_INFO VERSIONINFO ПЕРЕМЕЩАЕМЫЙ НЕЧИСТЫЙ LOADONCALL ОТБРАСЫВАЕМЫЙ

Ответ №1:

вызов функции, который создает вашу проблему, является расширением стандарта Posix. у нас есть собственная реализация для этого, когда функция не поддерживается вашим компилятором. К сожалению, проверка, существует ли вызов, была неправильной для вашей среды.

Я только что подготовил обновление для нашего текущего мастера, чтобы обойти эту проблему Asset-Importer-Lib @github. Было бы здорово, если бы вы могли использовать последнюю версию master. Проблема будет закрыта в следующем выпуске.