Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Linux build failing #334

Open
Frost-54 opened this issue May 4, 2024 · 1 comment
Open

Linux build failing #334

Frost-54 opened this issue May 4, 2024 · 1 comment
Labels
build system Build system related issues such as premake, config settings for VS etc. C++ C++ Implementation related Core Engine Core Module related enhancement New feature or request help wanted Extra attention is needed

Comments

@Frost-54
Copy link

Frost-54 commented May 4, 2024

Hi,
I encountered a few issues when building Razix on Linux:

  1. Some MSVC specific extensions are used(e.g omitting template on dependent types)
  2. Some platform specific stuffs(e.g macros)
  3. Some APIs are only implemented for Windows(e.g RZSplashScreen, entry point)
  4. Headers are not self-contained(not fatal, but it makes working in VSCode + clangd harder)
  5. Build system related issues(e.g hard coded paths)
  6. Some extensions use deprecated Qt APIs that are removed in Qt6.
  7. Tracy's embedded imgui conflicts with our imgui(can be fixed by adding tracy/ prefix when including tracy headers).

Any plan on fixing these? I am happy to work on these.
Thanks!

@Pikachuxxxx
Copy link
Owner

Hi, Thanks for trying to build for linux. Unfortunately I don't officially support linux, in theory with the changes you mentioned above, it's possible. Some amount of work needs to be done for it work properly such as the porting the premake build files, some platform related code, c++ gnu support etc. I don't have a timeline to support linux anytime soon. Once we port the premake files, it should be fairly easy to use with make/VSCode as well.

  1. Some MSVC specific extensions are used
  2. Some platform specific stuffs(e.g macros)

I believe this needs to be addressed, by having multiple defines in the core file we can make this compiler independent. I've tested with clang (any maybe consoles too🤫) sometime back and I think this should be straightforward to implement.

  1. Some APIs are only implemented for Windows(e.g RZSplashScreen, entry point)
  2. Headers are not self-contained

Minor refactoring and filling out the platform realted code should resolve these issues I guess?

  1. Some extensions use deprecated Qt APIs that are removed in Qt6.

As for this I think using QT5.15.2 or 5.14.2 are the best version, supporting Qt6 will require some major refactoring. I only support Qt5 for now.

But if you would like to contribute you're welcome, I will try to support as much as possible.😁😁😁

@Pikachuxxxx Pikachuxxxx added enhancement New feature or request C++ C++ Implementation related build system Build system related issues such as premake, config settings for VS etc. Core Engine Core Module related help wanted Extra attention is needed labels May 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build system Build system related issues such as premake, config settings for VS etc. C++ C++ Implementation related Core Engine Core Module related enhancement New feature or request help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

2 participants