Willkommen ~Gast!
Registrieren || Einloggen || Hilfe/FAQ || Staff
Probleme mit der Registrierung im Forum? Melde dich unter registerEin Bild.
Autor Beitrag
000
09.06.2007, 00:59
Taigistal



tach leute,
bin neu hier im Forum,

war schon in dem "http://www.mapping-tutorials.de" Forum,da konnte man mir bis jetzt allerdings nicht helfen, man empfiel mich hierher, ich hoffe jemand kann mir helfen.

also ich hab gerade angefangen ein Mod zu machen (mein erster), und wollte ganz standardmäßig meine Dll Datein Compilieren.(client/server)

lade mir also "Game_HL2-2005" rein, konfiguriere mein VS2005 nach den anweisungen des Tutorials

http://developer.valvesoftware.com/w...g_under_VS2005

(die Plattform SDK und die SDk Direkt X hab ich natürlich auch gedownloaded)

und dann kommt folgender Fehler, und der Grund warum ich meine client.dll und server.dll nicht compilen kann.

tier2.lib(tier2.obj) : warning LNK4075: ignoring '/EDITANDCONTINUE' due to '/INCREMENTAL:NO' specification
Creating library Release HL2/client.lib and object Release HL2/client.exp
choreoevent.obj : error LNK2019: unresolved external symbol __invalid_parameter_noinfo referenced in function "public: int __thiscall std::_String_const_iterator<char,struct std::char_traits<char>,class std::allocator<char> >::operator-(class std::_String_const_iterator<char,struct std::char_traits<char>,class std::allocator<char> > const &)const " (??G?$_String_const_iterator@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEHABV01@@Z)
c:\programme\steam\steamapps\SourceMods\Stronghold Castle\bin\client.dll : fatal error LNK1120: 1 unresolved externals
Creating browse information file...
Microsoft Browse Information Maintenance Utility Version 8.00.50727
Copyright (C) Microsoft Corporation. All rights reserved.
Build log was saved at "file://c:\Dokumente und Einstellungen\Power Tower\Desktop\Stronghold Castle\src\cl_dll\Release HL2\BuildLog.htm"
client_hl2 - 2 error(s), 3 warning(s)
========== Rebuild All: 0 succeeded, 1 failed, 0 skipped ==========

Meine Frage:
1.) was ist dieses tier02 und wo könnte der fehler sein?
2.) ich hab die Datein doch noch gar nicht verändert, wo kann der Fehler liegen?

hoffe erlich ihr könnt mir helfen...

thx eurer Taigistal

--

zum Seitenanfang zum Seitenende Profil || Suche
001
11.06.2007, 08:53
chris14465



Versuch nochmal, deine Mod zu löschen und nochmal "create mod" zu machen.

--

zum Seitenanfang zum Seitenende Profil || Suche
002
11.06.2007, 16:26
Taigistal



danke für dire antwort,

aber wenn ich den Lösche sind doch alle meine Daten weg, oder welchen Ordner meinst du den "mod-Ordner" mit "rungame", und den Compile daten, oder den Mod ordner im Sourcemod verzeichniss unter Steam?

aber ich werds mal versuchen...

an alle anderen die was wissen, bitte teilt euer Wissen mit mir ;-)

danke
Taigistal

--

zum Seitenanfang zum Seitenende Profil || Suche
003
11.06.2007, 17:52
CPoly



Zitat:
Taigistal postete
aber wenn ich den Lösche sind doch alle meine Daten weg, oder welchen Ordner meinst du den "mod-Ordner" mit "rungame", und den Compile daten, oder den Mod ordner im Sourcemod verzeichniss unter Steam?
Ersteres wird er meinen, da im sourcemods/deinemod verzeichnis ohne compile nichts drin ist. Evtl ist da was beim kopieren beschädigt worden.

--

zum Seitenanfang zum Seitenende Profil || Suche
004
12.06.2007, 13:54
Taigistal



voll der oberhammer, ich glaub ich bin erlich einfach zu dumm für son scheiß, ich hab das mal gemacht, und jetzt gehts, ich versteh das nicht, naja, hauptsache jetzt geht es...thx chris für den Tip...

euer taigstal

--

zum Seitenanfang zum Seitenende Profil || Suche
005
15.08.2007, 11:18
Herndl



Ich habe den selben Fehler wie Taigistal und habe aber schon zuviele Dateien geändert um einfach eine neue Mod anzulegen. Weiß vielleicht jemand von euch eine andere Variante dieses Problem in den Griff zu bekommen.

Die Linker-Einstellungen habe ich genau so angegeben wie im http://developer.valvesoftware.com/wiki/Compiling_under_VS2005:de

Die Pfade habe ich nach http://developer.valvesoftware.com/wiki/Installing_and_Debugging_the_Source_Code"
eingestellt.

Habe schon alle möglich Foren durchsucht, bin bisher aber noch nicht auf eine funktionsfähige Lösung gestoßen. Ich brauch eure Hilfe!!!

Hier noch meine Fehlermeldung
Quellcode:Verknüpfen...
tier2.lib(tier2.obj) : warning LNK4075: /EDITANDCONTINUE wird aufgrund der Angabe von /INCREMENTAL:NO ignoriert.
   Bibliothek "Release HL2/client.lib" und Objekt "Release HL2/client.exp" werden erstellt.
choreoevent.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__invalid_parameter_noinfo" in Funktion ""public: int __thiscall std::_String_const_iterator,class std::allocator >::operator-(class std::_String_const_iterator,class std::allocator > const &)const " (??G?$_String_const_iterator@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEHABV01@@Z)".
Release HL2/client.dll : fatal error LNK1120: 1 nicht aufgelöste externe Verweise.
Ergebnisse     Das Buildprotokoll wurde unter "file://d:\GameDev\AVON\src\cl_dll\Release HL2\BuildLog.htm" gespeichert.
client_hl2 - 2 Fehler, 1 Warnung(en)

--


Dieser Beitrag wurde am 15.08.2007 um 11:19 von Herndl bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
006
17.08.2007, 21:43
Herndl



Weiß keiner was es mit dieser uminösen choreoevent.obj und diesem Fehler auf sich hat????

Bitte euch um Hilfe !!
Herndl

--

zum Seitenanfang zum Seitenende Profil || Suche
007
17.08.2007, 21:56
McScore



1.) Das heißt ominös.
2.) Du kannst (ähnlich wie ich) kein C. Der Linker stellt fest, dass eine Funktion aufgerufen wird, die war deklariert, aber nicht definiert worden ist. Vermutlich hast du vergessen, dem Projekt die Quelle oder die Bibliothek hinzuzufügen, welche diese Funktion definiert.

--

... und der große böse Wolf bootete und bootete und bootete ...
Optimiere deine Map, sieh dir alle Compile-Errors an, frage den Hersteller und beschwer dich über nichts!
http://www.mcscore.de.vu
13+3+7=23, 133/7+23=42

zum Seitenanfang zum Seitenende Profil || Suche
008
17.08.2007, 22:04
Herndl



1.) Danke für den Deutschtipp, als Ösi kann ich da ja noch etwas lernen ;-)

2.) Eigentlich habe ich vor einigen Jahr schon mal C gelernt, aber vieles vergessen, ich weiß schon noch, dass der Linker eine nicht deklarierte Funktion sucht. Ich weiß nur leider nicht welche Bibliothek ich eventuell beim Einbinden in den Linker vergessen haben könnte. Ich habe die Tutorials von den oben genannten Adressen genau nachgemacht. Welche Bibliotheken hast du eigentlich in den Linker eingebunden?

Grüße Herndl

--

zum Seitenanfang zum Seitenende Profil || Suche
009
18.08.2007, 21:53
Adrian_Broher
Admin


Nach kurzer Recherche scheint das wohl daran zu liegen, das hier debug und release build .obj Dateien gemischt werden.
Die Loesung ist wohl das einmal das Projekt bereinigt werden solllte und dann die obj dateien in verschiedene ordner kompiliert werden sollten. Dann sollte der Linker ruhe geben. Falls dies nicht der Fall ist melde dich nochmal im forum.

--

There is nothing wrong with high standards. It's your problem that you don't meet them.
If you think it's simple, then you have misunderstood the problem.
When a customer says "nothing has changed", assume they're lying.

zum Seitenanfang zum Seitenende Profil || Suche
010
19.08.2007, 01:02
Herndl



Hi Adrian, danke schon mal für den Tipp, aber das Bereinigen hat mich leider auch nicht weitergebracht. Soweit ich aber bisher herausgefunden habe, könnte an dem Vermischen von DLL's aber was dran sein. Denn er lässt mir die Dateien ja kompilieren aber der Linker schafft es einfach nicht die DLL's einzubinden. Das komische ist, ich habe zu Testzwecken mal eine neue Mod erstellt und diese mit den Rohdaten kompiliert, Debug hat funktioniert (wie bei meiner MOD) aber im Release habe ich den selben Fehler wieder erhalten. Sehr sehr komisch!

1>------ Bereinigen gestartet: Projekt: server_hl2, Konfiguration: Release HL2 Win32 ------
1>Die Zwischen- und Ausgabedateien für das Projekt "server_hl2" mit der Konfiguration "Release HL2|Win32" werden gelöscht.
2>------ Bereinigen gestartet: Projekt: client_hl2, Konfiguration: Release HL2 Win32 ------
2>Die Zwischen- und Ausgabedateien für das Projekt "client_hl2" mit der Konfiguration "Release HL2|Win32" werden gelöscht.
========== Bereinigen: 2 erfolgreich, Fehler bei 0, 0 übersprungen ==========

Danach habe ich es erneut kompiliert und wieder folgendes erhalten:

Verknüpfen...
2>tier2.lib(tier2.obj) : warning LNK4075: /EDITANDCONTINUE wird aufgrund der Angabe von /INCREMENTAL:NO ignoriert.
2> Bibliothek "Release HL2/client.lib" und Objekt "Release HL2/client.exp" werden erstellt.
2>choreoevent.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__invalid_parameter_noinfo" in Funktion ""public: int __thiscall std::_String_const_iterator<char,struct std::char_traits<char>,class std::allocator<char> >::operator-(class std::_String_const_iterator<char,struct std::char_traits<char>,class std::allocator<char> > const &)const " (??G?$_String_const_iterator@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEHABV01@@Z)".
2>Release HL2/client.dll : fatal error LNK1120: 1 nicht aufgelöste externe Verweise.

Grüße Herndl

--

zum Seitenanfang zum Seitenende Profil || Suche
011
21.08.2007, 21:59
Herndl



Hat keiner vielleicht einen Tipp für mich? Kann es sein, dass es etwas mit dem V C++ 2005 express zu tun hat?

--

zum Seitenanfang zum Seitenende Profil || Suche
012
21.08.2007, 22:41
CPoly



Guck mal manuell wie es mit den *.obj dateien aussieht (im Ordner "src/cl_dll/Release..." bzw. "src/dlls/Release...")

--

zum Seitenanfang zum Seitenende Profil || Suche
013
22.08.2007, 08:29
hausi



10 Sekunden Google haben ergeben, dass es scheinbar zwei Lösungsmöglichkeiten dafür gibt:
1. Du hast immer noch einige Release-.objs oder Static Libraries gelinkt. Alles muss als Debug-Build vorhanden sein, damit das funktionieren kann. __invalid_parameter_noinfo kommt scheinbar nur in den Release-Versionen zur Verwendung.
2. _SECURE_SCL=0 setzen soll scheinbar das Problem mit der STL umgehen, allerdings ist es fraglich, ob nicht ev. andere Probleme entstehen.

Edit: Ups, erst jetzt gelesen, dass es im Release-Modus auftritt. Überprüf mal, ob du gegen libcmt.lib linkst. Dort ist das Symbol definiert.

--


Dieser Beitrag wurde am 22.08.2007 um 08:31 von hausi bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
014
22.08.2007, 19:17
Herndl



Ja habe gegen die libcmt.lib gelinkt, deshalb kommt mir das alles auch so komisch vor!

--

zum Seitenanfang zum Seitenende Profil || Suche
015
22.08.2007, 19:38
Adrian_Broher
Admin


sind die entsprechend libary pfade in visual studio eingestellt?

€dit:

http://developer.valvesoftware.com/wiki/Compiling_under_VS2005:de

Zitat:
Bei Standardbibliotheken ignorieren sollte "Nein" stehen und bei Bibliothek ignorieren sollte folgendes stehen:
LIBC;LIBCD;LIBCMT (Achte besonders darauf, dass hier Semikolons statt Kommas verwendet werden)
in der englischen Version steht da nichts von http://developer.valvesoftware.com/wiki/Compiling_under_VS2005

Ich behaupte mal das die deutschsprache Verion nicht korrekt ist. Sorge dafür, dass die entsprechenden Libs NICHT ignoriert werden.

--

There is nothing wrong with high standards. It's your problem that you don't meet them.
If you think it's simple, then you have misunderstood the problem.
When a customer says "nothing has changed", assume they're lying.


Dieser Beitrag wurde am 22.08.2007 um 19:43 von Adrian_Broher bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
016
25.03.2008, 12:38
TronMan



hi all

Also nach 1 1/2 jahren hab ich es endlcih geschafft das meine mod jetzt funzt mit den erstellten dll dateien und des mit dem visual c++ 2005 express studio.

Mache im Projektmappen-Explorer einen Rechtsklick auf client_hl2mp bzw. 'client_hl2' und klicke auf Eigenschaften.
Gehe zu Konfigurationseigenschaften - Linker - Eingabe und wähle bei Konfiguration alle Konfigurationen aus.
ib unter Zusätzliche Abhängigkeiten "winmm.lib" "user32.lib" und "kernel32.lib ein (ohne ""), sodass dort steht:
winmm.lib user32.lib kernel32.lib (Achte auf das Leerzeichen).
Dann noch was auf Release alles zu compilieren
und net vergessen in euren mod ordner noch ein ordner anzulegen mit "bin".

kommt zwar ne fehler meldung vom compiler aber am ende macht er doch die dll datei rein.
Und dann versuch mal eure Mod mal zu starten.

Also bei hat alles gefunzt.

:)

--

zum Seitenanfang zum Seitenende Profil || Suche