last version of C::B Advanced

Discuss anything not covered by any of the other categories.
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: last version of C::B Advanced

Post 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) ;)
Productivity is a state of mind.
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: last version of C::B Advanced

Post 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.
Productivity is a state of mind.
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: last version of C::B Advanced

Post 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.
Productivity is a state of mind.
qbism
Posts: 1236
Joined: Thu Nov 04, 2004 5:51 am
Contact:

Re: last version of C::B Advanced

Post by qbism »

I will be trying this. :biggrin: Do you know the minimum Windows version that is supported?
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: last version of C::B Advanced

Post 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
Productivity is a state of mind.
qbism
Posts: 1236
Joined: Thu Nov 04, 2004 5:51 am
Contact:

Re: last version of C::B Advanced

Post 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.
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: last version of C::B Advanced

Post 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.
Productivity is a state of mind.
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: last version of C::B Advanced

Post 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.
Productivity is a state of mind.
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: last version of C::B Advanced

Post 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.
Productivity is a state of mind.
qbism
Posts: 1236
Joined: Thu Nov 04, 2004 5:51 am
Contact:

Re: last version of C::B Advanced

Post 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.
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: last version of C::B Advanced

Post 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.
Productivity is a state of mind.
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: last version of C::B Advanced

Post 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.
Productivity is a state of mind.
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: last version of C::B Advanced

Post 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 :)
Productivity is a state of mind.
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: last version of C::B Advanced

Post 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.
Productivity is a state of mind.
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: last version of C::B Advanced

Post by revelator »

edit that should have been shobjidl.h :mrgreen:
tk8.6 expects it without it no tcl/tk.
Productivity is a state of mind.
Post Reply