Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 31446

Summary: emerge xmule 1.6.1 fails with compile error
Product: Gentoo Linux Reporter: Bjarke Freund-Hansen <gentoo-bugs>
Component: Current packagesAssignee: Rainer Größlinger (RETIRED) <scandium>
Status: RESOLVED FIXED    
Severity: normal    
Priority: High    
Version: unspecified   
Hardware: x86   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on: 31264    
Bug Blocks:    
Attachments: complete emerge xmule output

Description Bjarke Freund-Hansen 2003-10-18 14:24:32 UTC
When I try to emerge xmule 1.6.1 it fails with a compile error. The error looks
much like the error I get when trying to compile amule, seems they use much the
same codebase. The bugreport i here: http://bugs.gentoo.org/show_bug.cgi?id=31264

Reproducible: Always
Steps to Reproduce:
1. emerge net-p2p/xmule/xmule-1.6.1.ebuild
Actual Results:  
Fails with the following error:

make[3]: Entering directory `/var/tmp/portage/xmule-1.6.1/work/xmule-1.6.1/src'
if g++ -DHAVE_CONFIG_H -I. -I. -I..     -D__GTK2__  -march=pentium3 -O3 -pipe
-fprefetch-loop-arrays -funroll-loops  -g   -I/usr/lib/wx/include/gtk2u-2.4
-DGTK_NO_CHECK_C
ASTS -D__WXGTK__ -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -I/usr/include/gtk-2.0
-I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0
-I/usr/X11R6/incl
ude -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
  -Isrc  -MT AddFriend.o -MD -MP -MF ".deps/AddFriend.Tpo" \
  -c -o AddFriend.o `test -f 'AddFriend.cpp' || echo './'`AddFriend.cpp; \
then mv -f ".deps/AddFriend.Tpo" ".deps/AddFriend.Po"; \
else rm -f ".deps/AddFriend.Tpo"; exit 1; \
fi
In file included from ServerList.h:24,
                 from ServerListCtrl.h:4,
                 from sockets.h:27,
                 from xmuleDlg.h:24,
                 from xmule.h:30,
                 from AddFriend.cpp:23:
Preferences.h: In member function `CString CPreferences::GetIRCNick()':
Preferences.h:469: error: no matching function for call to `CString::CString(
   char[30])'
mfc.h:346: error: candidates are: CString::CString(const CString&)
mfc.h:331: error:                 CString::CString(const wxChar*)
mfc.h:329: error:                 CString::CString(wxChar*)
mfc.h:327: error:                 CString::CString()
Preferences.h: In member function `CString CPreferences::GetIRCServer()':
Preferences.h:471: error: no matching function for call to `CString::CString(
   char[50])'
mfc.h:346: error: candidates are: CString::CString(const CString&)
mfc.h:331: error:                 CString::CString(const wxChar*)
mfc.h:329: error:                 CString::CString(wxChar*)
mfc.h:327: error:                 CString::CString()
Preferences.h: In member function `CString CPreferences::GetIRCChanNameFilter()
   ':
Preferences.h:475: error: no matching function for call to `CString::CString(
   char[50])'
mfc.h:346: error: candidates are: CString::CString(const CString&)
mfc.h:331: error:                 CString::CString(const wxChar*)
mfc.h:329: error:                 CString::CString(wxChar*)
mfc.h:327: error:                 CString::CString()
Preferences.h: In member function `CString CPreferences::GetIrcPerformString()
   ':
Preferences.h:481: error: no matching function for call to `CString::CString(
   char[255])'
mfc.h:346: error: candidates are: CString::CString(const CString&)
mfc.h:331: error:                 CString::CString(const wxChar*)
mfc.h:329: error:                 CString::CString(wxChar*)
mfc.h:327: error:                 CString::CString()
Preferences.h: In member function `CString CPreferences::GetVideoPlayer()':
Preferences.h:520: error: conversion from `const char*' to non-scalar type `
   CString' requested
Preferences.h:520: error: no matching function for call to `CString::CString(
   char[256])'
mfc.h:346: error: candidates are: CString::CString(const CString&)
mfc.h:331: error:                 CString::CString(const wxChar*)
mfc.h:329: error:                 CString::CString(wxChar*)
mfc.h:327: error:                 CString::CString()
Preferences.h: In member function `CString CPreferences::GetMessageFilter()':
Preferences.h:558: error: no matching function for call to `CString::CString(
   char[512])'
mfc.h:346: error: candidates are: CString::CString(const CString&)
mfc.h:331: error:                 CString::CString(const wxChar*)
mfc.h:329: error:                 CString::CString(wxChar*)
mfc.h:327: error:                 CString::CString()
Preferences.h: In member function `CString CPreferences::GetCommentFilter()':
Preferences.h:559: error: no matching function for call to `CString::CString(
   char[512])'
mfc.h:346: error: candidates are: CString::CString(const CString&)
mfc.h:331: error:                 CString::CString(const wxChar*)
mfc.h:329: error:                 CString::CString(wxChar*)
mfc.h:327: error:                 CString::CString()
Preferences.h: In member function `CString CPreferences::GetDateTimeFormat()':
Preferences.h:564: error: no matching function for call to `CString::CString(
   char[32])'
mfc.h:346: error: candidates are: CString::CString(const CString&)
mfc.h:331: error:                 CString::CString(const wxChar*)
mfc.h:329: error:                 CString::CString(wxChar*)
mfc.h:327: error:                 CString::CString()
Preferences.h: In member function `CString CPreferences::GetWSPass()':
Preferences.h:588: error: no matching function for call to `CString::CString(
   char[256])'
mfc.h:346: error: candidates are: CString::CString(const CString&)
mfc.h:331: error:                 CString::CString(const wxChar*)
mfc.h:329: error:                 CString::CString(wxChar*)
mfc.h:327: error:                 CString::CString()
Preferences.h: In member function `CString CPreferences::GetWSLowPass()':
Preferences.h:598: error: no matching function for call to `CString::CString(
   char[256])'
mfc.h:346: error: candidates are: CString::CString(const CString&)
mfc.h:331: error:                 CString::CString(const wxChar*)
mfc.h:329: error:                 CString::CString(wxChar*)
mfc.h:327: error:                 CString::CString()
Preferences.h: In member function `CString CPreferences::GetTemplate()':
Preferences.h:610: error: no matching function for call to `CString::CString(
   char[2048])'
mfc.h:346: error: candidates are: CString::CString(const CString&)
mfc.h:331: error:                 CString::CString(const wxChar*)
mfc.h:329: error:                 CString::CString(wxChar*)
mfc.h:327: error:                 CString::CString()
In file included from PreferencesDlg.h:10,
                 from xmuleDlg.h:31,
                 from xmule.h:30,
                 from AddFriend.cpp:23:
PPgNotify.h: At global scope:
PPgNotify.h:43: error: invalid type `const char[1]' for default argument to `
   wxString'
In file included from PartFile.h:25,
                 from SharedFileList.h:32,
                 from SharedFilesCtrl.h:22,
                 from SharedFilesWnd.h:22,
                 from xmuleDlg.h:32,
                 from xmule.h:30,
                 from AddFriend.cpp:23:
ED2KLink.h: In member function `const char* CED2KFileLink::GetName() const':
ED2KLink.h:74: error: cannot convert `const wxString' to `const char*' in 
   return
ED2KLink.h: In member function `long int CED2KFileLink::GetSize() const':
ED2KLink.h:75: error: cannot convert `const wxString' to `const char*' for
ED2KLink.h: In member function `const char* CED2KServerListLink::GetAddress() 
   const':
ED2KLink.h:98: error: cannot convert `const wxString' to `const char*' in 
   return
In file included from StatisticsDlg.h:23,
                 from xmuleDlg.h:37,
                 from xmule.h:30,
                 from AddFriend.cpp:23:
OScopeCtrl.h: At global scope:
OScopeCtrl.h:32: error: invalid type `const char[1]' for default argument to `
   CString'
OScopeCtrl.h:32: error: invalid type `const char[1]' for default argument to `
   CString'
OScopeCtrl.h:31: error: invalid type `const char[1]' for default argument to `
   CString'
OScopeCtrl.h:31: error: invalid type `const char[1]' for default argument to `
   CString'
In file included from UploadQueue.h:23,
                 from xmule.h:38,
                 from AddFriend.cpp:23:
updownclient.h: In member function `void CUpDownClient::SetFileComment(char*)':
updownclient.h:236: error: no matching function for call to `CString::Format(
   const char[3], char*&)'
mfc.h:336: error: candidates are: void CString::Format(const wxChar*, ...)
AddFriend.cpp: In member function `void CAddFriend::OnAddBtn(wxEvent&)':
AddFriend.cpp:113: error: no matching function for call to `CString::Format(
   const char[3], const wxChar*)'
mfc.h:336: error: candidates are: void CString::Format(const wxChar*, ...)
AddFriend.cpp:117: error: no matching function for call to `CString::Format(
   const char[3], const wxChar*)'
mfc.h:336: error: candidates are: void CString::Format(const wxChar*, ...)
AddFriend.cpp:128: error: cannot convert `const wxChar*' to `const char*' for 
   argument `1' to `int atoi(const char*)'
AddFriend.cpp:128: error: cannot convert `const wxChar*' to `const char*' for 
   argument `1' to `int atoi(const char*)'
AddFriend.cpp:155: error: cannot convert `const wxChar*' to `const char*' for 
   argument `1' to `int sscanf(const char*, const char*, ...)'
make[3]: *** [AddFriend.o] Error 1
make[3]: Leaving directory `/var/tmp/portage/xmule-1.6.1/work/xmule-1.6.1/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/xmule-1.6.1/work/xmule-1.6.1/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/xmule-1.6.1/work/xmule-1.6.1'
make: *** [all] Error 2

!!! ERROR: net-p2p/xmule-1.6.1 failed.
!!! Function src_compile, Line 28, Exitcode 2
!!! (no error message)

Calculating dependencies  ...done!
>>> emerge (1 of 1) net-p2p/xmule-1.6.1 to /
>>> md5 src_uri ;-) xmule-1.6.1.tar.bz2

Expected Results:  
Normal emerge of xmule 1.6.1

Portage 2.0.49-r13-2 (default-x86-1.4, gcc-3.3.1, glibc-2.3.2-r6, 2.6.0-test7-bk3)
=================================================================
System uname: 2.6.0-test7-bk3 i686 Celeron (Coppermine)
Gentoo Base System version 1.4.3.11
distcc 2.11.1 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CFLAGS="-march=pentium3 -O3 -pipe -fprefetch-loop-arrays -funroll-loops"
CHOST="i686-pc-linux-gnu"
COMPILER="gcc3"
CONFIG_PROTECT="/etc /var/qmail/control /usr/share/config
/usr/kde/2/share/config /usr/kde/3/share/config /usr/X11R6/lib/X11/xkb
/usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/"
CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d"
CXXFLAGS="-march=pentium3 -O3 -pipe -fprefetch-loop-arrays -funroll-loops"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs sandbox ccache"
GENTOO_MIRRORS="http://gentoo.linux.no http://gentoo.oregonstate.edu
http://www.ibiblio.org/pub/Linux/distributions/gentoo"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="x86 oss apm avi crypt cups encode foomaticdb gif jpeg gnome libg++ mad
mikmod mpeg ncurses nls pdflib png spell truetype xml2 xmms xv zlib gdbm berkdb
slang readline svga X sdl gpm tcpd pam libwww ssl perl python esd imlib
oggvorbis gtk opengl ldap aalib acl alsa amd apache2 autofs dedicated dga
directfb dvb dvd ethereal evo flac flash gd gstreamer gtk2 gtkhtml imagemagick
imap imlib2 ipv6 java javascript junit kerberos krb4 mozilla music mysql nas
offensive pcap pcmcia pnp samba scanner tcltk tetex tiff transcode trusted
unicode usb videos vim-with-x wxwindows xchattext xml xvid -arts -kde -motif -qt
-quicktime"
Comment 1 Bjarke Freund-Hansen 2003-10-18 14:39:03 UTC
Created attachment 19427 [details]
complete emerge xmule output
Comment 2 Rainer Größlinger (RETIRED) gentoo-dev 2003-10-18 15:18:40 UTC
I think I figured out what causes this error.
gtk2+unicode support was enabled again in the wxGTK-2.4.2 ebuild, it seems
like you linked against Gtk+-2 and did you also enable unicode ?
That is known to cause problems with poorly implemented wxWindows apps like
xmule and amule are that don't follow the wx guidelines for unicode support.

So, if you compiled wxGTK with +unicode try again with -unicode as a work
around if you don't need unicode
Comment 3 Rainer Größlinger (RETIRED) gentoo-dev 2003-10-18 16:06:04 UTC
I just checked in a check function in all xmule and amule ebuilds, please
test it
Comment 4 Bjarke Freund-Hansen 2003-10-19 10:45:37 UTC
I've just reemerged wxGTK without unicode support, and xmule compiles against
it perfectly.
Comment 5 Rainer Größlinger (RETIRED) gentoo-dev 2003-10-19 10:59:08 UTC
Unfortunatly we cannot do anything about it, it's the developers job to fix
unicode support in their application, so you have to live with that work-around.

I added a check function to the ebuilds wether wxGTK was compiled with unicode
support and there is nothing more we can do about this at the moment.

resolved / fixed