-
Notifications
You must be signed in to change notification settings - Fork 55
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Install i686-pc-msdosdjgpp #45
Comments
You’ll need to modify https://github.com/andrewwutw/build-djgpp/blob/master/script/12.1.0 |
So I just need to change i586 to i686? |
Pretty much. I'll run through this effort right now to validate it. |
On Fedora 36 using my 7 year old Dell Precision 3420, Xeon E3-1245 v5 3.5GHz, 64GB DDR4, Kingston 240GB M.2 SSD a full build takes about 30 minutes. Not quite finished though. The djlsr205 build is configured for an Note, the build-djgpp script could be improved w.r.t. parallelism. It's currently set to be single threaded within build-djgpp while all the tools support multi-threaded compilation. Only the last step does a build-djgpp also seems to build with debugging turned on, which is fair, tbh. Slower builds, larger binaries, potentially slower cross-compiler binaries is the result. I think you can remove
I'll get back to this tonight or tomorrow evening. |
Alright.....got it. A bit of hacky Steps reproduce on Fedora 36.
Bottom of build log:
Cross compiler bits: (91M)
DOS cross-built binaries: (56M)
DOS cross-built libc: (1.4M)
|
@lpsantil thank you for the patch! I'm trying to add it to Nixpkgs now |
Why i686? All it does is set the default value for |
I'm trying to replicate a tricky project that requires it |
I'm not seeing anything that requires i686-compiled target libraries - only hardcoded compiler names, which is just bad practice. If you want to avoid patching the makefiles, symlinks would work too. |
I think there's some benefit to MMX (which means i586 over i386) but agreed I don't see a strong i686 need. Once I have a working build I'll be able to experiment / benchmark removing it (and other odd choices in this project). |
@lpsantil i'm using your method to compile under msys2 but it always block at this error:
under WSL2 (Ubuntu) it works fine but the problem is that under ubuntu it makes the binaries for linux and i need binaries for windows instead. How to solve this? Thank you! |
I just happened to have stood up a Windows box last night. So I might be able to help. Just to be clear. All of the That said, there's already pre-built Windows |
@lpsantil yes i already testing your steps. Now i'm trying something, maybe i've found a similar issue in this code: i've adapted the build script with this modification: let's see if it will build correctly. I will report back |
I notice you're also using a new gcc version, 12.20 vs. 12.1.0 I used earlier this year. That might require other tweaks. |
I can confirm that with that modification i successfully built version 12.20 under msys2 mingw32 |
That's great to hear. And if you're opposed to invoking perl, sed should be able to do the job as well. Something like
before build-djgpp.sh (though my paths will be wrong here). |
I also don't understand why the toolchain is called |
At least w/arch x86 (<amd64), the gcc convention seems to be to identify the highest ISA supported by the toolchain. |
Oops, my mistake, I thought mingw-w64 was i386- for 32bit, but it's i686- ...you are right, sorry! |
andrewwutw#45 Add i686 target
So I tried to install this like specified, but it only installs the i586 version. I need the i686 version, and there are no instructions on how to do that.
There is an arch pkg build, but I can't get access to it because I am on fedora. Is there anything I could do?
Thank you.
The text was updated successfully, but these errors were encountered: