this post was submitted on 25 Feb 2024
414 points (97.3% liked)

linuxmemes

21211 readers
58 users here now

Hint: :q!


Sister communities:


Community rules (click to expand)

1. Follow the site-wide rules

2. Be civil
  • Understand the difference between a joke and an insult.
  • Do not harrass or attack members of the community for any reason.
  • Leave remarks of "peasantry" to the PCMR community. If you dislike an OS/service/application, attack the thing you dislike, not the individuals who use it. Some people may not have a choice.
  • Bigotry will not be tolerated.
  • These rules are somewhat loosened when the subject is a public figure. Still, do not attack their person or incite harrassment.
  • 3. Post Linux-related content
  • Including Unix and BSD.
  • Non-Linux content is acceptable as long as it makes a reference to Linux. For example, the poorly made mockery of sudo in Windows.
  • No porn. Even if you watch it on a Linux machine.
  • 4. No recent reposts
  • Everybody uses Arch btw, can't quit Vim, and wants to interject for a moment. You can stop now.

  • Please report posts and comments that break these rules!

    founded 1 year ago
    MODERATORS
     
    top 25 comments
    sorted by: hot top controversial new old
    [โ€“] Ziglin 38 points 8 months ago (2 children)

    I've used mingw in the past, the exe usually is 10x the size and wants the entire binary of any library used as well and first requires you to download the source windows version of the lib and link it. Meaning a small SDL2 project on Linux was I think 100kib while on windows it was 1mib + 2.5 mib

    [โ€“] [email protected] 22 points 8 months ago (1 children)

    Windows has dll hell... so basically, to ge around this, some tools statically link by default. It's not an ideal solution, but it works most of the time... and regarding how unmainatained a Windows install might be (old installs, like Win7) or how badly updated/upgraded it might be (newer installs, Win10 and 11), I guess it is the only choice you actually have to make your app run on as many Windows systems as possible.

    [โ€“] Ziglin 1 points 8 months ago (1 children)

    Since I don't do this professionally it doesn't have to run on any windows systems, I just was stuck with windows recently so I programmed in a GitHub codespace and compiled for Windows which is how I found out about all that I'm so happy not to have run into problems like this on Linux.

    [โ€“] [email protected] 3 points 8 months ago

    Linux is a smooth ride when it comes to binaries... might miss a few dependencies here and there, but all easily fixed if you just install them.

    Windows on the other hand ๐Ÿ˜ฌ...

    [โ€“] oddsys 3 points 8 months ago* (last edited 8 months ago) (1 children)

    If you have WSL set up run

    strip your.exe
    

    It often reduces the size a fair bit

    [โ€“] Ziglin 1 points 8 months ago (1 children)

    Doesn't it work in Linux normally?

    [โ€“] oddsys 1 points 8 months ago (1 children)

    Oh sure, just figured this was all done under windows.

    [โ€“] Ziglin 1 points 8 months ago

    Nope I used a GitHub codespace since I didn't have a C compiler on the windows installation I was stuck with.

    [โ€“] muntedcrocodile 38 points 8 months ago (1 children)

    You want me to compile it best i can do is a git repo. And thats if it runs on windows in the first place.

    [โ€“] [email protected] 7 points 8 months ago (1 children)

    @muntedcrocodile @0x4E4F should be able to run dosbox on any platform tho [gives you turbo pascal source]

    [โ€“] [email protected] 1 points 8 months ago (1 children)

    Not really a solution if it has a GUI, dosbox only runs command line stuff.

    [โ€“] db2 4 points 8 months ago (1 children)

    Well that's not at all true, but it won't have the graphical environment you want.

    [โ€“] [email protected] 1 points 8 months ago* (last edited 8 months ago) (1 children)

    What do you mean, dosbox can run programs with a GUI? Didn't know that...

    [โ€“] db2 5 points 8 months ago

    If it couldn't do graphics it wouldn't be very useful for old games. You can run Windows 3.1, or used to haven't tried in a while. But it's not what is needed here even if it can.

    [โ€“] db2 20 points 8 months ago (1 children)

    Do it the long way and compile in a vm.

    [โ€“] [email protected] 5 points 8 months ago

    My thoughts exactly... seems to be the safest route.

    [โ€“] PeterPoopshit 13 points 8 months ago* (last edited 8 months ago)

    Best I can do is make an elf that mostly works and the memory manager seems pretty solid but the second you start doing stuff with strings, it fucks all up and I never figured out that bug after months so it is what it is. If you want to print a string you have to drop into real mode first.

    [โ€“] [email protected] 12 points 8 months ago (2 children)

    I was able to use this guys docker image and tool in order to cross compile my Rust programs in the past. They were very simple programs so I dont know how well it works for larger projects.

    https://github.com/Jake-Shadle/xwin

    [โ€“] [email protected] 3 points 8 months ago

    You could even cross-compile from musl... very cool ๐Ÿ‘!

    [โ€“] [email protected] 3 points 8 months ago

    I heard recently that you can use the zig compiler to cross compile rust programs.

    [โ€“] [email protected] 9 points 8 months ago (1 children)
    [โ€“] [email protected] 7 points 8 months ago* (last edited 8 months ago)

    No, it's Vala... and it's not my project, client just wants this to run on Windows.

    [โ€“] pelya 8 points 8 months ago

    Simply install Ubuntu from Microsoft Store.

    [โ€“] [email protected] 3 points 8 months ago (1 children)

    They should just use reverse-wine, if that exists.

    [โ€“] [email protected] 3 points 8 months ago

    Wish it did...