Auronia IRC News

Auronia IRC News

Neuigkeiten aus der Welt des Internet Relay Chats

Erfahrungsbericht mit dem UnrealIRCd Support und HowTo zur Kompilierung unter Windows

Erstellt von Flo am 10. Januar 2010

Ich habe mir mit Rhodan zusammen überlegt, mal einen Erfahrungsbericht von mir zu veröffentlichen. Ich hoffe, dass euch diese neue Art von Beitrag interessiert.

Das Vorhaben

An einem kalten Sonntagabend beschloss ich den Support des UnrealIRCd Projekts zu testen. Das UnrealIRCd Projekt entwickelt seit vielen Jahren einen IRC Server, welcher auf einfache Benutzbarkeit optimiert wurde.

Obwohl die meisten Benutzer IRCD Server unter auf UNIX basierten Betriebssysteme betreiben, gibt es Ausnahmen, welche diese mit Betriebssystemen der Firma Microsoft betreiben wollen.

Nachdem ich von der Entwicklung der neuen UnrealIRCd Version erfahren habe, beschloss ich zum direkten Vergleich den UnrealIRCd Server in der Version 3.2.8.1 mit dem Microsoft C++ Compiler zu kompilieren.

Wie kompiliert man den UnrealIRCd mit dem Microsoft C++ Compiler

Hierzu öffnet man die Microsoft Visual Studio Konsole mit der Verknüpfung, welche unter “Start => Programme => Microsoft Visual Studio 2008 => Visual Studio Tools” zu finden ist und “Visual Studio 2008-Eingabeaufforderung” heisst.

Anschließend navigiert man in den “Haupt” Ordner des Quellcodes. In diesem befindet sich die Datei “makefile.win32”.

Nun startet man mit dem Befehl “nmake -f makefile.win32” den Kompilierungsprozess.

Hierbei tritt folgender Befehl auf:

wircd.def : error LNK2001: unresolved external symbol add_remote_include
wircd.def : error LNK2001: unresolved external symbol add_send_mode_param
wircd.def : error LNK2001: unresolved external symbol badwords_stats
wircd.def : error LNK2001: unresolved external symbol ban_version
wircd.def : error LNK2001: unresolved external symbol fast_badword_match
wircd.def : error LNK2001: unresolved external symbol fast_badword_replace
wircd.def : error LNK2001: unresolved external symbol find_loaded_remote_include

wircd.def : error LNK2001: unresolved external symbol find_remote_include
wircd.def : error LNK2001: unresolved external symbol m_names
wircd.def : error LNK2001: unresolved external symbol myargv
wircd.def : error LNK2001: unresolved external symbol mystpcpy
wircd.def : error LNK2001: unresolved external symbol our_strcasestr
wircd.def : error LNK2001: unresolved external symbol remote_include
wircd.def : error LNK2001: unresolved external symbol send_channel_modes
wircd.def : error LNK2001: unresolved external symbol send_channel_modes_sjoin
wircd.def : error LNK2001: unresolved external symbol send_channel_modes_sjoin3
wircd.def : error LNK2001: unresolved external symbol snprintf
wircd.def : error LNK2001: unresolved external symbol stripbadwords
wircd.def : error LNK2001: unresolved external symbol w_whois
wircd.def : error LNK2001: unresolved external symbol webtv_cmds
wircd.def : error LNK2001: unresolved external symbol webtv_parse
wircd.lib : fatal error LNK1120: 21 unresolved externals
NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 9.0\VC\BIN
\link.EXE"' : return code '0x460'
Stop.

Der Support

Ich war der Meinung, dass dies ein Fehler der Entwickler war und begab mich in das offizielle Support IRC Netzwerk von UnrealIRCd, welches die Adresse “irc.UnrealIRCd.com” hat. Da ich der Meinung war, dass es kein “Benutzerfehler” war, begab ich mich in den Channel “#unreal-devel” um die Entwickler über diesen Fehler zu informieren.

Dort traf ich auf Stealth, welcher mich mit einem Channel Ban darauf hinwies, dass ich im falschen Channel bin und doch bitte die FAQ lesen solle.

Dort findet man unter dem Artikel “Compiling – Windows: unresolved external symbol ..” einen fehlerhaften Auszug aus dem Kompilierungsprozess, wessen Fehler aber nicht mit meinen übereinstimmt. Dort wurde mit einem fehlerhaften Link auf eine Anwendung “dlltool.exe” verwiesen. Nach erfolgreichem googlen fand ich dieses Programm unter der Adresse http://www.vulnscan.org/tmp/dlltool.exe.

In der FAQ stand folgende Instruktion:

nmake -f makefile.win32 [your other options here]
nmake -f makefile.win32 SYMBOLFILE
nmake -f makefile.win32 [your other options here]

So basically you just run nmake -f makefile.win32 SYMBOLFILE and then restart compiling again.

Auf Grund langjähriger Erfahrungen mit OpenSource Software war ich der Meinung, dass “SYMBOLFILE” ein Platzhalter sein müsse, welchen ich durch die fehlerhafte Objektdatei ersetzen muss. Allerdings bekam ich nur einen Hinweis, dass die Objektdatei existiert.

Als ich in “#UnrealIRCd” bezüglich diesen Fehlern nachfragte, wies mich der Benutzer “commx” darauf hin, dass ich doch bitte in “#UnrealIRCd-support” fragen möchte. Stealth bannte mich darauf hin auch im “#UnrealIRCd” Channel.

Direkt als ich den “#UnrealIRCd-support” Channel betrat, wurde ich schon wieder gebanned mit der Begründung, dass meine Anwesenheit nicht erwünscht ist und ich nicht in der Lage bin einfache Instruktionen durchzuführen.

Die Lösung

Nun habe ich aus purem Sarkasmus den Befehl so ausgeführt, wie er dort stand:

nmake -f makefile.win32 SYMBOLFILE

und es funktionierte.

Fazit

Die Freundlichkeit des Supports lässt zu wünschen übrig. Man hätte den Fehler suchen können anstatt den Benutzer aus diversen Channels zu bannen. Vielleicht war mein Problem auch nur der offizielle Grund. Ich habe den Nicknamen “irc1” verwendet, welcher nicht wirklich einfallsreich war.

Ein OpenSource Projekt sollte vor der STABLE Freigabe unter Windows kompiliert werden und auf eventuell auftretende Fehler untersucht werden. Hätte das UnrealIRCd Projekt dies getan, wäre mein Fehler nicht aufgetreten.

Abgelegt unter Erfahrungsberichte | 2 Kommentare »

Tester für Anope 1.8.3 gesucht

Erstellt von Rhodan am 21. Dezember 2009

Das Team von Anope steht kurz davor die Version 1.8.3 zu veröffentlichen, welches InspIRCd-1.2 Support, sowie XOP-Fixes und weitere Überholungen enthält. Die neue Version soll aber erstmal getestet werden, bevor sie veröffentlicht wird. Falls sich nicht genügend Tester finden, wird sich die Veröffentlichung noch ins neue Jahr hineinziehen, aber falls sich doch genug finden, dann kann man die neue Version schon nach Weihnachten erwarten.

Falls jemand helfen möchte, so möge er sich doch an chaz via E-Mail wenden (chaz [at] anope [dot] org) und möge auch gewisse Informationen mitsenden, darunter die aktuell laufende Anope Version, die aktuelle Useranzahl, die Serverzahl und das Betriebssystem vom Services Server. Er wird daraufhin mit den Bedingungen zum Testen antworten.

Changelog (englisch):

Anope Version 1.8 SVN
——————-
Provided by Anope Dev. – 2009
10/05 A Added InspIRCd 1.2 support. [ #00]
07/31 F Fixed anope sending umode change using channels’ syntax. [ #00]
07/31 F Fixed TS6 UUID issue while parsing modechanges. [ #00]
08/01 F Fixed several memory leaks in HostServ. [ #00]
08/01 F Fixed several memory leaks in HostServ. [ #00]
08/03 F Fixed TS6 SID issue when introducing new servers. [ #00]
08/19 F Fixed NS SASET displaying wrong language. [#1094]
08/24 F Fixed entry_match() failing when given no username. [ #00]
08/27 F Fixed NS SUSPEND not being shown to services opers. [#1099]
08/27 F Fixed NS UNSUSPEND not being shown to services opers. [#1100]
08/27 F Fixed services sending no or wrong help to opers. [#1102]
08/27 F Fixed services sending no or wrong help to opers. [#1103]
08/27 F Fixed services sending no or wrong help to opers. [#1104]
08/29 F Fixed defcon failing to set and remove modes. [#1101]
08/30 F Fixed MLOCK superseding DEFCON mode lock. [ #00]
09/09 F Fixed number of TS6 compatibility issues. [#1096]
10/06 F Fixed CS FORBID not clearing excepts & invites. [#1097]
11/25 F Fixed a number of major XOP related issues. [ #00]
11/25 F Fixed a bug in CLEAR OPS causing incorrect mode removal. [#1114]
12/01 F Fixed tracking of users host when they disable their vhost [#1106]

Provided by Han` – 2009
07/28 F Updated german language file. [ #00]
07/28 F Added german language support to hs_request.c. [ #00]

Provided by Yusuf Kurekci – 2009
08/11 F Updated Turkish language file. [ #00]

Provided by Christopher N. – 2009
9/20 F Updated French language file. [ #00]

Wer möchte, kann sich an der Diskussion im Forum beteiligen.

Abgelegt unter IRC-Technik | 1 Kommentar »

Anope: Internationaler Support

Erstellt von Rhodan am 12. Dezember 2009

Das Anope Team bemerkt schon seit längerer Zeit, dass sich immer mehr internationale Supportforen oder internationale Anope-Support-Channels auf irc.anope.org aufmachen. Falls jemand mehrere Sprachen neben Englisch spreche und sich wünsche einen Channel in seiner Sprache oder ein Unterforum im Anope Forum zu unterhalten, möge sich bei chaz via Mail (chaz [at] anope [dot] org) melden. Man solle in der Mail dann auch erwähnen, warum genau er und nicht jemand anders das machen solle.

Abgelegt unter IRC-Technik | Keine Kommentare »