TSE: Linux: WSL: How to run DLLs in TSE for Linux on WSL?

15 views
Skip to first unread message

knud van eeden

unread,
Oct 23, 2025, 7:25:40 AM (14 days ago) Oct 23
to SemWare TSE Pro Text Editor
Hello,

Specifically on Linux WSL it should be possible to run DLLs (via powershell.exe).

But out of the box when compiling e.g. spellchk.s in TSE for Linux version 4.50.13
on Linux WSL (Ubuntu), that compiles OK, but when trying to run it
one gets out of the box the message 

 'DLL not support: <yourDLLname>'

with friendly greetings
Knud van Eeden


Inline image

S.E. Mitchell

unread,
Oct 23, 2025, 7:49:19 PM (13 days ago) Oct 23
to sem...@googlegroups.com
If you are asking if the Linux version can load and run DLL's, then
the answer is no. No Linux program that I am aware of can load and
run DLL's. DLL's are unique to Windows.
However, Linux does have something called shared-object files. They
have a different binary format than DLL's.
But, Watcom C (what TSE for Linux currently requires) does not support
shared-objects.
> --
>
> ---
> You received this message because you are subscribed to the Google Groups "SemWare TSE Pro text editor" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to semware+u...@googlegroups.com.
> To view this discussion visit https://groups.google.com/d/msgid/semware/885162946.6024626.1761218708056%40mail.yahoo.com.

Guy Rouillier

unread,
Oct 24, 2025, 5:47:21 AM (13 days ago) Oct 24
to sem...@googlegroups.com
On Thu, 2025-10-23 at 19:49 -0400, S.E. Mitchell wrote:
> But, Watcom C (what TSE for Linux currently requires) does not support
> shared-objects.

Are you able to use OpenWatcom v2? According to the documentation, that
compiler can produce Linux .so files. Unfortunately, I've been attempting,
unsuccessfully, to get a basic sample working for the last hour.

--
Guy Rouillier

S.E. Mitchell

unread,
Oct 24, 2025, 6:52:15 AM (13 days ago) Oct 24
to sem...@googlegroups.com
I'm using:
Open Watcom C/C++ x86 32-bit Compile and Link Utility
Version 2.0 beta Aug 2 2025 02:48:51 (32-bit)

A few years back, I asked on their discord (quite active) about .so
files, and was told Watcom did not support them.
Can you point me to the doc?
In the meantime, I'll ask again on their discord server.
Thanks!
> --
>
> ---
> You received this message because you are subscribed to the Google Groups "SemWare TSE Pro text editor" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to semware+u...@googlegroups.com.
> To view this discussion visit https://groups.google.com/d/msgid/semware/5225a2df5f6b5d38faa29056ca13a64a6f4c553d.camel%40gmail.com.

knud van eeden

unread,
Oct 24, 2025, 9:00:18 AM (13 days ago) Oct 24
to sem...@googlegroups.com
Hello,

Using AI (First ChatGPT, after that Claude) it was tried for a long time to let spell.dll and semware.lex also work
on Linux WSL using PowerShell.exe.

But using spell.dll and semware.lex defied all pertinent trying, even with e.g.:

-Using 32-bits powershell.exe

-Working only with the C# wrapper which called the spell.dll functions
after opening using OpenSpell() the semware.lex file

-Even creating a C program running on Linux WSL which called the spell.dll
functions did not give the expected result (cross compiling using MingW).

-C calling convention, Pascal calling convention (StdCal), ...

-Keeping powershell.exe open and running all the time
(e.g. as a server, then giving spell.dll commands (like OpenSpell(), SpellCheckWord(), ...).

and so on...

===

Could you if possible tell as much as possible about spell.dll and semware.lex?

For example:

1. spell.dll should be compiled using Watcom? 

2. In spellchk.s is mentioned: 

  If the dll is compiled with Borland (4.5, 5), use "foo"
  If the dll is compiled with Microsoft C (VC 4), use "_foo@??" to get ?? look in the map!!!
  If the dll is compiled with Watcom C (10, 10.5), use "_Foo"

  Currently compiled with Watcom c 10.5.


3. Is a C calling convention used or was Pascal calling convention (e.g. StdCal) used? 

4. Where exactly should semware.lex be located? E.g. always in a SPELL directory?
(according to spellchk.s it uses a combination of TSEPath at the moment as far as I can tell),

5. In TSE in general how is the initialization of DLLs in general accomplished?
Do you maybe have the C code of this still used in TSE for Microsoft Windows?

6. Does spell.dll maybe only run with g32.exe and not with other executable programs?

7. Other information.

===

Note: in principal it should with some probability be possible to run (any) DLL on
Linux WSL also using powershell.exe and C# wrappers, or a C wrapper .exe that is called
by the program (e.g. TSE) so if that should
have worked it would resolve a quite general problem.

===

Conclusion from Claude at the moment: This spell.dll is an old 1996 DLL which probably can not be made running outside of TSE.

Thanks

Guy Rouillier

unread,
Nov 4, 2025, 8:50:12 PM (23 hours ago) Nov 4
to sem...@googlegroups.com
I've been banging away since Sammy sent the message below, trying to get a
Linux shared object (SO) example working without success. I finally found a
GitHub issue addressing this exact question. I just got confirmation that
OpenWatcom V2 does *not* support SOs on Linux. :(

https://github.com/open-watcom/open-watcom-v2/issues/705#issuecomment-3486031940
--
Guy Rouillier
Reply all
Reply to author
Forward
0 new messages