I also built v8 5.3-lkgr using gn, and I also needed to build v8_libbase.lib and v8_libplatform.lib for embedding purpose. The problem is I don't find samples.sln anywhere. How do I generate samples.sln? Or more directly, how am I supposed to generate the .lib files from the .obj files?
On Friday, September 30, 2016 at 1:43:54 AM UTC-7, DaManuell wrote: > > Many thanks for your help. > I found another solution, and write it here in case it may help. > > Just load in the VS2015 IDE the v8\samples\samples.sln solution and build > the hello-world project. > Then, you will find v8\out\Release\obj\src\v8_libbase.lib and > v8\out\Release\obj\src\v8_libplatform.lib :-) > > (note: you also will need to send Winmm.lib to the linker, to finally fix > the last unresolved external, but that one is a regular Windows library) > > Again, thanks! > > Le jeudi 29 septembre 2016 16:43:46 UTC+2, Andre Cunha a écrit : >> >> I apologyze for not being very familiar with Windows, but I suppose >> ".obj" files in Windows are equivalent to ".o" files in Linux, and ".lib" >> files in Windows are equivalent to ".a" files in Linux. If this is the >> case, then you have two options: if Visual Studio has a tool for that, you >> can generate a ".lib" file from the ".obj" files, and link against it (in >> Linux, I use the "ar" tool for that); or, as you said, you can inform each >> ".obj" file individually to the linker. That's what ninja actually does >> when it builds the hello-world example, if you inspect the ninja files. >> >> On Thursday, September 29, 2016 at 11:34:44 AM UTC-3, DaManuell wrote: >>> >>> My v8\out.gn\x86Release\obj\v8_libbase and v8\out.gn >>> \x86Release\obj\v8_libplatform contain only files with extension obj. >>> Do you mean that the main ninja command does NOT produce Static Library >>> files (extension: "lib") for these "obj" files, and that I must push >>> each of these obj files to the linker? >>> >>> Le jeudi 29 septembre 2016 16:23:43 UTC+2, Andre Cunha a écrit : >>>> >>>> You need to statically link against libplatform and libbase. I never >>>> compiled v8 in Windows, but in Linux the necessary files (with .o >>>> extension) are generated inside out.gn/x64.release/obj/v8_libplatform >>>> and out.gn/x64.release/obj/v8_libbase. >>>> >>>> On Thursday, September 29, 2016 at 9:34:57 AM UTC-3, DaManuell wrote: >>>>> >>>>> I successfully built "v8" (tags/5.3.332.45) using the instructions on >>>>> the page Building with GN >>>>> <https://github.com/v8/v8/wiki/Building%20with%20GN>. >>>>> The arguments to gn were: >>>>> is_component_build = true >>>>> is_debug = false >>>>> target_cpu="x86" >>>>> >>>>> After ninja -C out.gn/x86Release the files v8_hello_world.exe and >>>>> v8_shell.exe ran just fine. >>>>> >>>>> Then, I wanted to build my own "Hello World" program using a fresh new >>>>> VS2015 project, but merely copy/pasting hello-world.cc. >>>>> >>>>> I had compiler errors, fixed by adding some directories to the project >>>>> property "C++/General/Additional include directories" >>>>> >>>>> I had linker errors, fixed by linking against v8.dll.lib >>>>> >>>>> But I still have linker errors, about the unresolved external "class >>>>> v8::Platform * __cdecl v8::platform::CreateDefaultPlatform(int)" >>>>> >>>>> I think I need to link against some "platform" static library file. >>>>> Where it is? How to build it? >>>>> >>>> -- -- v8-users mailing list [email protected] http://groups.google.com/group/v8-users --- You received this message because you are subscribed to the Google Groups "v8-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
