-
Notifications
You must be signed in to change notification settings - Fork 18
Open
Description
I have managed to compile the latest commit (at time of writing: 122fe39) under both Windows and Linux, but not without modification.
The issues I found and had to fix are as follows:
Windows/MSVC
- https://github.com/Xrysnow/cocos2d-x-gfx and https://github.com/Xrysnow/lstgx_external/tree/master/yasio/src/yasio fail to compile thanks to
windef.h
's definition ofmin
/max
macros.
I just did some substitution to replace any instance of<...>::max(
with(<...>::max)(
(same with min).
I used this regex in VS Code to accomplish it: find([^-{(\s]*)::m([ai][xn])\(
replace($1::m$2)(
There is a define,NOMINMAX
, that you could use, but I don't know where to put it for these. - https://github.com/NanoMichael/MicroTeX fails to compile because
DEBUG
is a macro under MSVC.
What I did was renameBox::DEBUG
toBox::ENABLE_DEBUG
in this case.
I discovered this hack through your issue on this repo (Conflict with some macros NanoMichael/MicroTeX#44), so I guess you're aware of it.
You may want to just depend on your own fork instead at this point.
Linux/GCC
- https://github.com/Xrysnow/cocos2d-x-gfx/blob/main/backend/gfx-base/GFXDef-common.h#L123 fails because of lines 123-128.
I actually don't know what's wrong with these lines but I'm assuming thatStatus
is some predefined macro under GCC likemin
/max
/DEBUG
on MSVC as seen before. If someone could tell me why, that would be much appreciated. Until then, commenting out these lines works. - https://github.com/Xrysnow/cocos2d-x/blob/gfx/cocos/platform/desktop/CCGLViewImpl-desktop.cpp#L820 fails because of line 820, change it to
return (void*)glfwGetX11Window(_mainWindow);
and it works again. - https://github.com/Xrysnow/cocos2d-x-gfx/blob/main/backend/gfx-vulkan/VKGPUObjects.h You need to add
#include <cstring>
somewhere at the top. - https://github.com/Xrysnow/cocos2d-x-3rd-party-libs-bin/tree/gfx/Box2D/include Rename and move
Box2D/Box2D.h
tobox2d/box2d.h
, because Linux is strict on capitalization.
I did not test Mac compilation because I do not have a Mac, but if Mac compilation didn't work before it should work now...
Karl5766
Metadata
Metadata
Assignees
Labels
No labels