2016-04-05 9 views
0

Ich arbeite am PC-Port meiner Cocos2dx-App und habe den Fehler gefunden: LINK: Schwerwiegender Fehler LNK1140: zu viele Module für die Programmdatenbank; Verbindung mit/PDB: NONEC++ - Cocos2dx - LNK1140 Fehler: zu viele Module

Der PC-Anschluss funktionierte vorher gut, aber als ich eine neue .cpp-Datei oder .lib zur Lösung hinzufügte, bin ich plötzlich auf diesen Fehler gestoßen. Online suchen hat nichts gebracht und es sind ein paar Tage gewesen.

Obwohl ich die PDB drehen kann: auf NONE Flagge, würde es bedeuten, dass ich nicht mehr auf dem PC debuggen kann.

Vom Ausgang I von dem Linker gesehen habe, ist libcocos2d viel enthalten, so dass ich denke, dass das Problem sein könnte? Die Anzahl der .obj-Dateien, die ich (Module) für meine App habe, ist ungefähr 100. Die maximale Anzahl ist 4095. Also müssen die anderen 4k von irgendwo kommen.

Die PDB-Datei ist auch lächerlich riesig (347MB), aber ich bin mir nicht sicher, ob das wegen libcocos2d ist.

Ich verwende Cocos2dx 3,8 w/Visual Studio 2013 Ich habe das Gefühl, es gibt einige Einstellung irgendwo in den Linker-Optionen, die dieses Problem zu beheben, aber ich bin mir nicht sicher.

Hilfe würde sehr geschätzt werden.

Antwort

0

Okay, so dachte ich, die Antwort aus.

Die cocos2dx win32 Projektlösung Standard besteht aus:

  • Ihr Projekt
  • libbullet
  • libbox2d
  • librecast libcocos2d; und
  • librespine

Ich entfernte alle anderen Projekte außer meiner eigenen und hinzugefügt libcocos2d.lib zu Linkers> Input> zusätzliche Abhängigkeiten. Die Bibliothek besteht aus all diesen anderen Projekten.

Zum Debuggen habe ich einfach die .dll und .pdb von libcocos2d in den Ordner kopiert. (Ich bin mir sicher, dass ich das später automatisieren kann.)

Ich laufe nicht mehr in das Problem, und meine eigene .pdb (nach einem Clean-Build) ist jetzt 10MB.