2016-04-25 7 views
2

Ich bin mit V8-32-Bit-Version 4.10.253 mit Visual Studio kompilierte 2015v8 :: Isolieren :: Neue null Zugriffsverletzung

Ich versuche, das Beispiel, dass Google hat an laufen: Chrome V8 - Getting Started

Aber wenn ich versuche, es zu laufen, erhalte ich:

Exception thrown at 0x00000000 in V8Test.exe: 0xC0000005: Access 
violation executing location 0x00000000. 

ich diese erhalten, wenn die folgenden ausgeführt wird:

Isolate* isolate = Isolate::New(create_params); 

Meine Projekteinstellungen:

das Projekt im Debug zu kompilieren zu erhalten, stelle ich die Laufzeitbibliothek auf:

Multi-threaded Debug /MTd. 

I umfassen die v8 Include-Verzeichnis unter zusätzlichen Verzeichnisse enthalten.

Schließlich I umfassen die folgenden Bibliotheken:

icuuc.lib icui18n.lib v8_libplatform.lib v8_external_snapshot.lib 
v8_base_3.lib v8_base_2.lib v8_base_1.lib v8_base_0.lib v8_libbase.lib 
winmm.lib 

Wer weiß, was ich falsch mache? Danke im Voraus.

Antwort

1

Ok, ich fühle mich dumm. Ich habe den Rest des Tutorials nicht fertig gelesen. Sie müssen alle .bin-Dateien kopieren, in denen Ihre ausführbare Datei gespeichert ist. Speziell:

natives_blob.bin 
snapshot_blob.bin 

V8 wird bei Isolate abstürzen :: Neu, wenn Sie nicht tun.

+1

Deshalb verwende ich no_snapshot. Es ist MINUTELS langsamer beim Start, aber Sie müssen nicht mit den richtigen bin Dateien beschäftigen - die basierend auf Debug/32 vs 64bit/Version von V8/etc ändern. Einfacher warten die zusätzlichen .1s oder so (wenn ich gemessen) und nicht immer wieder mit ihnen zu tun. Verknüpfen Sie nicht external_snapshot und verknüpfen Sie stattdessen no_snapshot. – xaxxon

+0

Schön! Danke für den Tipp, ich muss dem einen Schuss geben. – Someone13

+1

Auch, wenn Sie nicht sind, stellen Sie sicher, dass Sie gegen die Debug-Builds entwickeln (make x64.debug) - es gibt bessere Fehlerinformationen, bevor die Dinge abstürzen. Es ist nicht großartig, aber es ist ein bisschen besser. Außerdem denke ich, dass die Stack-Spuren sogar ein bisschen besser sind. – xaxxon