Re: SFML D bindings: libsfml-system.so.2.5: cannot open shared object file:

2023-02-04 Thread thebluepandabear via Digitalmars-d-learn
On Sunday, 5 February 2023 at 03:19:43 UTC, bachmeier wrote: On Saturday, 4 February 2023 at 23:51:17 UTC, thebluepandabear wrote: "Error: Missing Symbol, Message: sfText_getLineSpacing", "Error: Missing Symbol, Message: sfText_getLineSpacing"] source/app.d:19 void

Re: SFML D bindings: libsfml-system.so.2.5: cannot open shared object file:

2023-02-04 Thread bachmeier via Digitalmars-d-learn
On Saturday, 4 February 2023 at 23:51:17 UTC, thebluepandabear wrote: "Error: Missing Symbol, Message: sfText_getLineSpacing", "Error: Missing Symbol, Message: sfText_getLineSpacing"] source/app.d:19 void app.loadDyn() [0x55d86edd1931] source/app.d:24 _Dmain [0x55d86edd1954]

Re: betterC DLL in Windows

2023-02-04 Thread Adam D Ruppe via Digitalmars-d-learn
On Saturday, 4 February 2023 at 18:40:51 UTC, Tamas wrote: I do take your word for it, but now I have to re-evaluate my expectations towards D and perhaps use it for another project. I've got most of my project working in C already, but I was hoping to add some safety and better

Re: betterC DLL in Windows

2023-02-04 Thread Richard (Rikki) Andrew Cattermole via Digitalmars-d-learn
On 05/02/2023 1:20 PM, Adam D Ruppe wrote: Even module imports can fail because betterC disables outputting the module data info, even if it would otherwise be required by language rules, despite it not using the druntime. This only affects you if you use full D to interact with -betterC

Re: betterC DLL in Windows

2023-02-04 Thread ryuukk_ via Digitalmars-d-learn
In betterC mode you don't have access to the standard library or the runtime You can only access the libc functions Basically the modules from: ``import core.stdc`` So for your example, just do like you'd do in C As simple as that As for DMD/LDC, easy: DMD: reference compiler, fast

Re: SFML D bindings: libsfml-system.so.2.5: cannot open shared object file:

2023-02-04 Thread thebluepandabear via Digitalmars-d-learn
"Error: Missing Symbol, Message: sfText_getLineSpacing", "Error: Missing Symbol, Message: sfText_getLineSpacing"] source/app.d:19 void app.loadDyn() [0x55d86edd1931] source/app.d:24 _Dmain [0x55d86edd1954] ``` Oh yeah, that's another bug I had. You would need to downgrade the

Re: betterC DLL in Windows

2023-02-04 Thread Adam D Ruppe via Digitalmars-d-learn
On Saturday, 4 February 2023 at 19:49:41 UTC, bachmeier wrote: I'm not sure what Adam's getting at when he says "hopelessly broken" but it's basically a subset of D. You're almost guaranteed to hit some wall with it and have no solution. Some of these are bugs but some of them are by design;

Re: betterC DLL in Windows

2023-02-04 Thread bachmeier via Digitalmars-d-learn
On Saturday, 4 February 2023 at 18:40:51 UTC, Tamas wrote: It is hopelessly broken, but thankfully, it also brings zero benefit, so simply not using it is a viable path forward. I do take your word for it, but now I have to re-evaluate my expectations towards D and perhaps use it for another

Re: betterC DLL in Windows

2023-02-04 Thread bachmeier via Digitalmars-d-learn
On Saturday, 4 February 2023 at 18:29:41 UTC, Tamas wrote: What's the reason to prefer LDC over DMD? Anyone that cares about performance will use LDC rather than DMD. It's hard to imagine a case where someone would want betterC to avoid the GC, but they wouldn't want to use LDC. When I

Re: betterC DLL in Windows

2023-02-04 Thread Tamas via Digitalmars-d-learn
On Saturday, 4 February 2023 at 18:27:34 UTC, Adam D Ruppe wrote: On Saturday, 4 February 2023 at 18:11:05 UTC, Tamas wrote: Well, as I'm new to D this isn't something I have insight into. Then you'd probably be better off taking my word for it (or even trusting your own limited experience

Re: betterC DLL in Windows

2023-02-04 Thread Richard (Rikki) Andrew Cattermole via Digitalmars-d-learn
On 05/02/2023 7:29 AM, Tamas wrote: What's the reason to prefer LDC over DMD? DMD is currently a write off for DLL support (some things do work, but its very easy to hit situations that don't). I've been looking into this for the past year, implemented some things in dub to get it to work,

Re: betterC DLL in Windows

2023-02-04 Thread Tamas via Digitalmars-d-learn
On Saturday, 4 February 2023 at 16:51:36 UTC, Richard (Rikki) Andrew Cattermole wrote: You don't have access to druntime/Phobos stuff at runtime. SimpleDllMain is for initializing and uninitializing druntime. See:

Re: betterC DLL in Windows

2023-02-04 Thread Adam D Ruppe via Digitalmars-d-learn
On Saturday, 4 February 2023 at 18:11:05 UTC, Tamas wrote: Well, as I'm new to D this isn't something I have insight into. Then you'd probably be better off taking my word for it (or even trusting your own limited experience where things worked until you added the switch) and just not using

Re: betterC DLL in Windows

2023-02-04 Thread Tamas via Digitalmars-d-learn
Hi, thanks for the feedback. I'm happy to see 2 replies so quickly. On Saturday, 4 February 2023 at 17:26:17 UTC, Adam D Ruppe wrote: On Saturday, 4 February 2023 at 16:45:31 UTC, Tamas wrote: export extern (C) void main() mixin SimpleDllMain; No need to ever mix two mains together, the

Re: compile: link dynamic OR static library in Windows

2023-02-04 Thread Alexander Zhirov via Digitalmars-d-learn
On Saturday, 4 February 2023 at 17:02:11 UTC, Ferhat Kurtulmuş wrote: On Windows, dub's default behavior is to search for "foo.lib", usually compiled with Visual Studio C/C++ compilers. However, you have mingw-compiled "libfoo.a". I would not use MinGW-compiled libs with d compilers. I don't

Re: betterC DLL in Windows

2023-02-04 Thread Adam D Ruppe via Digitalmars-d-learn
On Saturday, 4 February 2023 at 16:45:31 UTC, Tamas wrote: and they compile without `-betterC`, but fail with link errors when using the switch. then don't use the switch lol -betterC is barely supported and completely useless so better to just not use it. export extern (C) void main()

Re: SFML D bindings: libsfml-system.so.2.5: cannot open shared object file:

2023-02-04 Thread bachmeier via Digitalmars-d-learn
On Saturday, 4 February 2023 at 05:29:43 UTC, thebluepandabear wrote: I have tested on arch linux and everything works fine, i'll try to setup a linux mint / ubuntu VM tomorrow Thanks. It seems like an issue with my system then. I've been stuck on it for a week or so, but haven't been able

Re: compile: link dynamic OR static library in Windows

2023-02-04 Thread Ferhat Kurtulmuş via Digitalmars-d-learn
On Saturday, 4 February 2023 at 15:52:33 UTC, Alexander Zhirov wrote: PS C:\sources\pxe-restore\source> dmd -i app.d -LC:\msys64\home\user\postgresql-15.1\installed\mingw64\lib\libpq.dll lld-link: error: C:\msys64\home\user\postgresql-15.1\installed\mingw64\lib\libpq.dll: bad file type. Did

Re: betterC DLL in Windows

2023-02-04 Thread Richard (Rikki) Andrew Cattermole via Digitalmars-d-learn
You don't have access to druntime/Phobos stuff at runtime. SimpleDllMain is for initializing and uninitializing druntime. See: https://github.com/Project-Sidero/basic_memory/blob/main/source/sidero/base/dllmain.d You want to only use ldc atm. The defaults right now should most likely "just

betterC DLL in Windows

2023-02-04 Thread Tamas via Digitalmars-d-learn
Hi, I'm new to D and trying my hands on a few simple things. Being able to build a Windows DLL with betterC enabled is of particular interest to me, as I'd need it for a project that I'd like to do in D. I'm trying to follow some examples, such as

Re: compile: link dynamic OR static library in Windows

2023-02-04 Thread Richard (Rikki) Andrew Cattermole via Digitalmars-d-learn
On Windows you don't link directly against a DLL. You link against a static library (.lib) of the same name. The binding doesn't change between a static library and a shared library as long as you're linking during the compilation sequence and not during runtime. For dub, it should be as

compile: link dynamic OR static library in Windows

2023-02-04 Thread Alexander Zhirov via Digitalmars-d-learn
I have never programmed in Windows, so I don't quite understand how to link the library correctly. I have a compiled Postgres library from under mingw. There is both a static library `*.a` and a dynamic library `*.dll`. I don't understand how to compile my project correctly at all. I tried to

Re: Logging logs in Windows

2023-02-04 Thread Alexander Zhirov via Digitalmars-d-learn
On Saturday, 4 February 2023 at 14:48:55 UTC, Richard (Rikki) Andrew Cattermole wrote: I.e. here are my functions for syslog and Windows Event log I'll try to check. Thank you very much!

Re: Logging logs in Windows

2023-02-04 Thread Richard (Rikki) Andrew Cattermole via Digitalmars-d-learn
On 05/02/2023 2:31 AM, Alexander Zhirov wrote: On Friday, 3 February 2023 at 18:02:59 UTC, Richard (Rikki) Andrew Cattermole wrote: Here is a starting point that I myself have used in the past: I understand that programming under Windows is a shame for a programmer, but is there really no

Re: Logging logs in Windows

2023-02-04 Thread Alexander Zhirov via Digitalmars-d-learn
On Friday, 3 February 2023 at 18:02:59 UTC, Richard (Rikki) Andrew Cattermole wrote: Here is a starting point that I myself have used in the past: I understand that programming under Windows is a shame for a programmer, but is there really no ready-made solution for using the system log in