Forum

Page 14 of 17

Re: last version of C::B Advanced

PostPosted: Tue Jan 19, 2016 2:31 am
by revelator
A small whoops turned up, i forgot to change the c++ library versions in my build script so the new mingw builds link to the wrong c++ include directory namely the previous 5.2.0 version. So instead i uploaded a fully updated version of the mingw compiler with dwarf2 exceptions and built with the correct paths.

gcc-5.3.0
binutils-2.25.1
libiconv-1.14

python-2.7.11 and all dependencies + gdb-7.10 with python support.

everything was built with the uploaded mingw compiler (yes that includes python2) ;)

Re: last version of C::B Advanced

PostPosted: Thu Feb 11, 2016 6:18 am
by revelator
Uploaded the latest codeblocks 1.16 as a standalone.

https://sourceforge.net/projects/cbadva ... z/download

This version was modified specifically for the msys2 build environment, just unpack it directly in the msys2 root directory.

Cool things to know.

You can use msys2 mingw32 or mingw64 clang directly from it.
Optimization switches have been increased, you can now specify -O1 to -O3 or more, without having to write it in the extra compiler flags.
Also many other optimization switches now avaliable.

Msys2 mingw32 and mingw64 defaults to linking to the dynamic gcc runtimes,
my own versions of those do not while still retaining the ability to throw exceptions across dll boundaries.

You can use either version :) but if you dont want to have your stuff depend on the libgcc and libstdc++ dll,
you can temporarily replace you mingw64 versions with mine.

Ill probably not create new installers, instead i will upload my current mingw64 and codeblocks versions so that people can switch when the need arises.

Re: last version of C::B Advanced

PostPosted: Wed Feb 17, 2016 11:14 pm
by revelator
Added some more ump to the newly built old school mingw compiler.

Latest binutils 2.25.1
Latest DrMinGW
Latest Boost
Latest SDL + SDL_net and SDL_gfx
yasm nasm and a high quality C preprocessor called mcpp that defaults to C99
ncurses
openssl
python-2.7.11
catgets
iconv
gettext
nvidia cg libraries
opencl headers
directx 9.0c sdk
gnutls
expat
readline
icu
nettle
physfs
termcap
plibc
libtre and systre (regex libraries)
rtmp
libtasn
libyaml
p11kit
oracle db
alut
openal32
bz2
zlib
lzma
lzo2
idn
sqlite3
tcl and tk 8.6

gcc-5.3.0

Yes old mingw finally supports c++11 and c++14 as well as lto and pch, gcc itself is built statically so your executables wont rely on neither libgcc nor libstdc++
and thanks to majorly reworked patch from back in the days where gcc could not be built with shared libraries on windows, it still supports throwing exceptions from dll boundaries. This does not mean that gcc itself cannot built shared libraries :) it can and they work quite well.

It will be uploaded soon.

Re: last version of C::B Advanced

PostPosted: Fri Feb 19, 2016 5:03 am
by qbism
I will be trying this. :biggrin: Do you know the minimum Windows version that is supported?

Re: last version of C::B Advanced

PostPosted: Fri Feb 19, 2016 10:11 pm
by revelator
All versions should be supported :) as long as the processor is a core2 type or later, thats the minimum supported cpu type of this build.
I could also make a version with a minimum of an i686 cpu (pentium pro) but older than that is no longer possible if you want full support.

https://sourceforge.net/projects/cbadva ... z/download

Re: last version of C::B Advanced

PostPosted: Thu Mar 03, 2016 3:56 am
by qbism
Finally got around to trying the mingw gcc 5.3 but couldn't get far. At least some of the win32 headers are broken. Missing defines and other bits. msacm.h for example.

Re: last version of C::B Advanced

PostPosted: Thu Mar 03, 2016 2:51 pm
by revelator
mingw.org has fallen behind quite a bit over the years sadly,
so the headers are not up to date with current windows sdk versions.
I did include the ported directx 9 sdk from dev-cpp though as the mingw included version is rather lobotomized.

so if you use functions not yet ported to mingw you will have to patch the missing stuff into your source code.

old school quake builds fine here as long as it does not use any fancy functions from newer sdk's

stick to mingw64 in case its hopeless :) my latest build seems to be rock solid and im about to zip up the package.

Re: last version of C::B Advanced

PostPosted: Fri Mar 04, 2016 8:04 am
by revelator
Hmm odd i did notice one bug it seems the gettext package was somehow deleted from the build Oo wtf.
guess ill have to reupload.

Re: last version of C::B Advanced

PostPosted: Fri Mar 04, 2016 7:06 pm
by revelator
https://sourceforge.net/projects/cbadva ... z/download

reuploaded now with the missing gettext package.

i checked msacm.h against the mingw64 version and its missing a lot of extentions so that might be one cause why it fails on some sources.
then again old mingw can actually be used for crossbuilding things like the kodi media centre so its not a totally lost cause :) but it does need more patching than mingw64 at times.

Re: last version of C::B Advanced

PostPosted: Sat Mar 05, 2016 7:45 pm
by qbism
Thanks, I might try patching up the header enough to get by. I want to see if there were compatibility or performance improvements over mingw64. I noticed it picked up a couple extra warnings, including a potentially important implicit defined function warning.

Re: last version of C::B Advanced

PostPosted: Sun Mar 06, 2016 8:48 am
by revelator
Most improvements will be support for compiler intrinsics c++11 and c++14 :) in that regard its the same as mingw64.
and yeah it seems the gcc folks are working on making it a more strict compiler, some crosswork from clang i believe.

You could take a look at the mingw64 msacm header for the missing defines, lets just hope that the mingw.org libraries also have the exports needed to link those in.

Re: last version of C::B Advanced

PostPosted: Sun Mar 06, 2016 12:23 pm
by revelator
Because of the size i havent yet uploaded the new mingw64 gcc compilers, it will be done soon but it would have to be spanned archives because of sourceforge size restrictions.
new additions are gcc-5.3.0 binutils-2.6 clang-3.7.1 python-2.7.11 python-3.5 and a monstrous amount of libraries and tools.
Things on hold because of bugs are mostly gtk related, the newest versions seem to have some rather nasty bugs on windows that crashes gtk and tools depending on them.
qt5 is finally working as it should and i included a bash script for patching qt in case you install the compilers somewhere else. You can run it by opening a mingw32 or mingw64 bash shell and do qtpatcher on the commandline. This will patch qt's paths to correspond with the new path.

Re: last version of C::B Advanced

PostPosted: Tue Mar 08, 2016 8:23 am
by revelator
Heh ok i actually nailed the gtk bug to the winpthreads library, seems it does not play nice when linked in statically so i reverted gtk to use win32 threads instead, and now it works. I also gotten around to making a mingw.org path for building packages via pacman in msys2.
So now im building every package the old mingw compiler can chew itself through :), they will be uploaded in the mingw builds section on sourceforge.

Sadly theres quite a few packages that wont build with the old mingw compiler now, gtk is a no go unless you use a rather old source, same for glib2 and a lot of the other support libraries. Most imaging libraries build, also most media based ones, so its not a total loss.
But tbh. these days it should only be used for building stuff that expects older runtimes. PCem seems to run quite nicely when built with it :)

Re: last version of C::B Advanced

PostPosted: Wed Mar 09, 2016 11:42 am
by revelator
Mingw Packages uploaded :)

Now also includes python2 and 3.

the python builds are not pacman packages because i had to crossbuild them with mingw64 (major problems otherwise).
also built wxwidgets and wxpython :) and they are indeed pacman packages. If you prefer installing them via pacman you need to add -dd and and --force to pacman -U package else it will complain about not having python2 and 3 avaliable even if we do.

fixed a few errors in the mingw w32api headers and added a missing include (objidl.h) which i wrote myself. Its barebones but enough
to get around errors with sources that rely on it being there.

My mingw build environment will have these fixes, it can be downloaded soon.

Re: last version of C::B Advanced

PostPosted: Fri Mar 11, 2016 10:01 am
by revelator
edit that should have been shobjidl.h :mrgreen:
tk8.6 expects it without it no tcl/tk.