Application: MinGW with MSYS and Command Prompt Portable
Category: Development
Description: MinGW is a collection of UNIX tools including the GNU C Compiler and other compilers. MSYS tries to provide useful linux files, for example a shell. [This information will be updated later?!]
Download MinGW Portable Development Test 5 (thanks to Bensawsome)
Mirror by Gizmokid2005: Download MinGW Portable Development Test 5
Mirror by MaienM: Download MinGW Portable Development Test 5
[26,3 MB (27.619.128 Bytes) download / 193 MB (203.034.359 Bytes) installed]
(MD5: A3686F440BD3121B3A2038F378AA295F)
Release Notes:
- MinGW candidate release
- MSYS tech preview
- Updated Versions of automake, autoconf and libtool (compiled them myself)
History
- Development Test 1 (18.03.2009): Initial release ("MSYS Portable Development Test 1")
- Development Test 2 (12.04.2009): Second release ("MinGW Portable Development Test 2")
- Development Test 3 (16.04.2009): Third release ("MinGW Portable Development Test 3")
- Development Test 4 (23.04.2009): Fourth release ("MinGW Portable Development Test 4")
- Development Test 5 (17.05.2009): Fifth release ("MinGW Portable Development Test 5")
ChangeLog for MinGW Development Test 5
- Update the installer to the most recent version
- Compiled with John T. Haller's Windows 7 Patch 1
ChangeLog for MinGW Development Test 4 (Outdated)
- Corrected the path mistake
- Added a macro for debugging
ChangeLog for MinGW Development Test 3 (Outdated!)
- Corrected names
- Corrected version numbers of the launchers
- Corrected AppInfo
- Saved a tiny little bit of memory in Command Prompt Portable

- Updated Readme and Help files
ChangeLog for MinGW Development Test 2 (Outdated!)
- Fixed problems which occur when the drive letter changes
- Added proper version information
- Reviewed appinfo.ini (Category is Development, not Office)
- Changed name to MinGW Portable
- Added Command Prompt Portable
- Provided two seperate launchers - one for MSYS and one for Command Prompt
TODOs for MinGW Development Test 6:
- Add detailed descriptions about the software
- Find the MinGW icon and include it
Known issues
If you have free time and want to help me, please test MinGW Portable 
Don't forget to provide a comment describing what you did and which bugs did occur
(Don't forget to name your operating system!)
Development Test 2 & 3 (Outdated!)
- Problems with the Paths
If you don't have a custom INI-file, the launcher will fail
Development Test 1 (Outdated!)
- Problems when the driveletter is changed (Vista)
Note: look at Data\settings\MSYSPortable\etc\fstab with a texteditor (e.g. Notepad++ Portable)
Outdated Links have been removed, please use the current release!
Notes
OK, some random notes as I think of them/notice them, in no particular order:
This should really be called MinGW Portable. MSYS is really mostly irrelevant. X:\PortableApps\MinGWPortable will be used by Code::Blocks Portable and other IDEs as well (which I'm working on). Being MSYSPortable would spoil it in the extreme. Because it's not MSYS. It's MinGW32/MinGW. MSYS is just an RXVT client which uses MinGW to "emulate" linux if you like.
I suggest that you do what I was going to do, which is have an INI switch to select MSYS or a Command Prompt with the MinGW bin directory in the PATH.
I'll look at this when I can download and test it.
Version number? Installer is MSYS_Portable_0.0.1.paf.exe, this should be MinGW_Portable_5.1.4_Development_Test_1.paf.exe (I think that the right version number is 5.1.4?)
You really shouldn't use versions of things which you compiled if you can avoid it, which you can.
Development is the right category.
Christian, developer, moderator
Code:Blocks is dead, AFAIK.
Code:Blocks is dead, AFAIK. If not, it has serious bugs, making it worthless.
Too many lonely hearts in the real world
Too many bridges you can burn
Too many tables you can't turn
Don't wanna live my life in the real world
Not dead
And what are the serious bugs?
I'm just using it as an example of a C++ IDE. There's also wxDev-C++ (I intend to do that some time) and CodeLite (Zach Thibeau has said he's doing it).
Christian, developer, moderator
stuff on the host computer .
stuff on the host computer . . .
Too many lonely hearts in the real world
Too many bridges you can burn
Too many tables you can't turn
Don't wanna live my life in the real world
Oh
You mean Code::Blocks Portable. Yeah, ZachHudock dropped it, I'm taking it up again.
It's got to me move-move rather than APPDATA redirect as APPDATA redirect stops the Windows file selection dialogues from working (yes, I tested it)
Christian, developer, moderator
yeah. I don't like move-move
yeah. I don't like move-move apps though.
And why would I be talking about anything other then the portable version?
Too many lonely hearts in the real world
Too many bridges you can burn
Too many tables you can't turn
Don't wanna live my life in the real world
re: notes
Hey Chris Morgan,
I really think this should be called MSYS Portable because the main thing I do actually is setting up MSYS and launching it. (And cleaning up afterwards.) MinGW is a dependancy and thus it is included. (You wouldn't call Inkscape Portable "GTK Portable" instead, would you?) Maybe i will add a selection for the installer. The directory can already be set in the .ini in the current version.
I didn't provide proper Version info because I have a lot of things to do at the moment. The proper Version information will be included in Development Test 2.
Concerning self-compiled versions of things: on the MSYS Homepage, it is stated that
"The autotools that are installed by MSYS DTK do not work well and can't build DLLs."I wanted MSYS Portable to be ready to compile right after installing, thus they need to be included. If you think there's another solution, please tell me.
Greetings,
sar3th
EDIT: After talking to Chris Morgan, we finally agreed on the following solution:
The name of MSYS Portable will be MinGW Portable. It will include two launchers, one for MSYS and one for the windows Command Prompt. It will also look for Command Prompt Portable and use its settings.
LyX Portable: ready soon
Good!
This new DT should be good, I'll test it soon.
Nice going
Christian, developer, moderator
Compression
I noticed that it was more than twice as big as my previous MinGW package, so I decided to find out why.
You've got ADA and Java support built in, but that's not the nub.
You haven't compressed the app with UPX! You should try compressing it with the PortableApps.com AppCompactor.
Using NRV2E and recompressing ZIP/JARs:
Size Before: 197622 KB
Size After: 149869 KB
Space Saved: 47753 KB
As you can see, this has taken it down to 75.8% of the original size.
However, where this is not so good is in the installer. Before, it's 26.1 MB. After, it's 36.8 MB. 41% larger. But that's one of the trade-offs you have to make.
Then I found a few minor issues with the rest of the package:
Your next installer filename should MinGW_Portable_1.0.10_Development_Test_3.paf.exe (assuming 1.0.10 is the version number you decide to use... the whole thing is a bit messy).
The launchers should both have "1.6.1.0" as their version numbers - that's the PortableApps.com Launcher version number at the moment.
In AppInfo you've got a few issues: the CMD version should be "Command Prompt Portable (MinGW)" (space between Command and Prompt), and MSYSPortable.ico should be appicon1.ico, and CommandPromptPortable.ico should be appicon2.ico.
Edit: in CommandPromptPortable.nsi, you should change PORTABLEAPPNAME to "Command Prompt Portable (MinGW)" and APPNAME to "MinGW", and on lines 89-92, you should change the following:
;Set New Path ReadEnvStr $PATHENV "PATH" StrCpy $PATHENV `$PATHENV;"$EXEDIR\App\MinGW\bin` System::Call 'Kernel32::SetEnvironmentVariableA(t, t) i("PATH", "$PATHENV").r0'To the following:
;===Put MinGW into the PATH ReadEnvStr $0 "PATH" System::Call 'Kernel32::SetEnvironmentVariableA(t, t) i("PATH", "$EXEDIR\App\MinGW\bin;$0").n'And then you can scrap the "Var PATHENV" line, and not waste a 16 or so bytes of memory by getting $2 filled by the SetEnvironmentVariableA call (that's the turning
r0intonbit)Christian, developer, moderator
Compression
I don't think it's useful to UPX the files. UPXed executables often have issues, and i would not want a compiler to be UPXed, since we don't know what can and will happen. I took care of the other points and I will upload Development Test 3 now. (Btw version number is 5.1.4, from MinGW)
LyX Portable: ready soon
Agreed, compression is not
Agreed, compression is not something we really want to mess with, especially with this kind of stuff.
Too many lonely hearts in the real world
Too many bridges you can burn
Too many tables you can't turn
Don't wanna live my life in the real world