rres icon indicating copy to clipboard operation
rres copied to clipboard

Compile errors with mingw

Open RudyFisher7 opened this issue 2 years ago • 0 comments

This happens with the rres-raylib.h include. Doesn't appear to be present in rres.h. Here is the printout. I don't have any special compiler options enabled, just the default settings that CLion uses with a CMake project.

I love what this project has to offer (if I could get to compile🙈 ). I appreciate all the hard work that has been put into this and raylib and raygui and its approach to giving the game dev freedom to design his/her own systems.

I am a little concerned using these frameworks though, due to these type miss-matching... raygui has similar miss-matching with its use of enum values that just produce warnings... 

In file included from C:/dev/game_project_root/game/main.cpp:11: C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h: In function 'char* LoadTextFromResource(rresResourceChunk)': C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h:209:49: error: invalid conversion from 'int*' to 'unsigned int*' [-fpermissive] 209 | text = LoadTextFromResourceChunk(chunk, &codeLang); | ^~~~~~~~~ | | | int* C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h:167:79: note: initializing argument 2 of 'char* LoadTextFromResourceChunk(rresResourceChunk, unsigned int*)' 167 | static char LoadTextFromResourceChunk(rresResourceChunk chunk, unsigned int codeLang); // Load chunk: RRES_DATA_TEXT | ~~~~~~~~~~~~~~^~~~~~~~ C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h:216:41: error: invalid conversion from 'void' to 'char' [-fpermissive] 216 | text = LoadDataFromResourceChunk(chunk, &size); | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ | | | void* C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h:223:16: error: invalid conversion from 'void*' to 'char*' [-fpermissive] 223 | text = data; | ^~~~ | | | void* C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h: In function 'Image LoadImageFromResource(rresResourceChunk)': C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h:241:56: error: invalid conversion from 'void*' to 'unsigned char*' [-fpermissive] 241 | unsigned char data = LoadDataFromResourceChunk(chunk, &dataSize); | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ | | | void C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h:256:65: error: invalid conversion from 'void*' to 'const char*' [-fpermissive] 256 | image = LoadImageFromMemory(GetFileExtension(chunk.data.raw), data, dataSize); | ~~~~~~~~~~~^~~ | | | void* In file included from C:/dev/game_project_root/game/main.cpp:5: C:/dev/game_project_root/lib/third_party/raylib/src/raylib.h:1108:48: note: initializing argument 1 of 'const char* GetFileExtension(const char*)' 1108 | RLAPI const char GetFileExtension(const char fileName); // Get pointer to extension for a filename string (includes dot: '.png') | ~~~~~~~~~~~~^~~~~~~~ C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h:256:71: error: invalid conversion from 'void' to 'const unsigned char' [-fpermissive] 256 | image = LoadImageFromMemory(GetFileExtension(chunk.data.raw), data, dataSize); | ^~~~ | | | void* C:/dev/game_project_root/lib/third_party/raylib/src/raylib.h:1280:76: note: initializing argument 2 of 'Image LoadImageFromMemory(const char*, const unsigned char*, int)' 1280 | RLAPI Image LoadImageFromMemory(const char fileType, const unsigned char fileData, int dataSize); // Load image from memory buffer, fileType refers to extension: i.e. '.png' | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h: In function 'Wave LoadWaveFromResource(rresResourceChunk)': C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h:285:56: error: invalid conversion from 'void' to 'unsigned char' [-fpermissive] 285 | unsigned char data = LoadDataFromResourceChunk(chunk, &dataSize); | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ | | | void C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h:300:63: error: invalid conversion from 'void*' to 'const char*' [-fpermissive] 300 | wave = LoadWaveFromMemory(GetFileExtension(chunk.data.raw), data, dataSize); | ~~~~~~~~~~~^~~ | | | void* C:/dev/game_project_root/lib/third_party/raylib/src/raylib.h:1108:48: note: initializing argument 1 of 'const char* GetFileExtension(const char*)' 1108 | RLAPI const char GetFileExtension(const char fileName); // Get pointer to extension for a filename string (includes dot: '.png') | ~~~~~~~~~~~~^~~~~~~~ C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h:300:69: error: invalid conversion from 'void' to 'const unsigned char' [-fpermissive] 300 | wave = LoadWaveFromMemory(GetFileExtension(chunk.data.raw), data, dataSize); | ^~~~ | | | void* C:/dev/game_project_root/lib/third_party/raylib/src/raylib.h:1570:74: note: initializing argument 2 of 'Wave LoadWaveFromMemory(const char*, const unsigned char*, int)' 1570 | RLAPI Wave LoadWaveFromMemory(const char fileType, const unsigned char fileData, int dataSize); // Load wave from memory buffer, fileType refers to extension: i.e. '.wav' | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h: In function 'Font LoadFontFromResource(rresResourceMulti)': C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h:364:63: error: invalid conversion from 'void' to 'unsigned char' [-fpermissive] 364 | unsigned char rawData = LoadDataFromResourceChunk(multi.chunks[0], &dataSize); | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ | | | void C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h:380:77: error: invalid conversion from 'void*' to 'const char*' [-fpermissive] 380 | font = LoadFontFromMemory(GetFileExtension(multi.chunks[0].data.raw), rawData, dataSize, 32, NULL, 0); | ~~~~~~~~~~~~~~~~~~~~~^~~ | | | void* C:/dev/game_project_root/lib/third_party/raylib/src/raylib.h:1108:48: note: initializing argument 1 of 'const char* GetFileExtension(const char*)' 1108 | RLAPI const char GetFileExtension(const char fileName); // Get pointer to extension for a filename string (includes dot: '.png') | ~~~~~~~~~~~~^~~~~~~~ C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h:380:83: error: invalid conversion from 'void' to 'const unsigned char' [-fpermissive] 380 | font = LoadFontFromMemory(GetFileExtension(multi.chunks[0].data.raw), rawData, dataSize, 32, NULL, 0); | ^~~~~~~ | | | void* C:/dev/game_project_root/lib/third_party/raylib/src/raylib.h:1407:74: note: initializing argument 2 of 'Font LoadFontFromMemory(const char*, const unsigned char*, int, int, int*, int)' 1407 | RLAPI Font LoadFontFromMemory(const char fileType, const unsigned char fileData, int dataSize, int fontSize, int codepoints, int codepointCount); // Load font from memory buffer, fileType refers to extension: i.e. '.ttf' | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h: In function 'int UnpackResourceChunk(rresResourceChunk)': C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h:541:60: error: invalid conversion from 'void' to 'unsigned char' [-fpermissive] 541 | case RRES_CIPHER_NONE: decryptedData = chunk->data.raw; break; | ~~~~~~~~~~~~^~~ | | | void* C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h:763:40: error: invalid conversion from 'void*' to 'unsigned char*' [-fpermissive] 763 | uncompData = qoi_decode(decryptedData, chunk->info.packedSize, &desc, 0); | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | | | void* C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h: In function 'void* LoadDataFromResourceLink(rresResourceChunk, unsigned int*)': C:/dev/game_project_root/lib/third_party/raylib/src/raylib.h:125:39: error: invalid conversion from 'void*' to 'unsigned char*' [-fpermissive] 125 | #define RL_CALLOC(n,sz) calloc(n,sz) | ~~~~~~^~~~~~ | | | void* C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h:831:35: note: in expansion of macro 'RL_CALLOC' 831 | unsigned char linkFilePath = RL_CALLOC(chunk.data.props[0], 1); | ^~~~~~~~~ C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h:837:12: error: invalid conversion from 'unsigned char' to 'char*' [-fpermissive] 837 | strcpy(fullFilePath, baseDir); | ^~~~~~~~~~~~ | | | unsigned char* In file included from C:/dev/game_project_root/lib/third_party/raygui/src/raygui.h:1032: C:/Program Files/JetBrains/CLion 2023.2.2/bin/mingw/x86_64-w64-mingw32/include/string.h:61:45: note: initializing argument 1 of 'char* strcpy(char*, const char*)' 61 | char * __cdecl strcpy(char * restrict _Dest,const char * restrict _Source); | ~~~~~~~~~~~~~~~~~~~~^~~~~ C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h:838:12: error: invalid conversion from 'unsigned char*' to 'char*' [-fpermissive] 838 | strcat(fullFilePath, linkFilePath); | ^~~~~~~~~~~~ | | | unsigned char* C:/Program Files/JetBrains/CLion 2023.2.2/bin/mingw/x86_64-w64-mingw32/include/string.h:62:45: note: initializing argument 1 of 'char* strcat(char*, const char*)' 62 | char * __cdecl strcat(char * restrict _Dest,const char * restrict _Source); | ~~~~~~~~~~~~~~~~~~~~^~~~~ C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h:838:26: error: invalid conversion from 'unsigned char*' to 'const char*' [-fpermissive] 838 | strcat(fullFilePath, linkFilePath); | ^~~~~~~~~~~~ | | | unsigned char* C:/Program Files/JetBrains/CLion 2023.2.2/bin/mingw/x86_64-w64-mingw32/include/string.h:62:77: note: initializing argument 2 of 'char* strcat(char*, const char*)' 62 | char * __cdecl strcat(char * restrict _Dest,const char * restrict _Source); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h:842:20: error: invalid conversion from 'unsigned char*' to 'const char*' [-fpermissive] 842 | if (FileExists(fullFilePath)) | ^~~~~~~~~~~~ | | | unsigned char* C:/dev/game_project_root/lib/third_party/raylib/src/raylib.h:1104:35: note: initializing argument 1 of 'bool FileExists(const char*)' 1104 | RLAPI bool FileExists(const char fileName); // Check if file exists | ~~~~~~~~~~~~^~~~~~~~ C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h:846:29: error: invalid conversion from 'unsigned char' to 'const char*' [-fpermissive] 846 | if (IsFileExtension(linkFilePath, ".txt;.md;.vs;.fs;.info;.c;.h;.json;.xml;.glsl")) // Text file | ^~~~~~~~~~~~ | | | unsigned char* C:/dev/game_project_root/lib/third_party/raylib/src/raylib.h:1106:40: note: initializing argument 1 of 'bool IsFileExtension(const char*, const char*)' 1106 | RLAPI bool IsFileExtension(const char fileName, const char ext); // Check file extension (including point: .png, .wav) | ~~~~~~~~~~~~^~~~~~~~ C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h:848:33: error: invalid conversion from 'unsigned char' to 'const char' [-fpermissive] 848 | data = LoadFileText(fullFilePath); | ^~~~~~~~~~~~ | | | unsigned char* C:/dev/game_project_root/lib/third_party/raylib/src/raylib.h:1098:38: note: initializing argument 1 of 'char* LoadFileText(const char*)' 1098 | RLAPI char LoadFileText(const char fileName); // Load text data from file (read), returns a '\0' terminated string | ~~~~~~~~~~~~^~~~~~~~ C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h:849:32: error: invalid conversion from 'void' to 'const char' [-fpermissive] 849 | size = TextLength(data); | ^~~~ | | | void C:/dev/game_project_root/lib/third_party/raylib/src/raylib.h:1446:43: note: initializing argument 1 of 'unsigned int TextLength(const char*)' 1446 | RLAPI unsigned int TextLength(const char text); // Get text length, checks for '\0' ending | ~~~~~~~~~~~~^~~~ C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h:851:34: error: invalid conversion from 'unsigned char' to 'const char*' [-fpermissive] 851 | else data = LoadFileData(fullFilePath, size); | ^~~~~~~~~~~~ | | | unsigned char* C:/dev/game_project_root/lib/third_party/raylib/src/raylib.h:1094:47: note: initializing argument 1 of 'unsigned char* LoadFileData(const char*, int*)' 1094 | RLAPI unsigned char LoadFileData(const char fileName, int dataSize); // Load file data as byte array (read) | ~~~~~~~~~~~~^~~~~~~~ C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h:851:48: error: invalid conversion from 'unsigned int' to 'int' [-fpermissive] 851 | else data = LoadFileData(fullFilePath, size); | ^~~~ | | | unsigned int C:/dev/game_project_root/lib/third_party/raylib/src/raylib.h:1094:62: note: initializing argument 2 of 'unsigned char* LoadFileData(const char*, int*)' 1094 | RLAPI unsigned char LoadFileData(const char fileName, int dataSize); // Load file data as byte array (read) | ~~~~~^~~~~~~~ C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h: In function 'char LoadTextFromResourceChunk(rresResourceChunk, unsigned int)': C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h:895:12: error: invalid conversion from 'void' to 'char*' [-fpermissive] 895 | return text; | ^~~~ | | | void* C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h: In function 'unsigned int* ComputeMD5(unsigned char*, int)': C:/dev/game_project_root/lib/third_party/raylib/src/raylib.h:125:39: error: invalid conversion from 'void*' to 'unsigned char*' [-fpermissive] 125 | #define RL_CALLOC(n,sz) calloc(n,sz) | ~~~~~~^~~~~~ | | | void* C:/dev/game_project_root/lib/third_party/rres/src/rres-raylib.h:1031:26: note: in expansion of macro 'RL_CALLOC' 1031 | unsigned char *msg = RL_CALLOC(newDataSize + 64, 1); // Also appends "0" bits (we alloc also 64 extra bytes...) | ^~~~~~~~~ ninja: build stopped: subcommand failed.

RudyFisher7 avatar Oct 29 '23 01:10 RudyFisher7