[Fix proposal] compiling XSTools with GCC 4.3

Wrote new code? Fixed a bug? Want to discuss technical stuff? Feel free to post it here.

Moderator: Moderators

Message
Author
Technology
Super Moderators
Super Moderators
Posts: 801
Joined: 06 May 2008, 12:47
Noob?: No

[Fix proposal] compiling XSTools with GCC 4.3

#1 Post by Technology »

It seems like from GCC v4.3 on, hash_fun.h has moved from /ext/ to /backward/ to retain backward compability?
So now i'm not sure if we should make use of that backward compability or not.
If this is found to be a proper fix then i'll commit.

Code: Select all

--- tmp/sparseconfig-5819.h	2008-12-24 02:34:17.000000000 +0100
+++ home/technology/openkore/src/auto/XSTools/utils/sparseconfig.h	2008-12-21 07:27:51.000000000 +0100
@@ -33,8 +33,18 @@
 	// In windows-land, hash<> is called hash_compare<> (from xhash.h)
 	#define hash  hash_compare
 #else
+	#ifndef GCC_VERSION
+	#define GCC_VERSION (__GNUC__ * 10000 \
+                    	 + __GNUC_MINOR__ * 100 \
+                    	 + __GNUC_PATCHLEVEL__)
+	#endif
+
 	/* the location of <hash_fun.h>/<stl_hash_fun.h> */
-	#define HASH_FUN_H <ext/hash_fun.h>
+	#if GCC_VERSION < 40300
+		#define HASH_FUN_H <ext/hash_fun.h>
+	#else
+		#define HASH_FUN_H <backward/hash_fun.h>
+	#endif
 	/* the namespace of hash_map/hash_set */
 	#define HASH_NAMESPACE __gnu_cxx
 #endif
I'm not 100% sure if this is actually neccesary but leaving it here just in case.

Code: Select all

--- tmp/consoleui-test-0.cpp	2008-12-24 02:49:25.000000000 +0100
+++ home/technology/openkore/src/test/consoleui-test.cpp	2008-12-21 05:53:35.000000000 +0100
@@ -1,3 +1,4 @@
+#include <stdlib.h>
 #include "consoleui.h"
 #include <stdio.h>
 #include <unistd.h>
One ST0 to rule them all? One PE viewer to find them!
One ST_kRO to bring them all and in the darkness bind them...

Mount Doom awaits us, fellowship of OpenKore!

Technology
Super Moderators
Super Moderators
Posts: 801
Joined: 06 May 2008, 12:47
Noob?: No

Re: [Fix proposal] compiling XSTools with GCC 4.3

#2 Post by Technology »

kali, you comitted a slightly different version of my patch.
May i ask you why?
Have you tried compiling on windows with GCC 4.3 or above already?
I intended this change for unix only (like how it is in the above patch), because i have no knowledge about if the file structure is any different in windows.

This line seems to have lost all meaning with your implementation:

Code: Select all

#define HASH_FUN_H   <hash_map>
And could anyone explain why the netdirect.dll & xstools.dll that you can download here,
are smaller than 0.5 MB together while the ones that you compile are over 6 MB?
And what exactly are the differences?

On a sidenote, if you want to compile when you have perl 5.10 installed change:

Code: Select all

	perlenv['LIBS'] += ['perl58']
to:

Code: Select all

	perlenv['LIBS'] += ['perl510']
on line 283 in SConstruct
One ST0 to rule them all? One PE viewer to find them!
One ST_kRO to bring them all and in the darkness bind them...

Mount Doom awaits us, fellowship of OpenKore!

kali
OpenKore Monk
OpenKore Monk
Posts: 457
Joined: 04 Apr 2008, 10:10

Re: [Fix proposal] compiling XSTools with GCC 4.3

#3 Post by kali »

Actually I'm not really sure anymore. This has been sitting in my server for quite a long time now, and I only committed it because someone was asking foe a fix. I haven't tested on windows (no windows here, sorry).

If there are any improvements, feel free to modify them :) You are the one who first pointed the proper solution anyway :)

The XSTools and dll are small probably because they have been stripped of debugging symbols.
Got your topic trashed by a mod?

Trashing topics is one click, and moving a topic to its proper forum is a lot harder. You expend the least effort in deciding where to post, mods expend the least effort by trashing.

Have a nice day.

Technology
Super Moderators
Super Moderators
Posts: 801
Joined: 06 May 2008, 12:47
Noob?: No

Re: [Fix proposal] compiling XSTools with GCC 4.3

#4 Post by Technology »

But then, isn't it safer if we applied the above patch (wich only affects compilation on *nix),
and wait till someone with windows & GCC 4.3 reports a bug (if any)?

I was able to compile it on windows using GCC 3.4.4 (cygwin) with kali's patch, but can't confirm for 4.3

Could anyone look how to have SConstruct support both perl 5.8 and 5.10? (see above post)
One ST0 to rule them all? One PE viewer to find them!
One ST_kRO to bring them all and in the darkness bind them...

Mount Doom awaits us, fellowship of OpenKore!

suseno
Noob
Noob
Posts: 15
Joined: 24 May 2009, 10:32
Noob?: No
Location: Indonesia RO
Contact:

Re: [Fix proposal] compiling XSTools with GCC 4.3

#5 Post by suseno »

Confirmed!
I'm using GCC 4.3.3 and failed to compile.
Look here for details: http://forums.openkore.com/viewtopic.php?f=10&t=6137

Here is the Error report:
make: Entering directory `/home/herry/openkore-2.0.6.1'
scons: Reading SConscript files ...
/home/herry/openkore-2.0.6.1/src/scons-local-0.98.5/SCons/Platform/posix.py:38: DeprecationWarning: The popen2 module is deprecated. Use the subprocess module.
import popen2
/home/herry/openkore-2.0.6.1/src/scons-local-0.98.5/SCons/Tool/msvs.py:37: DeprecationWarning: the md5 module is deprecated; use hashlib instead
import md5
Checking Perl configuration ...(cached) yes
Checking for C library ncurses... (cached) yes
Checking for GNU readline 4.3 or higher...(cached) yes
SCons.Script:132: DeprecationWarning: os.popen3 is deprecated. Use the subprocess module.
Checking for libcurl...(cached) libcurl 7.18.2
scons: done reading SConscript files.
scons: Building targets ...
g++ -o src/auto/XSTools/utils/perl/Benchmark.os -c -Wall -g -O2 -pipe -fPIC -D_REENTRANT -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DVERSION=\"1.0\" -DXS_VERSION=\"1.0\" -Wall -g -O2 -pipe -fPIC -D_REENTRANT -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DVERSION=\"1.0\" -DXS_VERSION=\"1.0\" -fPIC -I/usr/lib/perl/5.10/CORE src/auto/XSTools/utils/perl/Benchmark.cpp
In file included from src/auto/XSTools/utils/perl/Benchmark.xs:1:
src/auto/XSTools/utils/perl/../dense_hash_map.h:93:66:
error: ext/hash_fun.h: No such file or directory
In file included from src/auto/XSTools/utils/perl/Benchmark.xs:1:
src/auto/XSTools/utils/perl/../dense_hash_map.h:102: error: expected type-specifier
src/auto/XSTools/utils/perl/../dense_hash_map.h:102: error: expected '>'
src/auto/XSTools/utils/perl/../dense_hash_map.h:116: error: 'EqualKey' was not declared in this scope
src/auto/XSTools/utils/perl/../dense_hash_map.h:116: error: 'Alloc' was not declared in this scope
src/auto/XSTools/utils/perl/../dense_hash_map.h:116: error: template argument 5 is invalid
src/auto/XSTools/utils/perl/../dense_hash_map.h:116: error: template argument 6 is invalid
src/auto/XSTools/utils/perl/../dense_hash_map.h:120: error: 'ht' is not a class or namespace
src/auto/XSTools/utils/perl/../dense_hash_map.h:123: error: 'ht' is not a class or namespace
src/auto/XSTools/utils/perl/../dense_hash_map.h:124: error: 'ht' is not a class or namespace
src/auto/XSTools/utils/perl/../dense_hash_map.h:125: error: 'ht' is not a class or namespace
src/auto/XSTools/utils/perl/../dense_hash_map.h:127: error: 'ht' is not a class or namespace
src/auto/XSTools/utils/perl/../dense_hash_map.h:128: error: 'ht' is not a class or namespace
src/auto/XSTools/utils/perl/../dense_hash_map.h:129: error: 'ht' is not a class or namespace
src/auto/XSTools/utils/perl/../dense_hash_map.h:130: error: 'ht' is not a class or namespace
src/auto/XSTools/utils/perl/../dense_hash_map.h:131: error: 'ht' is not a class or namespace
src/auto/XSTools/utils/perl/../dense_hash_map.h:132: error: 'ht' is not a class or namespace
src/auto/XSTools/utils/perl/../dense_hash_map.h:134: error: 'ht' is not a class or namespace
src/auto/XSTools/utils/perl/../dense_hash_map.h:135: error: 'ht' is not a class or namespace
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'int google::dense_hash_map<Key, T, HashFcn>::begin()':
src/auto/XSTools/utils/perl/../dense_hash_map.h:138: error: request for member 'begin' in '((google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'int google::dense_hash_map<Key, T, HashFcn>::end()':
src/auto/XSTools/utils/perl/../dense_hash_map.h:139: error: request for member 'end' in '((google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'int google::dense_hash_map<Key, T, HashFcn>::begin() const':
src/auto/XSTools/utils/perl/../dense_hash_map.h:140: error: request for member 'begin' in '((const google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'const int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'int google::dense_hash_map<Key, T, HashFcn>::end() const':
src/auto/XSTools/utils/perl/../dense_hash_map.h:141: error: request for member 'end' in '((const google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'const int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'int google::dense_hash_map<Key, T, HashFcn>::hash_funct() const':
src/auto/XSTools/utils/perl/../dense_hash_map.h:145: error: request for member 'hash_funct' in '((const google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'const int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'int google::dense_hash_map<Key, T, HashFcn>::key_eq() const':
src/auto/XSTools/utils/perl/../dense_hash_map.h:146: error: request for member 'key_eq' in '((const google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'const int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In constructor 'google::dense_hash_map<Key, T, HashFcn>::dense_hash_map(InputIterator, InputIterator, int, const int&, const int&)':
src/auto/XSTools/utils/perl/../dense_hash_map.h:160: error: request for member 'insert' in '((google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'void google::dense_hash_map<Key, T, HashFcn>::clear()':
src/auto/XSTools/utils/perl/../dense_hash_map.h:166: error: request for member 'clear' in '((google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'void google::dense_hash_map<Key, T, HashFcn>::clear_no_resize()':
src/auto/XSTools/utils/perl/../dense_hash_map.h:169: error: request for member 'clear_no_resize' in '((google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'void google::dense_hash_map<Key, T, HashFcn>::swap(google::dense_hash_map<Key, T, HashFcn>&)':
src/auto/XSTools/utils/perl/../dense_hash_map.h:170: error: request for member 'swap' in '((google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'int google::dense_hash_map<Key, T, HashFcn>::size() const':
src/auto/XSTools/utils/perl/../dense_hash_map.h:174: error: request for member 'size' in '((const google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'const int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'int google::dense_hash_map<Key, T, HashFcn>::max_size() const':
src/auto/XSTools/utils/perl/../dense_hash_map.h:175: error: request for member 'max_size' in '((const google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'const int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'bool google::dense_hash_map<Key, T, HashFcn>::empty() const':
src/auto/XSTools/utils/perl/../dense_hash_map.h:176: error: request for member 'empty' in '((const google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'const int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'int google::dense_hash_map<Key, T, HashFcn>::bucket_count() const':
src/auto/XSTools/utils/perl/../dense_hash_map.h:177: error: request for member 'bucket_count' in '((const google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'const int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'int google::dense_hash_map<Key, T, HashFcn>::max_bucket_count() const':
src/auto/XSTools/utils/perl/../dense_hash_map.h:178: error: request for member 'max_bucket_count' in '((const google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'const int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'void google::dense_hash_map<Key, T, HashFcn>::resize(int)':
src/auto/XSTools/utils/perl/../dense_hash_map.h:180: error: request for member 'resize' in '((google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'int google::dense_hash_map<Key, T, HashFcn>::find(const int&)':
src/auto/XSTools/utils/perl/../dense_hash_map.h:184: error: request for member 'find' in '((google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'int google::dense_hash_map<Key, T, HashFcn>::find(const int&) const':
src/auto/XSTools/utils/perl/../dense_hash_map.h:185: error: request for member 'find' in '((const google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'const int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'T& google::dense_hash_map<Key, T, HashFcn>::operator[](const int&)':
src/auto/XSTools/utils/perl/../dense_hash_map.h:190: error: base operand of '->' is not a pointer
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'int google::dense_hash_map<Key, T, HashFcn>::count(const int&) const':
src/auto/XSTools/utils/perl/../dense_hash_map.h:196: error: request for member 'count' in '((const google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'const int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'std::pair<int, int> google::dense_hash_map<Key, T, HashFcn>::equal_range(const int&)':
src/auto/XSTools/utils/perl/../dense_hash_map.h:199: error: request for member 'equal_range' in '((google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'std::pair<int, int> google::dense_hash_map<Key, T, HashFcn>::equal_range(const int&) const':
src/auto/XSTools/utils/perl/../dense_hash_map.h:202: error: request for member 'equal_range' in '((const google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'const int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'std::pair<int, bool> google::dense_hash_map<Key, T, HashFcn>::insert(const int&)':
src/auto/XSTools/utils/perl/../dense_hash_map.h:206: error: request for member 'insert' in '((google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'void google::dense_hash_map<Key, T, HashFcn>::insert(InputIterator, InputIterator)':
src/auto/XSTools/utils/perl/../dense_hash_map.h:208: error: request for member 'insert' in '((google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'void google::dense_hash_map<Key, T, HashFcn>::insert(int, int)':
src/auto/XSTools/utils/perl/../dense_hash_map.h:209: error: request for member 'insert' in '((google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'void google::dense_hash_map<Key, T, HashFcn>::set_empty_key(const int&)':
src/auto/XSTools/utils/perl/../dense_hash_map.h:219: error: request for member 'set_empty_key' in '((google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'void google::dense_hash_map<Key, T, HashFcn>::set_deleted_key(const int&)':
src/auto/XSTools/utils/perl/../dense_hash_map.h:222: error: request for member 'set_deleted_key' in '((google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'void google::dense_hash_map<Key, T, HashFcn>::clear_deleted_key()':
src/auto/XSTools/utils/perl/../dense_hash_map.h:224: error: request for member 'clear_deleted_key' in '((google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'int google::dense_hash_map<Key, T, HashFcn>::erase(const int&)':
src/auto/XSTools/utils/perl/../dense_hash_map.h:227: error: request for member 'erase' in '((google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'void google::dense_hash_map<Key, T, HashFcn>::erase(int)':
src/auto/XSTools/utils/perl/../dense_hash_map.h:228: error: request for member 'erase' in '((google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'void google::dense_hash_map<Key, T, HashFcn>::erase(int, int)':
src/auto/XSTools/utils/perl/../dense_hash_map.h:229: error: request for member 'erase' in '((google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'bool google::dense_hash_map<Key, T, HashFcn>::write_metadata(FILE*)':
src/auto/XSTools/utils/perl/../dense_hash_map.h:238: error: request for member 'write_metadata' in '((google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'bool google::dense_hash_map<Key, T, HashFcn>::read_metadata(FILE*)':
src/auto/XSTools/utils/perl/../dense_hash_map.h:239: error: request for member 'read_metadata' in '((google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'bool google::dense_hash_map<Key, T, HashFcn>::write_nopointer_data(FILE*)':
src/auto/XSTools/utils/perl/../dense_hash_map.h:240: error: request for member 'write_nopointer_data' in '((google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In member function 'bool google::dense_hash_map<Key, T, HashFcn>::read_nopointer_data(FILE*)':
src/auto/XSTools/utils/perl/../dense_hash_map.h:241: error: request for member 'read_nopointer_data' in '((google::dense_hash_map<Key, T, HashFcn>*)this)->google::dense_hash_map<Key, T, HashFcn>::rep', which is of non-class type 'int'
src/auto/XSTools/utils/perl/../dense_hash_map.h: At global scope:
src/auto/XSTools/utils/perl/../dense_hash_map.h:246: error: wrong number of template arguments (5, should be 3)
src/auto/XSTools/utils/perl/../dense_hash_map.h:105: error: provided for 'template<class Key, class T, class HashFcn> class google::dense_hash_map'
src/auto/XSTools/utils/perl/../dense_hash_map.h:247: error: wrong number of template arguments (5, should be 3)
src/auto/XSTools/utils/perl/../dense_hash_map.h:105: error: provided for 'template<class Key, class T, class HashFcn> class google::dense_hash_map'
src/auto/XSTools/utils/perl/../dense_hash_map.h: In function 'void google::swap(int&, int&)':
src/auto/XSTools/utils/perl/../dense_hash_map.h:248: error: request for member 'swap' in 'hm1', which is of non-class type 'int'
src/auto/XSTools/utils/perl/Benchmark.xs: At global scope:
src/auto/XSTools/utils/perl/Benchmark.xs:35: error: 'hash' is not a member of '__gnu_cxx'
src/auto/XSTools/utils/perl/Benchmark.xs:35: error: 'hash' is not a member of '__gnu_cxx'
src/auto/XSTools/utils/perl/Benchmark.xs:35: error: template argument 3 is invalid
src/auto/XSTools/utils/perl/Benchmark.xs:35: error: expected unqualified-id before ',' token
src/auto/XSTools/utils/perl/Benchmark.xs:35: error: expected initializer before '>' token
src/auto/XSTools/utils/perl/Benchmark.xs:39: error: 'StrIntMap' does not name a type
src/auto/XSTools/utils/perl/Benchmark.xs: In constructor 'Benchmark::Benchmark()':
src/auto/XSTools/utils/perl/Benchmark.xs:45: error: 'domainToId' was not declared in this scope
src/auto/XSTools/utils/perl/Benchmark.xs: In member function 'void Benchmark::begin(const char*)':
src/auto/XSTools/utils/perl/Benchmark.xs:64: error: 'StrIntMap' has not been declared
src/auto/XSTools/utils/perl/Benchmark.xs:64: error: expected `;' before 'result'
src/auto/XSTools/utils/perl/Benchmark.xs:65: error: 'result' was not declared in this scope
src/auto/XSTools/utils/perl/Benchmark.xs:65: error: 'domainToId' was not declared in this scope
src/auto/XSTools/utils/perl/Benchmark.xs: In member function 'void Benchmark::end(const char*)':
src/auto/XSTools/utils/perl/Benchmark.xs:82: error: 'domainToId' was not declared in this scope
src/auto/XSTools/utils/perl/Benchmark.xs: In member function 'const Item* Benchmark::getResult(const char*)':
src/auto/XSTools/utils/perl/Benchmark.xs:95: error: 'domainToId' was not declared in this scope
src/auto/XSTools/utils/perl/Benchmark.c: In function 'void XS_Benchmark_init(PerlInterpreter*, CV*)':
src/auto/XSTools/utils/perl/Benchmark.c:122: warning: unused variable 'Perl___notused'
src/auto/XSTools/utils/perl/Benchmark.c: In function 'void XS_Benchmark_begin(PerlInterpreter*, CV*)':
src/auto/XSTools/utils/perl/Benchmark.c:149: warning: unused variable 'Perl___notused'
src/auto/XSTools/utils/perl/Benchmark.c: In function 'void XS_Benchmark_end(PerlInterpreter*, CV*)':
src/auto/XSTools/utils/perl/Benchmark.c:170: warning: unused variable 'Perl___notused'
src/auto/XSTools/utils/perl/Benchmark.c: In function 'void XS_Benchmark_getResults(PerlInterpreter*, CV*)':
src/auto/XSTools/utils/perl/Benchmark.c:191: warning: unused variable 'Perl___notused'
src/auto/XSTools/utils/perl/Benchmark.c: In function 'void XS_Benchmark_clock2msec(PerlInterpreter*, CV*)':
src/auto/XSTools/utils/perl/Benchmark.c:228: warning: unused variable 'Perl___notused'
src/auto/XSTools/utils/perl/Benchmark.c: In function 'void boot_Utils__Benchmark(PerlInterpreter*, CV*)':
src/auto/XSTools/utils/perl/Benchmark.c:258: warning: deprecated conversion from string constant to 'char*'
src/auto/XSTools/utils/perl/Benchmark.c:254: warning: unused variable 'Perl___notused'
scons: *** [src/auto/XSTools/utils/perl/Benchmark.os] Error 1
scons: building terminated because of errors.
-e \e[1;31mCompilation failed. Please read http://www.openkore.com/compilation.php for help.\e[0m
make: Leaving directory `/home/herry/openkore-2.0.6.1'
Can't locate loadable object for module XSTools in @INC (@INC contains: /home/herry/openkore-2.0.6.1/src/deps /home/herry/openkore-2.0.6.1/src /home/herry/openkore-2.0.6.1 /etc/perl /usr/local/lib/perl/5.10.0 /usr/local/share/perl/5.10.0 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.10 /usr/share/perl/5.10 /usr/local/lib/site_perl .)
at ./openkore.pl line 25

So what I have to do next?? Changing the GCC to older version < 4.3 ? :cry: :cry: :(
I am not familiar with Perl or C programming.

Technology
Super Moderators
Super Moderators
Posts: 801
Joined: 06 May 2008, 12:47
Noob?: No

Re: [Fix proposal] compiling XSTools with GCC 4.3

#6 Post by Technology »

Version 2.0.6.1 is no longer supported, upgrade to the svn version that has the fix applied.
One ST0 to rule them all? One PE viewer to find them!
One ST_kRO to bring them all and in the darkness bind them...

Mount Doom awaits us, fellowship of OpenKore!

Post Reply