tl;dr I can compile, but it's gross and I'm guessing there's a better way.

I have a multithreaded app that I am compiling to each OS. For Windows, I have 
this extra step that I'm sure has a better answer. When I compile to windows, 
nim throws an error passed from the C compiler that basically 'lpthread' 
doesn't work. I already specify the pthread.a from MinGW in the nim compile 
command with `passC` and `passL`, so what I do is simply copy the entire 
screenfull of the failed C linker command, remove the last little '-lpthread' 
then paste back into the terminal and get a successful build.

Is there a way I can tell nim that I am statically linking pthread? I tried 
`--dynlibOverride:pthread` with no difference.

Possibly Useless Details
    
    
    C compiler: zig
    Nim version: 2.0.2
    Host OS: linux
    
    
    Run

Full nim command:
    
    
    nim c --os:windows -d:mingw --amd64.windows.gcc.exe:gcc-win 
--amd64.windows.gcc.linkerexe:gcc-win --mm:arc -o:myapp.exe 
--passC:-Imingw64/include --passL:mingw64/lib/libpthread.a -d:release myapp.nim
    
    
    Run

functionally the same and is shorter
    
    
    nim c --os:windows --cc:gcc --gcc.exe:gcc-win --gcc.linkerexe:gcc-win 
--mm:arc -o:myapp.exe --passC:-Imingw64/include 
--passL:mingw64/lib/libpthread.a -d:release myapp.nim
    
    
    Run

Reply via email to