[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4787: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4789: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4790: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4791: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
InsideQC Forums • View topic - updated mingw

updated mingw

Discuss anything not covered by any of the other categories.

Moderator: InsideQC Admins

updated mingw

Postby revelator » Tue Aug 03, 2010 3:49 am

took a lot of work but finally got gcc to accept the mingw64 crt in a standard mingw build.

new version is uploaded on google code :)

a few nifties.

now supports SEH exceptions.
link time optimization.
pretty complete directx sdk included.
new driver development kit (ddk).
besides using sjlj it is fully mingw compatible.

compiled mh's directquake with no problems.

things not in this.

java. its broken on win32 sorry.
User avatar
revelator
 
Posts: 2605
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Postby revelator » Sat Sep 18, 2010 12:14 am

Final release.

Full compiler suite:
languages supported are c c++ ada objc basic pascal clipper.

script support for python perl lua ruby.

includes ogre and irrlicht for easy game development.

also includes a special build of cegui (experimental stable so far but relies on a ton of mingw dll's).

gui tools include qt wxwidgets gtk2 fltk tcl/tk.

one shell for all ! yap this baby only got one shell for all these tools but its configurable and you can develop with several different tools at once :) just rightclick inside the shell window and select your dope :P

libraries libraries libraries !!! well i think after you had a look inside this you might consider msvc2010 pro to be lacking :P

directx support from directx8 through 11 on a mingw compiler woa !!!! heavy thanks go out to the wine community.

several corba compilers mico omniorb orbit2 the first two are optional and not included in the compilers search dirs unless you copy some scripts from etc/scrpt to profile.d the last one is used internally in mingw for some tools but doesnt interfere with anything.

many many many code analysis tools provided like cscope splint rats and some python based ones.

codeblocks ide for everyday use but also ide's for freebasic and freepascal. if you feel adventuorus theres even a small gtk based ide called geany in the mingw\bin folder.

openldap server and client with configuration tool.
postgresql sql database with pgadmin.
sqlite3 for simpler tasks.
and gda for them all ;).

latest gdb debugger with support for python and remote debugging.

docbook tools for creating html documentation.
doxygen (likewise) with graphviz support for nice graphs.

two high quality editors like abiword (most formats) evince (pdf postscript)

suite of image tools like gimp and inkscape. later is a quite powerfull resource editor also.

freepascal includes the lazarus ide which is quite nice (resembles borlands quite a lot so if youre used to that you should have no problem at all getting started).

bsd socket wrapper for windows (one of my own cause i got sick and tired of autotool based applications not finding the network functions. most expect linux sigh) :P

if you link to the dll all other dependencies should be ok the static one needs wsock32 ws2_32 and user32 included.

now the unfortunate thing its huuugeeeeeeeeeeeee :oops:

so i cant host it on google code, hell even compressing this thingy takes two days :lol: and my pc is a bit of a monster so ouch.

unpacked you get about 10 gig of tools im amazed i was able to compress it to about 1 gig.

setting it up is quite easy no installer just unpack the folder in c d e or whatever drive you want to use but make sure its in the root not in program files or any other subfolder the change dir to the inst folder and hit install.cmd it will run a few scripts to setup the right paths and recreate the xml catalogs. when its completed make shortcuts to codeblocks.exe console.exe freepascal\x-lazarus.exe and freebasic\fbide.exe and your ready to go.

the exes with the msys logo are mostly demos of some cool utilities i made with this except these run_ldap.exe run_psql.exe run_pycrust.exe and run_pyshell.exe the first two are for starting the postgresql server and the ldap server they do not show any output but a log will be created in the root dir showing its running.
if you want to create something in either start the servers with these and then go into mingw\bin and execute pgadmin for postgresql or ldapadmin for openldap.

pycrust is a python shell with a debugger and expression window while pyshel is just a nice shell for python :)

python has a lot of utilities compiled in like scons for building applications hg (bit like svn) wxpython for making gui python programs, some interfaces to sql and C/C++ java and objc and also xml.

run_vim.exe starts a windows version of the vim editor likewise run_emacs.exe heh mh is gonna love me for that :shock:

run_inkscape.exe starts the inkscape resource editor.

there are a load of other tools in the mingw folder that are not started with launchers in the root the ones i do start in the root mostly rely on a posix shell to function correctly so the launchers start msys sh.exe and runs the applications through that.

the rest like gimp abiword evince etc works natively in windows.

none of the other tools rely on a posix runtime though there just easier to start in a posix shell ;)

question now would be if anyone would host it as i cannot guarantee that my ftp server will be availiable allways ?

ill put it up for starters though :)

i hope theres interrest in using this a lot of man hours have gone into it (to many) and there will allways be things to improve but i need to stop now so there wont be any upgrades besides what
-> you make yourself with this :) well atleast not anything major.
User avatar
revelator
 
Posts: 2605
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Postby mh » Sat Sep 18, 2010 11:39 am

I'm definitely gonna grab this one and try it out with RMQ. Won't be able to do so for about 2 weeks though.
User avatar
mh
 
Posts: 2292
Joined: Sat Jan 12, 2008 1:38 am

Postby revelator » Sat Sep 18, 2010 12:45 pm

ftp://90.184.233.166:21/devscenic.exe

selfextracting archive.

can also upload it as a kgb archive if you prefer that ;)

will take a few days to compress it though :( the kgb archiver is rather slow but its compression is better than even uharcs :)

unpack it in the root of c: so you end up with c:\codeblocks

or in d or in any drive but make sure its in the root of the drive (my shellscript for setting up the compiler relies on it being there).

if you want to try the lazarus pascal compiler use the launcher.exe in the freepascal folder it will setup the correct paths for freepascal.

no need to use it after that unless you moved the folder somewhere else.

both freepascal and freebasics console tools can be used from the console shell dont start the ide with it though that wont work ;)

the console.exe shell uses bash preferably but in some cases you need a standard windows command shell in that case just enter cmd and hit enter you will still have access to the posix tools :)

if for some reason you prefer the Z shell enter zsh and youre there :) this is btw the only msys version of the Z shell you will find as its a port by me.

as for specific compiler commands ->

enter -flto in you projects variables for link time optimization.
enter -Wl,--allow-multiple-definitions for cases where you get errors about a multiple defined symbol.

-Wl,--something means pass the option to the linker.

-Werror = warnings are errors. -Wno-error = warnigs are not errors and so on.

-static-libgcc = link to the static gcc runtime (else you project might get a dependancy on the libgcc dll).
-static-libstdc++ = link to the static c++ runtime (else your cplus projects might depend on the libstdc++ dll).

-gomp = use the openmp library for mutlicore cpu's.

-Wl,--large-address-aware = create executables that can adress memory above win32's limit.

and a lot more if you have a specific question ill gladly help.

enjoy :)
User avatar
revelator
 
Posts: 2605
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Postby revelator » Sat Sep 18, 2010 3:30 pm

hmm. seems my python port has made it to the Qt compiler :shock:

they somehow forgot to mention who made it though :?

ah well atleast it finds use 8)

btw all the extras where compiled with my own mingw so no dependency on the mingw dll.

only one using it atm is the freebasic ide cause i havent had time recompiling it.
User avatar
revelator
 
Posts: 2605
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Postby revelator » Thu Sep 23, 2010 11:23 am

finishing installer also since theres quite a few tools that need to be setup.

should be done this evening :)

ill upload it as an iso.

reason i said there wont be many updates is im moving shortly cause of bad health ya sucks and boo :evil:

so im not able to code 24/7 like im used to (wonder how i got sick) :lol:

the thing might have some quirks but its in the managable category i did a lot to make sure things dont collide.

oh and before i forget specific hacks in sources made for the normal mingw will have to be unhacked ! the runtime in this more closely resembles the msvc runtime theres also no mingw ctor/dtor dll as it has full support for thread local storage. oh and you get the secure headers api like on msvc :)
User avatar
revelator
 
Posts: 2605
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Postby revelator » Fri Sep 24, 2010 9:33 am

User avatar
revelator
 
Posts: 2605
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Postby revelator » Fri Sep 24, 2010 5:37 pm

ergh win7 forgot my firewall settings so noone could actually download it from me :(

works again.
User avatar
revelator
 
Posts: 2605
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Postby revelator » Sat Sep 25, 2010 4:40 pm

User avatar
revelator
 
Posts: 2605
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Postby revelator » Mon Sep 27, 2010 1:23 am

User avatar
revelator
 
Posts: 2605
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Postby revelator » Wed Sep 29, 2010 5:47 am

User avatar
revelator
 
Posts: 2605
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Postby revelator » Thu Sep 30, 2010 11:40 am

User avatar
revelator
 
Posts: 2605
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Postby revelator » Sat Oct 02, 2010 8:08 am

last minute addition.

the Qt4 sdk included in this compiler is prebuilt but if you intend on using it somewhere besides the default folder its installed in theres a few caveats.

1: be sure to do a mingw32-make distclean before moving it or it will pick up the last path used and fail the next time you rebuild it because the paths have changed.

2: theres a rather irritating bug with the webkit core where the moc generated on the first run will be broken. solution go to the src/3rdparty/webkit/webcore/tmp/debug_shared or release_shared and delete the mocinclude.tmp file then rerun mingw32-make and moc will recreate it correctly this time.

i included a batch file with my current build settings you can use if you need to rebuild it. it takes two arguments build.bat configure configures the sdk with the settings included in the bat build.bat clean to do a confclean.

the Qt3 sdk had the thread hacks for standard mingw removed as there not nessesary with my runtime (in fact it will fail to compile if it wasnt removed) ;)

if you intend on using Qt with a mingw app just copy the relevant script in etc/scripts to etc/profile.d and its paths will be included by default.

the codeblocks ide has options to setup paths for Qt by itself :)
User avatar
revelator
 
Posts: 2605
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Postby revelator » Mon Oct 11, 2010 8:41 pm

User avatar
revelator
 
Posts: 2605
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Postby revelator » Mon Nov 15, 2010 8:21 pm

not sure if anyone has tried it out yet, since i was moving and needed to update the iso.

the work is mostly complete and ill stop development on all but keeping the crt + api up to date with mingw64.

last build is packing now and will probably be done in a few hours.

this is one huge collection of compilers tools and libraries and a lot of work has been done to make them easy to use with that in mind remember to not just blindly add everything to the windows paths.

installer will warn you about that.

sometimes you have to add something to the path though just remember to remove it again if things start acting up (mingw is normally ok to have on path).

as for things that may make your quake coding life easier i can point to libraries such as GLee and GLew.

GLee is a framework for opengl extensions and supports up to opengl 3.0.

GLew is more of the same but supports opengl extensions up to 4.1.

its up to preference which one to use
maybe none if you prefer writing the extension checks yourself.

other tools include not only compilers but several image manipulation and conversion tools like gimp imagemagick and inkscape.

build tools includes cmake scons waf make and several ide's for development.

latest addition adds the llvm compiler framework which creates some pretty fast code.

the included msys has a newer perl than the one provided on the mingw site but its still posix. if you need a windows perl i included one of the latest and a script to replace the msys perl.

ftp://90.184.233.166:21/cb-adv.iso

wait a few hours before downloading so i can update the iso with the new installer.
User avatar
revelator
 
Posts: 2605
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Next

Return to General Discussion

Who is online

Users browsing this forum: No registered users and 2 guests