Closed Cogitri closed 4 years ago
Ah, I guess it won't be possible to split hunt into multiple libs due to it being so interconnected... I guess I'll just have to make one (rather) massive lib, although I don't really like that too much.
Hm, I'm currently getting the following when running an exe linking to hunt:
object.Error@rt/minfo.d(371): Cyclic dependency between module constructors/destructors of hunt.concurrency.Executors and hunt.concurrency.AbstractExecutorService
hunt.concurrency.Executors* ->
hunt.concurrency.AbstractExecutorService* ->
hunt.concurrency.FutureTask* ->
hunt.concurrency.Executors*
Illegal instruction (core dumped)
Hm, I think the stuff in resources/ is included on runtime, not sure how that is supposed to work unless you run the command in the root of the hunt repo :thinking:
The examples work now if you pass --DRT-oncycle=ignore
to the binaries due to the dep cycle mentioned above.
Ah, I guess it won't be possible to split hunt into multiple libs due to it being so interconnected... I guess I'll just have to make one (rather) massive lib, although I don't really like that too much.
It will not be done in a short time, but it will in a long time.
Hm, I'm currently getting the following when running an exe linking to hunt:
object.Error@rt/minfo.d(371): Cyclic dependency between module constructors/destructors of hunt.concurrency.Executors and hunt.concurrency.AbstractExecutorService hunt.concurrency.Executors* -> hunt.concurrency.AbstractExecutorService* -> hunt.concurrency.FutureTask* -> hunt.concurrency.Executors* Illegal instruction (core dumped)
It makes me headache! Running dub test
can't detect this. So, we will try to fix this in near future.
Hm, I think the stuff in resources/ is included on runtime, not sure how that is supposed to work unless you run the command in the root of the hunt repo 🤔
The whole resources directory should be copied into the root in your project. They are used by hunt.util.MimeTypeUtils and hunt.util.Locale respectively
The main problem for Meson is that it can't include all the source files in a directory automatically, especially for a unstable project.
It makes me headache! Running dub test can't detect this. So, we will try to fix this in near future.
Thanks. No clue why it only happens with meson and not with dub.
The whole resources directory should be copied into the root in your project. They are used by hunt.util.MimeTypeUtils and hunt.util.Locale respectively
Hm, in my opinion we shouldn't have projects copy those into the root of their projects but instead have a shared copy of these somewhere in the system. I'll see what I can do.
The main problem for Meson is that it can't include all the source files in a directory automatically, especially for a unstable project.
I personally don't see the problem with adding/removing a file when you're adding/removing a line. We could emulate scanning for sources in meson, but that's rather fragile.
Thanks. No clue why it only happens with meson and not with dub.
Ah! Apparently this only happens when building with meson in debug mode (i.e. with --buildtype=debug
, which is also the default of meson). It works fine if you do meson --buildtype=release
and build that then.
Ah, it's due to meson adding -d-debug
to LDC's arguments, so I guess this is more about dub disabling some rather important asserts by default that meson doesn't. Would be best if we could fix this properly.
I've started to use this in a project of mine and it appears to work fine.
Thanks for your great works! Notify us please after you finished this patch.
Seems to work now :tada:
Great works! We will merge it soon.
I run ninja -C build test
and got this error:
unrecognized switch '-link-defaultlib-shared'
It seems that dmd can't recongnize this option -link-defaultlib-shared
Oh, I guess the option differs between dmd and ldc. I'll look into it
-------- Original Message -------- On 17 Dec 2019, 07:28, Xueping wrote:
I run ninja -C build test and got this error: unrecognized switch '-link-defaultlib-shared'
It seems that dmd can't recongnize this option -link-defaultlib-shared
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or unsubscribe.
This is still very WIP. This is still missing:
~Handling of docs, resources and examples~
~Properly handling HAVE_EPOLL and friends~
~Proper linking of the shared libs which depend on each other (I think right now ldc just pulls in the right files so we end up with duplication)~
Fix conflicting constructors/destructors
fixes #72