2016-07-29 4 views
-1

Ich benutze Visual Studio 2015 unter Windows, um eine C++ - Anwendung für einen Linux-Rechner mit der Linux-Projektvorlage zu entwickeln. Bisher habe ich die Bibliotheken, die ich brauche, auf dem Remote-Rechner erstellt und dann diese Bibliotheken auf meine Windows-Maschine übertragen.Gibt es eine Möglichkeit, Bibliotheken in einer Remote-Linux-Anwendung für Visual Studio 2015 zu verlinken?

Von dort habe ich sie in meinem Projekt als normal aufgenommen (in den Projekteigenschaften), aber es gibt noch einige Fehler, wenn ich das Projekt baue, soweit ich sagen kann, dass sie Linkfehler sind. Ich bin mir ziemlich sicher, dass ich alle notwendigen Dateien eingebunden und alles korrekt in der IDE verlinkt habe.

Dies ist rein für Spaß und eine Lernerfahrung für mich, also bitte vergib mir, wenn ich hier weit weg bin. Ich habe über Makefiles gelesen, bin aber immer noch neu in der Linux-Entwicklung und habe mich nur gefragt, ob irgendjemand damit Erfahrung hat.

Wenn dies nicht aus der Visual Studio IDE entfernt werden kann, würde ich gerne Vorschläge hören.

EDIT: Es scheint, ich habe mich geirrt, was genau ich versuche zu tun, sorry Jungs.

+0

Sie sollten die Fehler posten, die Sie erhalten –

+0

Es scheint, dass Sie versuchen, einen Code lokal zu kompilieren und/oder zu verknüpfen, den Sie auf dem Remote-Linux ausführen möchten. Sie brauchen dafür einen Cross-Compiler. Aber Sie versuchen, remote kompilierte Objektdateien '* .o' lokal in eine ausführbare Windows-Datei zu verlinken, die selbst mit Cross-Compilern überhaupt nicht funktioniert. Die Objektdateien '* .o', die von Remote-Linux kompiliert wurden, werden Verweise auf Linux-Bibliotheken haben, von denen einige exklusiv sind. Der lokale Linker findet diese exklusiven Linux-Bibliotheken nicht, auf die diese Objektdateien verweisen. – alvits

Antwort

0

Sie können keine Bibliotheken unter Windows mit dem MSVC-Compiler verknüpfen, den Sie auf Ihrem entfernten Linux-Rechner mit einem anderen Compiler kompiliert haben. Sie müssen sie neu kompilieren.

+0

Ich hatte den Eindruck, dass Visual Studio nur den Compiler auf meinem Remote-Rechner aufruft, um das Projekt dort zu erstellen, nachdem es mit dem g ++ - Compiler kopiert wurde. –

+0

@EthanMorris Ich habe dich vielleicht missverstanden. So habe ich Sie verstanden: Sie kompilieren die Bibliotheken auf Ihrem Linux-Rechner und versuchen, sie zu verbinden, ohne sie auf Ihrem Windows-Rechner neu zu kompilieren? –

Verwandte Themen