Building instructions very unclear
As the title says. The Readme's compilation instructions are unclear. I've seen elsewhere here that the devs are busy handling the Sonic Unleashed so I don't expect this to get fixed quickly.
Here's what I did, despite the fact that it didn't generate the executables mentioned in the readme:
- clone the repo
- initalized submodules
- created a build directory and went into it
- ran "cmake .. -DCMAKE_BUILD_TYPE=Release"
- ran "msbuild XenonRecom-All.sln -t:Clean -p:Configuration=Release" (omitting the release config param made the build fail)
Then there weren't any exes in the place I looked. If someone can point me to better instructions or just update them in the readme, that'd be great for everyone!
I'm in the same boat. Can't find any exes. I figured it was the errors I was getting in Visual Studio.
If you guys struggle with Visual Studio, you might want to give MSYS2 a try, I wrote the steps in my fork of the project, hopefully it will be good enough
If you guys struggle with Visual Studio, you might want to give MSYS2 a try, I wrote the steps in my fork of the project, hopefully it will be good enough
Thanks! I got Msys2 up and running, installed the necssary packages, and now im stuck at the cloned repo part. I cloned through msys2 and it says it's done but I can't find the repo. It's not in my C drive. When I did this with Visual Studio, I found it in C/Users/Me/XenonRecomp but it doesn't seem to know where it even is. Accessing my C drive by going into the /c folder of msys2 doesn't seem to work and I can't put the command cmake -DCMAKE_BUILD_TYPE=Debug.
Everytime I get so close, There's always something! Thank you so much for your time if you can somehow help with this! It really means the world
If you guys struggle with Visual Studio, you might want to give MSYS2 a try, I wrote the steps in my fork of the project, hopefully it will be good enough
Thanks! I got Msys2 up and running, installed the necssary packages, and now im stuck at the cloned repo part. I cloned through msys2 and it says it's done but I can't find the repo. It's not in my C drive. When I did this with Visual Studio, I found it in C/Users/Me/XenonRecomp but it doesn't seem to know where it even is. Accessing my C drive by going into the /c folder of msys2 doesn't seem to work and I can't put the command cmake -DCMAKE_BUILD_TYPE=Debug.
Everytime I get so close, There's always something! Thank you so much for your time if you can somehow help with this! It really means the world
I vaguely remember /mnt/c/ being the correct directory. This might've been on WSL though, I am unsure.
If you guys struggle with Visual Studio, you might want to give MSYS2 a try, I wrote the steps in my fork of the project, hopefully it will be good enough
Thanks! I got Msys2 up and running, installed the necssary packages, and now im stuck at the cloned repo part. I cloned through msys2 and it says it's done but I can't find the repo. It's not in my C drive. When I did this with Visual Studio, I found it in C/Users/Me/XenonRecomp but it doesn't seem to know where it even is. Accessing my C drive by going into the /c folder of msys2 doesn't seem to work and I can't put the command cmake -DCMAKE_BUILD_TYPE=Debug.
Everytime I get so close, There's always something! Thank you so much for your time if you can somehow help with this! It really means the world
Where did you clone the repo from, your MSYS2 ?
If you guys struggle with Visual Studio, you might want to give MSYS2 a try, I wrote the steps in my fork of the project, hopefully it will be good enough
Thanks for the instructions! I tried it on my machine but ninja kept throwing errors saying it couldn't find files that did exist. It was also printing Windows-style paths even though I ran it in the MSYS2 terminal so not sure what's going on there.
If you guys struggle with Visual Studio, you might want to give MSYS2 a try, I wrote the steps in my fork of the project, hopefully it will be good enough
Thanks! I got Msys2 up and running, installed the necssary packages, and now im stuck at the cloned repo part. I cloned through msys2 and it says it's done but I can't find the repo. It's not in my C drive. When I did this with Visual Studio, I found it in C/Users/Me/XenonRecomp but it doesn't seem to know where it even is. Accessing my C drive by going into the /c folder of msys2 doesn't seem to work and I can't put the command cmake -DCMAKE_BUILD_TYPE=Debug. Everytime I get so close, There's always something! Thank you so much for your time if you can somehow help with this! It really means the world
Where did you clone the repo from, your MSYS2 ?
I try cloning it with Git and it would make the folder but couldn't find where the folder was, so I tried to clone it with MSYS2 and got the same results
If you guys struggle with Visual Studio, you might want to give MSYS2 a try, I wrote the steps in my fork of the project, hopefully it will be good enough
Thanks! I got Msys2 up and running, installed the necssary packages, and now im stuck at the cloned repo part. I cloned through msys2 and it says it's done but I can't find the repo. It's not in my C drive. When I did this with Visual Studio, I found it in C/Users/Me/XenonRecomp but it doesn't seem to know where it even is. Accessing my C drive by going into the /c folder of msys2 doesn't seem to work and I can't put the command cmake -DCMAKE_BUILD_TYPE=Debug. Everytime I get so close, There's always something! Thank you so much for your time if you can somehow help with this! It really means the world
Where did you clone the repo from, your MSYS2 ?
I try cloning it with Git and it would make the folder but couldn't find where the folder was, so I tried to clone it with MSYS2 and got the same results
By default, git for windowsclones all projects in your C:\users\<username> folder. MSYS2 would do it in the directory you ran the command from. Make sure you clone the repo with the --recursive option as well.
If you guys struggle with Visual Studio, you might want to give MSYS2 a try, I wrote the steps in my fork of the project, hopefully it will be good enough
Thanks! I got Msys2 up and running, installed the necssary packages, and now im stuck at the cloned repo part. I cloned through msys2 and it says it's done but I can't find the repo. It's not in my C drive. When I did this with Visual Studio, I found it in C/Users/Me/XenonRecomp but it doesn't seem to know where it even is. Accessing my C drive by going into the /c folder of msys2 doesn't seem to work and I can't put the command cmake -DCMAKE_BUILD_TYPE=Debug. Everytime I get so close, There's always something! Thank you so much for your time if you can somehow help with this! It really means the world
Where did you clone the repo from, your MSYS2 ?
I try cloning it with Git and it would make the folder but couldn't find where the folder was, so I tried to clone it with MSYS2 and got the same results
By default, git for windowsclones all projects in your
C:\users\<username>folder. MSYS2 would do it in the directory you ran the command from. Make sure you clone the repo with the--recursiveoption as well.
--Recursive worked! It gave me all the missing files. Now when I put in cmake -DCMAKE_BUILD_TYPE=Debug in git, it says that something was build but I can't seem to find the build.ninja file. Putting in the ninja command doesn't work in either git bash or msys2
I can run the cmake -DCMAKE_BUILD_TYPE=Debug command through MSYS, but it gives me this wall of errors once i run ninja.
[5/34] Building CXX object XenonUtils/CMakeFiles/XenonUtils.dir/xdbf_wrapper.cpp.obj
FAILED: XenonUtils/CMakeFiles/XenonUtils.dir/xdbf_wrapper.cpp.obj
C:\msys64\usr\bin\c++.exe -DNOMINMAX -I"C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/." -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/libmspack/libmspack/mspack" -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/tiny-AES-c" -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/TinySHA1" -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/disasm/." -g -std=gnu++17 -MD -MT XenonUtils/CMakeFiles/XenonUtils.dir/xdbf_wrapper.cpp.obj -MF XenonUtils\CMakeFiles\XenonUtils.dir\xdbf_wrapper.cpp.obj.d -o XenonUtils/CMakeFiles/XenonUtils.dir/xdbf_wrapper.cpp.obj -c "C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xdbf_wrapper.cpp"
In file included from C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xdbf.h:3,
from C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xdbf_wrapper.h:4,
from C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xdbf_wrapper.cpp:1:
C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/./xbox.h:248:26: error: member ΓÇÿbe<unsigned int> _XXOVERLAPPED::<unnamed union>::<unnamed struct>::ErrorΓÇÖ with constructor not allowed in anonymous aggregate
248 | be<uint32_t> Error;
| ^~~~~
C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/./xbox.h:249:26: error: member ΓÇÿbe<unsigned int> _XXOVERLAPPED::<unnamed union>::<unnamed struct>::LengthΓÇÖ with constructor not allowed in anonymous aggregate
249 | be<uint32_t> Length;
| ^~~~~~
C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xdbf.h:133:22: error: member ΓÇÿbe<short unsigned int> XDBFTitleID::<unnamed struct>::u16ΓÇÖ with constructor not allowed in anonymous aggregate
133 | be<uint16_t> u16;
| ^~~
[8/34] Building CXX object XenonUtils/CMakeFiles/XenonUtils.dir/image.cpp.obj
FAILED: XenonUtils/CMakeFiles/XenonUtils.dir/image.cpp.obj
C:\msys64\usr\bin\c++.exe -DNOMINMAX -I"C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/." -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/libmspack/libmspack/mspack" -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/tiny-AES-c" -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/TinySHA1" -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/disasm/." -g -std=gnu++17 -MD -MT XenonUtils/CMakeFiles/XenonUtils.dir/image.cpp.obj -MF XenonUtils\CMakeFiles\XenonUtils.dir\image.cpp.obj.d -o XenonUtils/CMakeFiles/XenonUtils.dir/image.cpp.obj -c "C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/image.cpp"
In file included from C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xex.h:3,
from C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/image.cpp:3:
C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xbox.h:248:26: error: member ΓÇÿbe<unsigned int> _XXOVERLAPPED::<unnamed union>::<unnamed struct>::ErrorΓÇÖ with constructor not allowed in anonymous aggregate
248 | be<uint32_t> Error;
| ^~~~~
C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xbox.h:249:26: error: member ΓÇÿbe<unsigned int> _XXOVERLAPPED::<unnamed union>::<unnamed struct>::LengthΓÇÖ with constructor not allowed in anonymous aggregate
249 | be<uint32_t> Length;
| ^~~~~~
[12/34] Building CXX object XenonUtils/CMakeFiles/XenonUtils.dir/xex_patcher.cpp.obj
FAILED: XenonUtils/CMakeFiles/XenonUtils.dir/xex_patcher.cpp.obj
C:\msys64\usr\bin\c++.exe -DNOMINMAX -I"C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/." -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/libmspack/libmspack/mspack" -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/tiny-AES-c" -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/TinySHA1" -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/disasm/." -g -std=gnu++17 -MD -MT XenonUtils/CMakeFiles/XenonUtils.dir/xex_patcher.cpp.obj -MF XenonUtils\CMakeFiles\XenonUtils.dir\xex_patcher.cpp.obj.d -o XenonUtils/CMakeFiles/XenonUtils.dir/xex_patcher.cpp.obj -c "C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xex_patcher.cpp"
In file included from C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xex.h:3,
from C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xex_patcher.cpp:13:
C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xbox.h:248:26: error: member ΓÇÿbe<unsigned int> _XXOVERLAPPED::<unnamed union>::<unnamed struct>::ErrorΓÇÖ with constructor not allowed in anonymous aggregate
248 | be<uint32_t> Error;
| ^~~~~
C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xbox.h:249:26: error: member ΓÇÿbe<unsigned int> _XXOVERLAPPED::<unnamed union>::<unnamed struct>::LengthΓÇÖ with constructor not allowed in anonymous aggregate
249 | be<uint32_t> Length;
| ^~~~~~
[13/34] Building CXX object XenonUtils/CMakeFiles/XenonUtils.dir/xex.cpp.obj
FAILED: XenonUtils/CMakeFiles/XenonUtils.dir/xex.cpp.obj
C:\msys64\usr\bin\c++.exe -DNOMINMAX -I"C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/." -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/libmspack/libmspack/mspack" -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/tiny-AES-c" -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/TinySHA1" -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/disasm/." -g -std=gnu++17 -MD -MT XenonUtils/CMakeFiles/XenonUtils.dir/xex.cpp.obj -MF XenonUtils\CMakeFiles\XenonUtils.dir\xex.cpp.obj.d -o XenonUtils/CMakeFiles/XenonUtils.dir/xex.cpp.obj -c "C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xex.cpp"
In file included from C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xex.h:3,
from C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xex.cpp:1:
C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xbox.h:248:26: error: member ΓÇÿbe<unsigned int> _XXOVERLAPPED::<unnamed union>::<unnamed struct>::ErrorΓÇÖ with constructor not allowed in anonymous aggregate
248 | be<uint32_t> Error;
| ^~~~~
C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xbox.h:249:26: error: member ΓÇÿbe<unsigned int> _XXOVERLAPPED::<unnamed union>::<unnamed struct>::LengthΓÇÖ with constructor not allowed in anonymous aggregate
249 | be<uint32_t> Length;
| ^~~~~~
[14/34] Building CXX object thirdparty/fmt/CMakeFiles/fmt.dir/src/format.cc.obj
ninja: build stopped: subcommand failed.
Trying to clone libc+.dll returns cp: cannot stat '/clang64/bin/libc++.dll/': Not a directory.
I can run the
cmake -DCMAKE_BUILD_TYPE=Debugcommand through MSYS, but it gives me this wall of errors once i runninja.[5/34] Building CXX object XenonUtils/CMakeFiles/XenonUtils.dir/xdbf_wrapper.cpp.obj FAILED: XenonUtils/CMakeFiles/XenonUtils.dir/xdbf_wrapper.cpp.obj C:\msys64\usr\bin\c++.exe -DNOMINMAX -I"C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/." -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/libmspack/libmspack/mspack" -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/tiny-AES-c" -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/TinySHA1" -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/disasm/." -g -std=gnu++17 -MD -MT XenonUtils/CMakeFiles/XenonUtils.dir/xdbf_wrapper.cpp.obj -MF XenonUtils\CMakeFiles\XenonUtils.dir\xdbf_wrapper.cpp.obj.d -o XenonUtils/CMakeFiles/XenonUtils.dir/xdbf_wrapper.cpp.obj -c "C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xdbf_wrapper.cpp" In file included from C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xdbf.h:3, from C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xdbf_wrapper.h:4, from C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xdbf_wrapper.cpp:1: C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/./xbox.h:248:26: error: member ΓÇÿbe
_XXOVERLAPPED:: :: ::ErrorΓÇÖ with constructor not allowed in anonymous aggregate 248 | be<uint32_t> Error; | ^~~~~ C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/./xbox.h:249:26: error: member ΓÇÿbe _XXOVERLAPPED:: :: ::LengthΓÇÖ with constructor not allowed in anonymous aggregate 249 | be<uint32_t> Length; | ^~~~~~ C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xdbf.h:133:22: error: member ΓÇÿbe XDBFTitleID:: ::u16ΓÇÖ with constructor not allowed in anonymous aggregate 133 | be<uint16_t> u16; | ^~~ [8/34] Building CXX object XenonUtils/CMakeFiles/XenonUtils.dir/image.cpp.obj FAILED: XenonUtils/CMakeFiles/XenonUtils.dir/image.cpp.obj C:\msys64\usr\bin\c++.exe -DNOMINMAX -I"C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/." -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/libmspack/libmspack/mspack" -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/tiny-AES-c" -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/TinySHA1" -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/disasm/." -g -std=gnu++17 -MD -MT XenonUtils/CMakeFiles/XenonUtils.dir/image.cpp.obj -MF XenonUtils\CMakeFiles\XenonUtils.dir\image.cpp.obj.d -o XenonUtils/CMakeFiles/XenonUtils.dir/image.cpp.obj -c "C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/image.cpp" In file included from C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xex.h:3, from C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/image.cpp:3: C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xbox.h:248:26: error: member ΓÇÿbe _XXOVERLAPPED:: :: ::ErrorΓÇÖ with constructor not allowed in anonymous aggregate 248 | be<uint32_t> Error; | ^~~~~ C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xbox.h:249:26: error: member ΓÇÿbe _XXOVERLAPPED:: :: ::LengthΓÇÖ with constructor not allowed in anonymous aggregate 249 | be<uint32_t> Length; | ^~~~~~ [12/34] Building CXX object XenonUtils/CMakeFiles/XenonUtils.dir/xex_patcher.cpp.obj FAILED: XenonUtils/CMakeFiles/XenonUtils.dir/xex_patcher.cpp.obj C:\msys64\usr\bin\c++.exe -DNOMINMAX -I"C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/." -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/libmspack/libmspack/mspack" -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/tiny-AES-c" -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/TinySHA1" -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/disasm/." -g -std=gnu++17 -MD -MT XenonUtils/CMakeFiles/XenonUtils.dir/xex_patcher.cpp.obj -MF XenonUtils\CMakeFiles\XenonUtils.dir\xex_patcher.cpp.obj.d -o XenonUtils/CMakeFiles/XenonUtils.dir/xex_patcher.cpp.obj -c "C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xex_patcher.cpp" In file included from C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xex.h:3, from C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xex_patcher.cpp:13: C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xbox.h:248:26: error: member ΓÇÿbe _XXOVERLAPPED:: :: ::ErrorΓÇÖ with constructor not allowed in anonymous aggregate 248 | be<uint32_t> Error; | ^~~~~ C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xbox.h:249:26: error: member ΓÇÿbe _XXOVERLAPPED:: :: ::LengthΓÇÖ with constructor not allowed in anonymous aggregate 249 | be<uint32_t> Length; | ^~~~~~ [13/34] Building CXX object XenonUtils/CMakeFiles/XenonUtils.dir/xex.cpp.obj FAILED: XenonUtils/CMakeFiles/XenonUtils.dir/xex.cpp.obj C:\msys64\usr\bin\c++.exe -DNOMINMAX -I"C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/." -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/libmspack/libmspack/mspack" -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/tiny-AES-c" -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/TinySHA1" -I"C:/Users/Lenovo ThinkPad/XenonRecomp/thirdparty/disasm/." -g -std=gnu++17 -MD -MT XenonUtils/CMakeFiles/XenonUtils.dir/xex.cpp.obj -MF XenonUtils\CMakeFiles\XenonUtils.dir\xex.cpp.obj.d -o XenonUtils/CMakeFiles/XenonUtils.dir/xex.cpp.obj -c "C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xex.cpp" In file included from C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xex.h:3, from C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xex.cpp:1: C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xbox.h:248:26: error: member ΓÇÿbe _XXOVERLAPPED:: :: ::ErrorΓÇÖ with constructor not allowed in anonymous aggregate 248 | be<uint32_t> Error; | ^~~~~ C:/Users/Lenovo ThinkPad/XenonRecomp/XenonUtils/xbox.h:249:26: error: member ΓÇÿbe _XXOVERLAPPED:: :: ::LengthΓÇÖ with constructor not allowed in anonymous aggregate 249 | be<uint32_t> Length; | ^~~~~~ [14/34] Building CXX object thirdparty/fmt/CMakeFiles/fmt.dir/src/format.cc.obj ninja: build stopped: subcommand failed. Trying to clone libc+.dllreturnscp: cannot stat '/clang64/bin/libc++.dll/': Not a directory.
The lack of libc++.dll in the clang64 folder indicates to me that you're not using the CLANG64 environment, make sure you launch that one
I'm using MSYS2 CLANG64. I tried redoing the entire process entirely from the MSYS2 terminal, but still no luck. It looks like there's an error while running ninja.
I'm using MSYS2 CLANG64. I tried redoing the entire process entirely from the MSYS2 terminal, but still no luck. It looks like there's an error while running ninja.
Hmmmmm, that's curious. libc++ comes with the mingw-w64-clang-x86_64-libc++ package if you don't already have it, but even without that your output seems to indicate that the compilation is made with g++ so you should set the CC and CXX compiler options to Clang
Was getting errors like "missing libc++.dll, libgcc_s_seh-1.dll and libstdc++-6.dll" so I found the files and copied them into the XenonRecomp folder. The errors have stopped but now the .exe keeps closing after I opened it. Was I suppose to put these files somewhere else?
I suffered through the trial and error of trying to set this up and finally figured it out earlier today thanks to help from @Sakimotor!
I also tried this on Linux a few times but it so far has not worked for me even with @DennisStanistan's instructions from #20.
Summarized instructions for Windows from #21
Install MSYS2 and use the "MSYS2 CLANG64" environment
# Update package index and upgrade system
pacman -Syu
# Sync required packages
pacman -S mingw-w64-x86_64-clang mingw-w64-clang-x86_64-cmake mingw-w64-clang-x86_64-libc++ mingw-w64-x86_64-ninja
# Navigate to XenonRecomp
cd /c/Users/Administrator/git/XenonRecomp
# Generate build files
cmake .
# Build
cmake --build .
Was getting errors like "missing libc++.dll, libgcc_s_seh-1.dll and libstdc++-6.dll" so I found the files and copied them into the XenonRecomp folder. The errors have stopped but now the .exe keeps closing after I opened it. Was I suppose to put these files somewhere else?
The executables are to be used through the terminal
Was getting errors like "missing libc++.dll, libgcc_s_seh-1.dll and libstdc++-6.dll" so I found the files and copied them into the XenonRecomp folder. The errors have stopped but now the .exe keeps closing after I opened it. Was I suppose to put these files somewhere else?
The executables are to be used through the terminal
I got this error
after opening the exe
@halotroop2288
I keep getting this error whenever I run cmake ..
I followed your instructions as you mentioned previously.
I suffered through the trial and error of trying to set this up and finally figured it out earlier today thanks to help from @Sakimotor!
I also tried this on Linux a few times but it so far has not worked for me even with @DennisStanistan's instructions from #20.
Summarized instructions for Windows from #21
Install MSYS2 and use the "MSYS2 CLANG64" environment
Update package index and upgrade system
pacman -Syu
Sync required packages
pacman -S mingw-w64-x86_64-clang mingw-w64-clang-x86_64-cmake mingw-w64-clang-x86_64-libc++ mingw-w64-x86_64-ninja
Navigate to XenonRecomp
cd /c/Users/Administrator/git/XenonRecomp
Generate build files
cmake .
Build
cmake --build .
here is my compiled version for windows https://github.com/bufferpoint/XenonRecomp/releases
I keep getting this error whenever I run
cmake ..
You are missing the compilers. Run this again.
Sync required packages
pacman -S mingw-w64-x86_64-clang mingw-w64-clang-x86_64-cmake mingw-w64-clang-x86_64-libc++ mingw-w64-x86_64-ninja
I also made the big mistake of not recursively cloning. After doing that AND installing the compilers, it worked. Thanks!
I got pretty far along in the process and then got this error when building:
FAILED: XenonUtils/CMakeFiles/XenonUtils.dir/xex_patcher.cpp.obj C:\msys64\clang64\bin\c++.exe -DNOMINMAX -IC:/Users/User/Desktop/blue-dragon/XenonRecomp/XenonUtils/. -IC:/Users/User/Desktop/blue-dragon/XenonRecomp/thirdparty/libmspack/libmspack/mspack -IC:/Users/User/Desktop/blue-dragon/XenonRecomp/thirdparty/tiny-AES-c -IC:/Users/User/Desktop/blue-dragon/XenonRecomp/thirdparty/TinySHA1 -IC:/Users/User/Desktop/blue-dragon/XenonRecomp/thirdparty/disasm/. -g -std=gnu++17 -MD -MT XenonUtils/CMakeFiles/XenonUtils.dir/xex_patcher.cpp.obj -MF XenonUtils\CMakeFiles\XenonUtils.dir\xex_patcher.cpp.obj.d -o XenonUtils/CMakeFiles/XenonUtils.dir/xex_patcher.cpp.obj -c C:/Users/User/Desktop/blue-dragon/XenonRecomp/XenonUtils/xex_patcher.cpp C:/Users/User/Desktop/blue-dragon/XenonRecomp/XenonUtils/xex_patcher.cpp:144:12: error: static declaration of 'lzxDecompress' follows non-static declaration 144 | static int lzxDecompress(const void lzxData, size_t lzxLength, void dst, size_t dstLength, uint32_t windowSize, void windowData, size_t windowDataLength) | ^ C:/Users/User/Desktop/blue-dragon/XenonRecomp/XenonUtils/xex_patcher.h:19:12: note: previous declaration is here 19 | extern int lzxDecompress(const void lzxData, size_t lzxLength, void dst, size_t dstLength, uint32_t windowSize, void windowData, size_t windowDataLength); | ^ C:/Users/User/Desktop/blue-dragon/XenonRecomp/XenonUtils/xex_patcher.cpp:209:26: error: call to 'lzxDecompress' is ambiguous 209 | int result = lzxDecompress(curPatch->patchData, curPatch->compressedLength, &dstData[curPatch->newAddress], curPatch->uncompressedLength, windowSize, &dstData[curPatch->oldAddress], curPatch->uncompressedLength); | ^~~~~~~~~~~~~ C:/Users/User/Desktop/blue-dragon/XenonRecomp/XenonUtils/xex_patcher.h:19:12: note: candidate function 19 | extern int lzxDecompress(const void* lzxData, size_t lzxLength, void* dst, size_t dstLength, uint32_t windowSize, void* windowData, size_t windowDataLength); | ^ C:/Users/User/Desktop/blue-dragon/XenonRecomp/XenonUtils/xex_patcher.cpp:144:12: note: candidate function 144 | static int lzxDecompress(const void lzxData, size_t lzxLength, void dst, size_t dstLength, uint32_t windowSize, void windowData, size_t windowDataLength) | ^ C:/Users/User/Desktop/blue-dragon/XenonRecomp/XenonUtils/xex_patcher.cpp:457:22: error: call to 'lzxDecompress' is ambiguous 457 | resultCode = lzxDecompress(compressBuffer.get(), d - compressBuffer.get(), buffer, uncompressedSize, ((const Xex2FileNormalCompressionInfo)(fileFormatInfo + 1))->windowSize, nullptr, 0); | ^~~~~~~~~~~~~ C:/Users/User/Desktop/blue-dragon/XenonRecomp/XenonUtils/xex_patcher.h:19:12: note: candidate function 19 | extern int lzxDecompress(const void lzxData, size_t lzxLength, void dst, size_t dstLength, uint32_t windowSize, void* windowData, size_t windowDataLength); | ^ C:/Users/User/Desktop/blue-dragon/XenonRecomp/XenonUtils/xex_patcher.cpp:144:12: note: candidate function 144 | static int lzxDecompress(const void *lzxData, size_t lzxLength, void *dst, size_t dstLength, uint32_t windowSize, void *windowData, size_t windowDataLength) | ^ 3 errors generated. [26/34] Building CXX object XenonRecomp/CMakeFiles/XenonRecomp.dir/cmake_pch.hxx.pch ninja: build stopped: subcommand failed.
@OliviaBorghi same
I got pretty far along in the process and then got this error when building:
FAILED: XenonUtils/CMakeFiles/XenonUtils.dir/xex_patcher.cpp.obj C:\msys64\clang64\bin\c++.exe -DNOMINMAX -IC:/Users/User/Desktop/blue-dragon/XenonRecomp/XenonUtils/. -IC:/Users/User/Desktop/blue-dragon/XenonRecomp/thirdparty/libmspack/libmspack/mspack -IC:/Users/User/Desktop/blue-dragon/XenonRecomp/thirdparty/tiny-AES-c -IC:/Users/User/Desktop/blue-dragon/XenonRecomp/thirdparty/TinySHA1 -IC:/Users/User/Desktop/blue-dragon/XenonRecomp/thirdparty/disasm/. -g -std=gnu++17 -MD -MT XenonUtils/CMakeFiles/XenonUtils.dir/xex_patcher.cpp.obj -MF XenonUtils\CMakeFiles\XenonUtils.dir\xex_patcher.cpp.obj.d -o XenonUtils/CMakeFiles/XenonUtils.dir/xex_patcher.cpp.obj -c C:/Users/User/Desktop/blue-dragon/XenonRecomp/XenonUtils/xex_patcher.cpp C:/Users/User/Desktop/blue-dragon/XenonRecomp/XenonUtils/xex_patcher.cpp:144:12: error: static declaration of 'lzxDecompress' follows non-static declaration 144 | static int lzxDecompress(const void lzxData, size_t lzxLength, void dst, size_t dstLength, uint32_t windowSize, void windowData, size_t windowDataLength) | ^ C:/Users/User/Desktop/blue-dragon/XenonRecomp/XenonUtils/xex_patcher.h:19:12: note: previous declaration is here 19 | extern int lzxDecompress(const void lzxData, size_t lzxLength, void dst, size_t dstLength, uint32_t windowSize, void windowData, size_t windowDataLength); | ^ C:/Users/User/Desktop/blue-dragon/XenonRecomp/XenonUtils/xex_patcher.cpp:209:26: error: call to 'lzxDecompress' is ambiguous 209 | int result = lzxDecompress(curPatch->patchData, curPatch->compressedLength, &dstData[curPatch->newAddress], curPatch->uncompressedLength, windowSize, &dstData[curPatch->oldAddress], curPatch->uncompressedLength); | ^~~~~~~~~~~~~ C:/Users/User/Desktop/blue-dragon/XenonRecomp/XenonUtils/xex_patcher.h:19:12: note: candidate function 19 | extern int lzxDecompress(const void* lzxData, size_t lzxLength, void* dst, size_t dstLength, uint32_t windowSize, void* windowData, size_t windowDataLength); | ^ C:/Users/User/Desktop/blue-dragon/XenonRecomp/XenonUtils/xex_patcher.cpp:144:12: note: candidate function 144 | static int lzxDecompress(const void lzxData, size_t lzxLength, void dst, size_t dstLength, uint32_t windowSize, void windowData, size_t windowDataLength) | ^ C:/Users/User/Desktop/blue-dragon/XenonRecomp/XenonUtils/xex_patcher.cpp:457:22: error: call to 'lzxDecompress' is ambiguous 457 | resultCode = lzxDecompress(compressBuffer.get(), d - compressBuffer.get(), buffer, uncompressedSize, ((const Xex2FileNormalCompressionInfo)(fileFormatInfo + 1))->windowSize, nullptr, 0); | ^~~~~~~~~~~~~ C:/Users/User/Desktop/blue-dragon/XenonRecomp/XenonUtils/xex_patcher.h:19:12: note: candidate function 19 | extern int lzxDecompress(const void lzxData, size_t lzxLength, void dst, size_t dstLength, uint32_t windowSize, void* windowData, size_t windowDataLength); | ^ C:/Users/User/Desktop/blue-dragon/XenonRecomp/XenonUtils/xex_patcher.cpp:144:12: note: candidate function 144 | static int lzxDecompress(const void *lzxData, size_t lzxLength, void *dst, size_t dstLength, uint32_t windowSize, void *windowData, size_t windowDataLength) | ^ 3 errors generated. [26/34] Building CXX object XenonRecomp/CMakeFiles/XenonRecomp.dir/cmake_pch.hxx.pch ninja: build stopped: subcommand failed.
Okay it looks like you can just change XenonUtils/xex_patcher.cpp:144 to extern int instead of static int or make the header static instead of extern.
I don't know the implications of this and I'm not even sure if it gets the build going as I'm doing this on arm64. I'm going to try it on my other machine later just thought I'd drop this here in case I forget
I got pretty far along in the process and then got this error when building:
FAILED: XenonUtils/CMakeFiles/XenonUtils.dir/xex_patcher.cpp.obj C:\msys64\clang64\bin\c++.exe -DNOMINMAX -IC:/Users/User/Desktop/blue-dragon/XenonRecomp/XenonUtils/. -IC:/Users/User/Desktop/blue-dragon/XenonRecomp/thirdparty/libmspack/libmspack/mspack -IC:/Users/User/Desktop/blue-dragon/XenonRecomp/thirdparty/tiny-AES-c -IC:/Users/User/Desktop/blue-dragon/XenonRecomp/thirdparty/TinySHA1 -IC:/Users/User/Desktop/blue-dragon/XenonRecomp/thirdparty/disasm/. -g -std=gnu++17 -MD -MT XenonUtils/CMakeFiles/XenonUtils.dir/xex_patcher.cpp.obj -MF XenonUtils\CMakeFiles\XenonUtils.dir\xex_patcher.cpp.obj.d -o XenonUtils/CMakeFiles/XenonUtils.dir/xex_patcher.cpp.obj -c C:/Users/User/Desktop/blue-dragon/XenonRecomp/XenonUtils/xex_patcher.cpp C:/Users/User/Desktop/blue-dragon/XenonRecomp/XenonUtils/xex_patcher.cpp:144:12: error: static declaration of 'lzxDecompress' follows non-static declaration 144 | static int lzxDecompress(const void lzxData, size_t lzxLength, void dst, size_t dstLength, uint32_t windowSize, void windowData, size_t windowDataLength) | ^ C:/Users/User/Desktop/blue-dragon/XenonRecomp/XenonUtils/xex_patcher.h:19:12: note: previous declaration is here 19 | extern int lzxDecompress(const void lzxData, size_t lzxLength, void dst, size_t dstLength, uint32_t windowSize, void windowData, size_t windowDataLength); | ^ C:/Users/User/Desktop/blue-dragon/XenonRecomp/XenonUtils/xex_patcher.cpp:209:26: error: call to 'lzxDecompress' is ambiguous 209 | int result = lzxDecompress(curPatch->patchData, curPatch->compressedLength, &dstData[curPatch->newAddress], curPatch->uncompressedLength, windowSize, &dstData[curPatch->oldAddress], curPatch->uncompressedLength); | ^~~~~~~~~~~~~ C:/Users/User/Desktop/blue-dragon/XenonRecomp/XenonUtils/xex_patcher.h:19:12: note: candidate function 19 | extern int lzxDecompress(const void* lzxData, size_t lzxLength, void* dst, size_t dstLength, uint32_t windowSize, void* windowData, size_t windowDataLength); | ^ C:/Users/User/Desktop/blue-dragon/XenonRecomp/XenonUtils/xex_patcher.cpp:144:12: note: candidate function 144 | static int lzxDecompress(const void lzxData, size_t lzxLength, void dst, size_t dstLength, uint32_t windowSize, void windowData, size_t windowDataLength) | ^ C:/Users/User/Desktop/blue-dragon/XenonRecomp/XenonUtils/xex_patcher.cpp:457:22: error: call to 'lzxDecompress' is ambiguous 457 | resultCode = lzxDecompress(compressBuffer.get(), d - compressBuffer.get(), buffer, uncompressedSize, ((const Xex2FileNormalCompressionInfo)(fileFormatInfo + 1))->windowSize, nullptr, 0); | ^~~~~~~~~~~~~ C:/Users/User/Desktop/blue-dragon/XenonRecomp/XenonUtils/xex_patcher.h:19:12: note: candidate function 19 | extern int lzxDecompress(const void lzxData, size_t lzxLength, void dst, size_t dstLength, uint32_t windowSize, void* windowData, size_t windowDataLength); | ^ C:/Users/User/Desktop/blue-dragon/XenonRecomp/XenonUtils/xex_patcher.cpp:144:12: note: candidate function 144 | static int lzxDecompress(const void *lzxData, size_t lzxLength, void *dst, size_t dstLength, uint32_t windowSize, void *windowData, size_t windowDataLength) | ^ 3 errors generated. [26/34] Building CXX object XenonRecomp/CMakeFiles/XenonRecomp.dir/cmake_pch.hxx.pch ninja: build stopped: subcommand failed.
I'm getting the same error too and haven't figured out a solution yet.