g++ 4.3

Examenroosters, algemene discussies, ...

Moderator: Praesidium

User avatar
Shinta
WOZ
Posts: 1122

g++ 4.3

Post#1 » Tue Aug 26, 2008 7:54 pm

Hey iedereen,

sinds gcc (g++) 4.3 zijn er een aantal wijzigingen gebeurd die ervoor zullen zorgen dat bepaalde (lees veel) sources niet meer correct zullen compileren. De reden hiervoor is dat de compiler stricter is geworden, met name bij de include statements. Waar vroeger cstlib, cstring en dergelijke impliciet geimporteerd werd indien nodig is dit nu niet meer het geval waardoor volgende errors veelvuldig voorkomen:

Code: Select all

src/beidcommon/TLVBuffer.cpp:185: error: 'memset' was not declared in this scope                                                                                                    
src/beidcommon/TLVBuffer.cpp:186: error: 'memcpy' was not declared in this scope
src/beidcommon/TLVBuffer.cpp:187: error: 'atol' was not declared in this scope
src/beidcommon/TLVBuffer.cpp: In member function 'void eidcommon::CTLVBuffer::FillBinaryData(unsigned char, unsigned char*)':
src/beidcommon/TLVBuffer.cpp:197: error: 'memcpy' was not declared in this scope
Ik zou daarom willen refereren naar een klein overzicht van de verschillende includes die nu wel moeten bijgevoegd worden wanneer bepaalde errors plaatsvinden: http://www.cyrius.com/journal/2007/05/1 ... .3-include. Er zijn nog een aantal andere artikels over te vinden als je wat zoekt.

In de hoop enkele panikerende mensen verder te hebben geholpen als hun vorig jaar nog wel werkende software nu niet meer compileert.
Remember remember the fifth of November
Gunpowder, treason and plot.
I see no reason why gunpowder, treason
Should ever be forgot...

User avatar
HyperQuantum
Posts: 61
Contact:

Re: g++ 4.3

Post#2 » Mon Sep 08, 2008 1:02 pm

Shinta wrote:De reden hiervoor is dat de compiler stricter is geworden, met name bij de include statements.
Het is niet de compiler die strikter is geworden, ze hebben gewoon een aantal standaard C++ headers opgekuisd zodat die bepaalde andere header files niet langer onnodig als dependency hebben.
Shinta wrote:In de hoop enkele panikerende mensen verder te hebben geholpen als hun vorig jaar nog wel werkende software nu niet meer compileert.
Waarom die waarschuwing eigenlijk? Op fenix bvb staat nog GCC 4.2, en de labo PCs hadden geloof ik zelfs nog een oudere GCC. Ik betwijfel dat op de meeste Linux distro's al automatisch naar versie 4.3 wordt overgeschakeld (op Gentoo bvb is de laatste "stable" versie van GCC nog 4.1.2).
[url=http://hyperquantum.be/hyper/]The Hyper programming language[/url]

[i]It is 2009. Do you know what your operating system is doing? Do [b]you[/b] control it?[/i]

User avatar
Shinta
WOZ
Posts: 1122

Re: g++ 4.3

Post#3 » Mon Oct 06, 2008 11:34 am

HyperQuantum wrote:
Shinta wrote:In de hoop enkele panikerende mensen verder te hebben geholpen als hun vorig jaar nog wel werkende software nu niet meer compileert.
Waarom die waarschuwing eigenlijk? Op fenix bvb staat nog GCC 4.2, en de labo PCs hadden geloof ik zelfs nog een oudere GCC. Ik betwijfel dat op de meeste Linux distro's al automatisch naar versie 4.3 wordt overgeschakeld (op Gentoo bvb is de laatste "stable" versie van GCC nog 4.1.2).
Op mijn openSuse staat automatisch 4.3 ..
Remember remember the fifth of November
Gunpowder, treason and plot.
I see no reason why gunpowder, treason
Should ever be forgot...

User avatar
HyperQuantum
Posts: 61
Contact:

Re: g++ 4.3

Post#4 » Wed Oct 08, 2008 12:01 am

Shinta wrote:Op mijn openSuse staat automatisch 4.3 ..
Amai dan zijn ze ondertussen wel wat veranderd bij Suse. Toen ik nog Suse had (SuSE 8.x of zoiets), dan zat ik opgescheept met GCC 3.3.x, terwijl 3.4 al lang uit was.
[url=http://hyperquantum.be/hyper/]The Hyper programming language[/url]

[i]It is 2009. Do you know what your operating system is doing? Do [b]you[/b] control it?[/i]

Return to “Algemeen”

Who is online

Users browsing this forum: No registered users and 32 guests