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.

Reply via email to