aMule Forum
English => Compilation problems => Topic started by: kriko on December 08, 2006, 01:51:08 AM
-
I've upgraded my distro from suse 10.1 to 10.2 (clean install).
Now I can't compile same tarballs I compiled on 10.1.
I have wxwidgets-devel package installed and up to date. What could be wrong?
g++ -DUSE_EMBEDDED_CRYPTO -W -Wall -Wshadow -Wundef -g -ggdb -fno-inline -D__DEBUG__ -fmessage-length=0 -D_GLIBCXX_DEBUG -D_GLIBCXX_DEBUG_PEDANTIC -DUSE_WX_EXTENSIONS -lpthread -o ed2k ED2KLinkParser.o -lz
if g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/lib/wx/include/gtk2-unicode-release-2.8 -I/usr/include/wx-2.8 -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -D__WXGTK__ -pthread -I./libs -Ilibs -DUSE_EMBEDDED_CRYPTO -W -Wall -Wshadow -Wundef -g -ggdb -fno-inline -D__DEBUG__ -fmessage-length=0 -D_GLIBCXX_DEBUG -D_GLIBCXX_DEBUG_PEDANTIC -DUSE_WX_EXTENSIONS -MT amule-ThreadTasks.o -MD -MP -MF ".deps/amule-ThreadTasks.Tpo" -c -o amule-ThreadTasks.o `test -f 'ThreadTasks.cpp' || echo './'`ThreadTasks.cpp; \
then mv -f ".deps/amule-ThreadTasks.Tpo" ".deps/amule-ThreadTasks.Po"; else rm -f ".deps/amule-ThreadTasks.Tpo"; exit 1; fi
In file included from CFile.h:29,
from PartFile.h:31,
from ThreadTasks.cpp:31:
SafeFile.h:201:2: warning: #warning DOCS
/usr/include/wx-2.8/wx/gdicmn.h: In member function bool wxRect::Inside(int, int) const:
/usr/include/wx-2.8/wx/gdicmn.h:486: warning: declaration of y shadows a member of 'this'
/usr/include/wx-2.8/wx/gdicmn.h:486: warning: declaration of x shadows a member of 'this'
if g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/lib/wx/include/gtk2-unicode-release-2.8 -I/usr/include/wx-2.8 -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -D__WXGTK__ -pthread -I./libs -Ilibs -DUSE_EMBEDDED_CRYPTO -W -Wall -Wshadow -Wundef -g -ggdb -fno-inline -D__DEBUG__ -fmessage-length=0 -D_GLIBCXX_DEBUG -D_GLIBCXX_DEBUG_PEDANTIC -DUSE_WX_EXTENSIONS -MT amule-amule.o -MD -MP -MF ".deps/amule-amule.Tpo" -c -o amule-amule.o `test -f 'amule.cpp' || echo './'`amule.cpp; \
then mv -f ".deps/amule-amule.Tpo" ".deps/amule-amule.Po"; else rm -f ".deps/amule-amule.Tpo"; exit 1; fi
In file included from ExternalConn.h:31,
from amule.cpp:60:
./libs/ec/ECSpecialTags.h:28:2: warning: #warning Kry - Preferences packet derived from packet, and that's ok, but shouldn't be here because this is a tag file and forces a stupid include
In file included from CFile.h:29,
from PartFile.h:31,
from amule.cpp:63:
SafeFile.h:201:2: warning: #warning DOCS
In file included from amule.cpp:64:
FriendList.h:62:3: warning: #warning THIS MUST BE MADE PRIVATE AFTER EC IS CODED
/usr/include/wx-2.8/wx/gdicmn.h: In member function bool wxRect::Inside(int, int) const:
/usr/include/wx-2.8/wx/gdicmn.h:486: warning: declaration of y shadows a member of 'this'
/usr/include/wx-2.8/wx/gdicmn.h:486: warning: declaration of x shadows a member of 'this'
amule.cpp: In member function virtual bool CamuleApp::OnInit():
amule.cpp:470: error: wxHandleFatalExceptions was not declared in this scope
make[3]: *** [amule-amule.o] Error 1
make[3]: Leaving directory `/home/kriko/Desktop/amule-cvs/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/kriko/Desktop/amule-cvs/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/kriko/Desktop/amule-cvs'
make: *** [all] Error 2
-
Builds fine here (same setup).
Which SVN tarball is that?
-
Latest aMule-CVS-20061207.tar.bz2, or aMule-CVS-20061202.tar.bz2
Same error all the time.
WxWidgets version: 2.7.99_rc2 from http://ftp://ftp-1.gwdg.de/pub/linux/misc/suser-jengelh/SUSE-10.2/ repo
-
This is not a surprise because Mr Engelhardt configures wxWidgets with --disable-catch_segvs, which disables some features in wxWidgets that aMule needs. (To be precise: It undefines wxUSE_ON_FATAL_EXCEPTION which, in turn, undefines the wxHandleFatalExceptions class.)
In short: You cannot use this wxWidgets package for aMule because it is deliberately miscompiled/crippled. But you could compile wxWidgets yourself. (Or use my packages, which work with aMule.)
In general, Mr Engelhardt's repository (suser-jengelh) is by far the worst and most dangerous 3rd party repository on the planet. Alone the facts that
a) he distributes modified versions of very important core packages like aaa_base, coreutils and util-linux;
b) he doesn't maintain changelogs for his packages
should really make every clever user stay away from it. You have been warned.
--
There are three reasons why you shouldn't use this package.
(1) Wrong dependency symbols.
Obsoletes: wxGTK
DANGEROUS
(2) Wrong configuration.
%configure \
--disable-apple_ieee \
--disable-backtrace \
--disable-catch_segvs \
--disable-debug \
--disable-dialupman \
--disable-gpe \
--disable-profile \
--enable-arcstream \
--enable-icocur \
--enable-monolithic \
--enable-optimise \
--enable-shared \
--enable-threads \
--enable-unicode \
--without-odbc
Cannot work with aMule
(3) Empty changelog.
%changelog -n wxWidgets
Bad packaging style
-
Thank you very much for this. I'm cleaning all packages from his repository.
-
Where can I get a repository for such packages (wxwidgets e.g.). I don't have any.
-
Which package manager are you using (YaST/zmd/smart/yum/whatever)?
-
I use smart. Seems like there are not many repositories for suse 10.2 yet.
-
For smart:
rpm --import http://gw78.sam-host.net/suse/10.2/repodata/repomd.xml.key
smart channel --add amule type=rpm-md name="aMule + wxWidgets packages" baseurl=http://gw78.sam-host.net/suse/10.2
-
Thanks! How often do you update packages (daily, every x tarball...)?
-
wx will be updated with every RC that is available as a tarball (RC2 was not). After wx 2.8.0 final is out, this will stay for a while.
aMule will be updated whenever I'm aware of a notable change. Note that the SVN tarballs at amule.hirnriss.net are generated daily, but this doesn't mean that the code changes daily (sometimes several subsequent tarballs are actually identical except for the timestamp), so there's no point in building them daily, at least not now.
Whenever you need a new build, feel free to ask in this thread:
http://forum.amule.org/thread.php?threadid=11590
I will then have a look and either make a new build or tell you that there were no code changes ;)