Kann ich einbetten Strawberry Perl in einer 6.0 kompilierte Anwendung VC ++ oder verwendet Inline :: C mit dem Compiler Mismatch?

StackOverflow https://stackoverflow.com/questions/375015

Frage

Ich bin auf der Suche Perl 5.10 in einem großen C ++ Anwendung Einbettung mit VC ++ kompiliert 6.0. Dies führt zu zwei Fragen.

1) Ist es eine schlechte Idee, einfach Strawberry Perl als Abhängigkeit zu verwenden, anstatt mein eigenes Perl zu kompilieren mit VC ++ 6.0? Würde Erdbeere sogar den Compiler Mismatch gegeben arbeiten? Ich nehme an Erdbeere mit mingw zusammengestellt. Ich würde viel lieber nicht haben, um meine eigenen benutzerdefinierten Perl zu halten bauen um.

2) Wenn ich die Erdbeere Weg gehe, wäre so etwas wie Inline :: C Arbeit in der Embedded-Anwendung? Sie müssten VC ++ 6.0-Code aufrufen mingw Strawberry wiederum zusammengestellt Benutzer mingw kompilierten Code aufrufen. Inline :: C wäre eine wunderbare Fähigkeit, für das, was ich versuche, mit dem eingebetteten Perl-Interpreter zu erreichen.

War es hilfreich?

Lösung

die Unsicherheit beteiligt gegeben, würde ich empfehlen kompilieren Perl MSVC anstelle für diese Anwendung mit Strawberry Perl experimentieren. Es gibt Anweisungen in perlwin32 und ein Siehe auch auf Perl Monks zu führen.

Als ehemaliger Release-Manager für Strawberry Perl, ich kann Ihnen sagen, es ist nicht sehr schwer zu tun, wenn Sie bereits mit einem Compiler vertraut sind.

- xdg

Andere Tipps

Activestate Perl wird mit VC ++ 6.0 kompiliert. Es kann VC ++ verwenden 6.0 oder MinGW Module zu kompilieren, da sie auf die gleiche C-Laufzeitbibliothek verknüpfen, msvcrt.dll. Es wäre besser, MinGW zu verwenden, da VC ++ 6.0 weder frei noch leicht verfügbar ist (es sei denn, Sie können sicher sein, dass es auf dem Zielrechner installiert ist.) Sie können pPM mingw installieren jetzt und kompilieren Module von CPAN. Eine große Anzahl von Modulen zusammenstellen, ohne Schwierigkeiten. Sie können CPAN konfigurieren mit:

o conf yaml_module '' (zwei einfache Anführungszeichen, nichts zwischen)

o conf commit

Inline :: C arbeitet.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top