{"id":142,"date":"2020-09-27T07:29:20","date_gmt":"2020-09-27T07:29:20","guid":{"rendered":"https:\/\/smedley.id.au\/os2ports_wp\/?page_id=142"},"modified":"2020-09-27T09:17:00","modified_gmt":"2020-09-27T09:17:00","slug":"gcc-v4-3-x","status":"publish","type":"page","link":"https:\/\/os2ports.smedley.id.au\/?page_id=142","title":{"rendered":"GCC v4.3.x"},"content":{"rendered":"\n<p>Mainly due to the fact that GCC 3.3.5 (which is what is currently used by kLibc) is becoming too old to build the latest Mozilla trunk code, I started working on building a newer version of GCC.<\/p>\n\n\n\n<p>I&#8217;ve started with v3.4.6 &#8211; as the thought was that the amount of changed between 3.3.5 and 3.4.6 would be comparatively small compared with aiming for the &#8216;latest&#8217; GCC (currently 4.3.3).&nbsp; I now have builds of 3.4.6, 4.0.4 and 4.3.3; The current binary of GCC 4.3.3 has been used to build several projects successfully &#8211; ie rsync, Apache2, MySQL, Firefox 3.0-cvs, Ghostscript, ffmpeg amongst others<\/p>\n\n\n\n<p>&nbsp;Known Issues with the current 4.3.3 release (2009-2-24)<\/p>\n\n\n\n<p>&#8211; link warning when using -Zomf &#8211; emxomf will require updating to deal with the new stabs types, but according to Knut, these warnings can be safely ignored, and only affect debugging<\/p>\n\n\n\n<p>Updates since original build &#8211; the date in brackets reflects the first build that contained the fix<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>&#8211; Added threading support (2008-10-11 build)<\/li><li>&#8211; fixed problem with stdcall (2008-10-12 build)&nbsp;<\/li><li>&#8211; fixed (hopefully) &#8216;internal compiler error&#8217; crashes when -fPIC is used (2008-10-12 build)<\/li><li>&#8211; Added support for precompiled headers based on cygwin code (untested) (2008-10-12b build)&nbsp;<\/li><li>&#8211; Fixed &#8216;gcc conftest.c -lgcc&#8217; produced -lgcc.exe (20081012b build)&nbsp;<\/li><li>&#8211; Fixed problems with cdecl (20081014 build)&nbsp;<\/li><li>&#8211; Fixed (hopefully) problems with fastcall (20081014 build)&nbsp;<\/li><li>&#8211; Binutils 2.16.1 (minus ld.exe) included (20081025 build)&nbsp;<\/li><li>&#8211; Fixed (hopefully) problem with recursive thread support in libstdc++ &#8211; thanks Yuri for the patch! (20081025 build)&nbsp;<\/li><li>&#8211; Fixed a problem with dllexport and Seamonkey (20081031 build)&nbsp;<\/li><li>&#8211;&nbsp;Fixed problem with c++ exceptions (20081105 build)&nbsp;<\/li><li>&#8211; Enabled &#8216;-O3 -march=pentium -mtune=pentium4&#8217; optimisation (20081105b build)&nbsp;<\/li><li>&#8211; Fixed problem with missing &#8216;popcount*&#8217; symbol when linking certain code (20081116 build)&nbsp;<\/li><li>&#8211; Fixed problems with &#8216;vtable for xxx&#8217; symbol missing for Seamonkey (20081116 build)&nbsp;<\/li><li>&#8211; Fixed remaining &#8216;virtual method&#8217; link errors with Seamonkey (20090116 build)&nbsp;<\/li><li>&#8211; Updated to GCC v4.3.3 source code<\/li><li>&#8211; Updated emx.c, emx.h, emx-cxx.c based on latest Win32 code<\/li><li>&#8211; Added support for the GOMP multiprocessor library (untested) (20090224 build)<\/li><li>&#8211; Fixed problems compiling C++ SDL applications (20090224 build)<\/li><li>&#8211; Fixed c++ headers to allow basic wchar support (20090224 build)<\/li><\/ul>\n\n\n\n<p>&#8211; Removed binutils &#8211; this will be available separately (20090224 build)<\/p>\n\n\n\n<p>Problems with this build can be reported using my bug tracker at&nbsp;<a href=\"http:\/\/mantis.smedley.info\/\">http:\/\/mantis.smedley.info<\/a><\/p>\n\n\n\n<p>Current binaries:<\/p>\n\n\n\n<p>&nbsp;<a href=\"https:\/\/www.dropbox.com\/s\/iw8y4f0pk71tije\/gcc-4.3.4-os2-20090807.zip?dl=0\">GCC 4.3.4 2009-08-07 release<\/a>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Mainly due to the fact that GCC 3.3.5 (which is what is currently used by kLibc) is becoming too old to build the latest Mozilla trunk code, I started working on building a newer version of GCC. I&#8217;ve started with v3.4.6 &#8211; as the thought was that the amount of changed between 3.3.5 and 3.4.6 &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/os2ports.smedley.id.au\/?page_id=142\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;GCC v4.3.x&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":70,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-142","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/os2ports.smedley.id.au\/index.php?rest_route=\/wp\/v2\/pages\/142","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/os2ports.smedley.id.au\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/os2ports.smedley.id.au\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/os2ports.smedley.id.au\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/os2ports.smedley.id.au\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=142"}],"version-history":[{"count":2,"href":"https:\/\/os2ports.smedley.id.au\/index.php?rest_route=\/wp\/v2\/pages\/142\/revisions"}],"predecessor-version":[{"id":267,"href":"https:\/\/os2ports.smedley.id.au\/index.php?rest_route=\/wp\/v2\/pages\/142\/revisions\/267"}],"up":[{"embeddable":true,"href":"https:\/\/os2ports.smedley.id.au\/index.php?rest_route=\/wp\/v2\/pages\/70"}],"wp:attachment":[{"href":"https:\/\/os2ports.smedley.id.au\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=142"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}