Unable to build on Mac m2 air
ozzyozbourne opened this issue · 3 comments
Hello Travis, I'm not sure why this is happening. Am I missing some library? Although I have added all the necessary dependencies mentioned for macOS, I'm running build-debug.sh from the main branch.
P.S. I have been enjoying the Kohi game engine series immensely. Keep up the good work, brother. Thanks
@ozzyozbourne I am on an M3 MBP and I also experienced this issue. I don't know if this is the correct path forward, but I wrote my own kthread_wait function as mentioned in this issue:
Here is my version. Note that I don't really know if this is the right way to write the function as I haven't contributed to this project and I don't write C at work.
b8 kthread_wait(kthread* thread) {
if (!thread) {
return false;
}
while (true) {
if (thread->work_queue.element_count == 0) {
break;
}
}
return true;
}
I can now get the project to compile, but only when executing ./build-debug.sh. When executing ./build-release.sh, I get this error:
engine/src/renderer/renderer_frontend.c:501:8: error: no member named 'module_watch_ids' in 'struct shader'
s->module_watch_ids = kallocate(sizeof(u32) * config->stage_count, MEMORY_TAG_ARRAY);
~ ^
1 error generated.
make: *** [obj/engine/src/renderer/renderer_frontend.c.o] Error 1
When building with ./build-debug.sh and running ./testbed, I get this error despite having Vulkan installed:
[ERROR]: Error opening library: dlopen(libvulkan_renderer.dylib, 0x0002): Library not loaded: @rpath/libvulkan.1.dylib
Referenced from: <3D97920A-53AB-32EA-AFF7-FDA3F6E76247> /Users/briankamras/Documents/GitHub/kohi/bin/libvulkan_renderer.dylib
Reason: tried: './libvulkan.1.dylib' (no such file)
[FATAL]: Could not create application!
@ozzyozbourne Thanks for submitting this!
Catching up on issues - apologies for the delay! I had to dig back a bit for this since it was technically resolved a while ago. #222 was as well.
Anyway, ultimately the issue was the fact that kthread_wait
was never defined on the mac platform (nor linux seemingly) at the time this was written up. Anything version 0.6 and before would have been wrong here for those platforms. You'll need to use 0.7.0 or newer and this is fixed. For mac specifically, you'll want to use 0.7.1 or newer.
Closing this.