Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
emerge libjsw fails (as does make from tarball)
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
Nate_S
Guru
Guru


Joined: 18 Mar 2004
Posts: 414

PostPosted: Tue Jan 04, 2005 6:31 am    Post subject: emerge libjsw fails (as does make from tarball) Reply with quote

Hi.

I'm trying to emerge libjsw and it keeps failing on string.cpp

it dies with this error message:

Code:

Building library "libjsw.so.1.5.5"...
Compiling module axisio.o
Compiling module attributes.o
Compiling module buttonio.o
Compiling module calibrationfio.o
Compiling module forcefeedback.o
Compiling module main.o
Compiling module utils.o
Compiling module fio.o
Compiling module disk.o
Compiling module strexp.o
Compiling module string.o
string.cpp:31: error: declaration of `char* strcasestr(const char*, const
   char*)' throws different exceptions
../include/string.h:46: error: than previous declaration `char*
   strcasestr(const char*, const char*) throw ()'
string.cpp: In function `char* strcasestr(const char*, const char*)':
string.cpp:221: error: declaration of `char* strcasestr(const char*, const
   char*)' throws different exceptions
string.cpp:31: error: than previous declaration `char* strcasestr(const char*,
   const char*) throw ()'
make: *** [string.o] Error 1


I also tried unpacking the tarball and using make to compile; no effect.

I've searched quite a bit and haven't been able to find anything similar

Thanks in advance for any help

-Nate
Back to top
View user's profile Send private message
moocha
Watchman
Watchman


Joined: 21 Oct 2003
Posts: 5722

PostPosted: Tue Jan 04, 2005 7:23 am    Post subject: Reply with quote

That doesn't happen to me with either libjsw 1.5.5 or 1.5.4. I'm using gcc 3.4.3-r1. The code should not generate that error under any circumstances anyway (I've looked at it), so it looks like a bug in g++.
You could try applying the following patch:
Code:
diff -Naur libjsw-1.5.5-orig/include/string.h libjsw-1.5.5/include/string.h
--- libjsw-1.5.5-orig/include/string.h  2004-12-21 07:55:58.000000000 +0200
+++ libjsw-1.5.5/include/string.h       2005-01-04 09:08:22.302388360 +0200
@@ -43,7 +43,7 @@
 #ifdef __MSW__
 extern int strcasecmp(const char *s1, const char *s2);
 #endif
-extern char *strcasestr(const char *haystack, const char *needle);
+extern char *strcasestr(const char *haystack, const char *needle) throw();
 extern int strpfx(const char *s, const char *pfx);
 extern int strcasepfx(const char *s, const char *pfx);

diff -Naur libjsw-1.5.5-orig/libjsw/string.cpp libjsw-1.5.5/libjsw/string.cpp
--- libjsw-1.5.5-orig/libjsw/string.cpp 2004-12-21 07:55:57.000000000 +0200
+++ libjsw-1.5.5/libjsw/string.cpp      2005-01-04 09:07:50.399366008 +0200
@@ -28,7 +28,7 @@
 #ifdef __MSW__
 int strcasecmp(const char *s1, const char *s2);
 #endif
-char *strcasestr(const char *haystack, const char *needle);
+char *strcasestr(const char *haystack, const char *needle) throw();
 int strpfx(const char *s, const char *pfx);
 int strcasepfx(const char *s, const char *pfx);

@@ -217,7 +217,7 @@
  *     Case insensitive version of strstr(). Returns the pointer to
  *     needle in haystack if found or NULL on no match.
  */
-char *strcasestr(const char *haystack, const char *needle)
+char *strcasestr(const char *haystack, const char *needle) throw()
 {
        const char *strptr1, *strptr2, *strptr3;

_________________
Military Commissions Act of 2006: http://tinyurl.com/jrcto

"Those who would give up essential liberty to purchase a little temporary safety deserve neither liberty nor safety."
-- attributed to Benjamin Franklin
Back to top
View user's profile Send private message
Nate_S
Guru
Guru


Joined: 18 Mar 2004
Posts: 414

PostPosted: Tue Jan 04, 2005 8:48 am    Post subject: Reply with quote

Thanks. It appears to be a bug in g++ 3.3.4. I simply used gcc-config to switch to 3.4.2 and it emerged fine.

Is this something that would be worth making a bug report about? (I suppose I'll see if I can reproduce it on any of my other boxes)

-Nate
Back to top
View user's profile Send private message
moocha
Watchman
Watchman


Joined: 21 Oct 2003
Posts: 5722

PostPosted: Tue Jan 04, 2005 9:10 am    Post subject: Reply with quote

Sure it is, and it's very commendable of you to contribute feedback!
If you open a new bug in Bugzilla (provided that there isn't one already, might be worth searching), please make sure to assign the bug to vapier@gentoo.org (he's the maintainer).
_________________
Military Commissions Act of 2006: http://tinyurl.com/jrcto

"Those who would give up essential liberty to purchase a little temporary safety deserve neither liberty nor safety."
-- attributed to Benjamin Franklin
Back to top
View user's profile Send private message
kellwood
Tux's lil' helper
Tux's lil' helper


Joined: 22 Dec 2002
Posts: 123
Location: Ann Arbor

PostPosted: Sat Mar 19, 2005 2:09 pm    Post subject: Reply with quote

Just for the record, I have the same problems with jibjsw 1.5.5 and gcc 3.3.4.
Back to top
View user's profile Send private message
canek
n00b
n00b


Joined: 01 Sep 2003
Posts: 28
Location: Ciudad de México, México

PostPosted: Sat Mar 19, 2005 4:49 pm    Post subject: Reply with quote

Just for the record; I've the same problem with gcc 3.3.5. I'm reporting the bug in bugs.gentoo.org.
Back to top
View user's profile Send private message
canek
n00b
n00b


Joined: 01 Sep 2003
Posts: 28
Location: Ciudad de México, México

PostPosted: Sat Mar 19, 2005 4:55 pm    Post subject: Reply with quote

Bug report:

https://bugs.gentoo.org/show_bug.cgi?id=85912
Back to top
View user's profile Send private message
CyD
Tux's lil' helper
Tux's lil' helper


Joined: 23 Jul 2004
Posts: 117

PostPosted: Sat Mar 19, 2005 4:55 pm    Post subject: Reply with quote

yay, me too! think we could get a link to that bug? :)
Back to top
View user's profile Send private message
novazur
Guru
Guru


Joined: 19 Mar 2005
Posts: 461
Location: Martinique

PostPosted: Sat Mar 19, 2005 7:02 pm    Post subject: Reply with quote

And the solution is ??

I tried to apply the patch, but I have always an error :

string.cpp:31: error: declaration of `char* strcasestr(const char*, const
char*)' throws different exceptions
../include/string.h:46: error: than previous declaration `char*
strcasestr(const char*, const char*) throw ()'
string.cpp: In function `char* strcasestr(const char*, const char*)':
string.cpp:221: error: declaration of `char* strcasestr(const char*, const
char*)' throws different exceptions
string.cpp:31: error: than previous declaration `char* strcasestr(const char*,
const char*) throw ()'
make: *** [string.o] Error 1

!!! ERROR: media-libs/libjsw-1.5.5 failed.
!!! Function src_compile, Line 36, Exitcode 2
!!! jscalibrator failed
!!! If you need support, post the topmost build error, NOT this status message.
Back to top
View user's profile Send private message
CyD
Tux's lil' helper
Tux's lil' helper


Joined: 23 Jul 2004
Posts: 117

PostPosted: Sat Mar 19, 2005 9:50 pm    Post subject: Reply with quote

guess i didn't find a solution, i just haven't merged it yet. maybe the new one could be user masked till its fixed?
Back to top
View user's profile Send private message
canek
n00b
n00b


Joined: 01 Sep 2003
Posts: 28
Location: Ciudad de México, México

PostPosted: Sun Mar 20, 2005 12:40 am    Post subject: Reply with quote

1.5.5 is the last version; there is no new version. I put

Code:
>=media-libs/libjsw-1.5.4



in /etc/portacke/package.mask, so emerge -uDv world doesn't bother me trying to update libjsw; but the problem is there, even in the 1.5.4 version.
Back to top
View user's profile Send private message
HRH_H_Crab
Tux's lil' helper
Tux's lil' helper


Joined: 30 Jul 2003
Posts: 115
Location: Sarf East Lahndahn

PostPosted: Sun Mar 20, 2005 12:47 pm    Post subject: Reply with quote

considering the fact that the only application my joypad seems to work in 100% is jscalibrator, the failure of libjsw to compile is a devastating blow to me.

more seriously, ive noticed that joy2key is also not compiling. i wonder if the two are related?
Back to top
View user's profile Send private message
Qubax
Guru
Guru


Joined: 19 Jul 2002
Posts: 451
Location: Tirol, Austria

PostPosted: Tue Mar 22, 2005 8:10 pm    Post subject: Reply with quote

i've got the same problem
Back to top
View user's profile Send private message
velociphile
n00b
n00b


Joined: 29 Oct 2003
Posts: 43
Location: Sydney, Australia

PostPosted: Wed Mar 23, 2005 10:02 am    Post subject: Reply with quote

On this bug report there is an ebuild that works from thorsten.
_________________
"1830: Press Return."

Vista will solve all your problems. People keep telling me so it must be true.
Back to top
View user's profile Send private message
Lars
Apprentice
Apprentice


Joined: 06 Feb 2003
Posts: 171
Location: Germany, near baltic sea

PostPosted: Sat Apr 09, 2005 6:43 pm    Post subject: Reply with quote

My resolution :D

Code:
ebuild /usr/portage/media-libs/libjsw/libjsw-1.5.5.ebuild unpack

goto it's unpacked directory /var/tmp/portage/libjsw... find all what has something todo with 'strcasestr' and remark it, don't forget, in *.h files use /* ... */ and in *.cpp files '// ...' is ok.

Code:
ebuild /usr/portage/media-libs/libjsw/libjsw-1.5.5.ebuild compile

Code:
ebuild /usr/portage/media-libs/libjsw/libjsw-1.5.5.ebuild install

Code:
ebuild /usr/portage/media-libs/libjsw/libjsw-1.5.5.ebuild postinst

Code:
ebuild /usr/portage/media-libs/libjsw/libjsw-1.5.5.ebuild qmerge

Code:
ebuild /usr/portage/media-libs/libjsw/libjsw-1.5.5.ebuild merge


Maybe there are some ebuilds obsolete but shit happens, it works for me.
Within gcc 3.3.5, kernel 2.4.28

JM2C
Lars
_________________
Quote:
Alles was nicht einfach ist, ist entweder falsch oder zu kompliziert.

V.Glazounov
Back to top
View user's profile Send private message
ardnew
n00b
n00b


Joined: 20 Apr 2005
Posts: 1

PostPosted: Wed Apr 20, 2005 2:42 am    Post subject: Reply with quote

The easiest resolution to this problem from what I can tell, is to use gcc-config to switch to the 3.4.3 profile.
2005.0 makes use of it anyway. :wink:

Code:

# gcc-config i686-pc-linux-gnu-3.4.3-20050110 && source /etc/profile
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum