No positive result.

I've found a dirty hack to enable PIC.
And I've submitted a patch that allows to force PIC to V8. I really hope it 
will be accepted.

--
Marat

On Wednesday, April 16, 2014 9:35:13 PM UTC+4, Jakob Kummerow wrote:
>
> Try depending on 'v8_base.<(v8_target_arch)' and 'v8_snapshot' instead. 
> The 'v8' target is just a meta target, you can probably fold everything it 
> does into your own custom shared library (those dependencies being the most 
> important bits).
>
>
> On Wed, Apr 16, 2014 at 12:29 PM, Marat Abdullin 
> <[email protected]<javascript:>
> > wrote:
>
>> I use GYP for my entire project and it doesn't work.
>>
>> I add V8 using:
>>     "dependencies": [
>>         "deps/v8/tools/gyp/v8.gyp:v8",
>>     ]
>>
>> with `component` set to `static_library` (and my library's target type is 
>> `shared_library`).
>>
>> Here is an example of compiler call (I use `make V=1` to get this) when 
>> it builds V8:
>>
>> g++ '-DV8_TARGET_ARCH_X64' '-DENABLE_DEBUGGER_SUPPORT' 
>> '-DV8_USE_DEFAULT_PLATFORM' '-DENABLE_HANDLE_ZAPPING' -Ideps/v8/src  
>> -fno-strict-aliasing -m64 -fdata-sections -ffunction-sections -O3  -MMD -MF 
>> out/Release/.deps/out/Release/obj.host/v8_base.x64/deps/v8/src/accessors.o.d.raw
>>   
>> -c -o out/Release/obj.host/v8_base.x64/deps/v8/src/accessors.o 
>> deps/v8/src/accessors.cc
>> No -fPIC (and quick V8's gyp-files examination shows that -fPIC is being 
>> added only in case `component` is set to `shared_library`).
>>
>> --
>> Marat
>>
>>  
>> On Wednesday, April 16, 2014 12:23:29 PM UTC+4, Jakob Kummerow wrote:
>>
>>> If you use GYP for your entire project, things should "just work". 
>>> Otherwise you'll probably have to modify V8's .gyp files. I'm not sure how, 
>>> you'll have to find that out for yourself. Try adding -fPIC to the 'cflags' 
>>> lists in build/toolchain.gypi.
>>>  
>>>
>>> On Wed, Apr 16, 2014 at 1:45 AM, Marat Abdullin <[email protected]>wrote:
>>>
>>>>  This thing is pretty old but I still have the same problem.
>>>> Is there any fix?
>>>>
>>>> I'm building a dynamic library and I'm statically linking V8 (version 
>>>> 3.24.40) in it. On OSX everything is linking just fine, but on Linux I get:
>>>>
>>>> /usr/bin/ld: out/Release/obj.target/deps/v8/tools/gyp/../../../../v8_
>>>> base.x64/deps/v8/src/accessors.o: relocation R_X86_64_32S against 
>>>> `vtable for v8::internal::StackFrame' can not be used when making a shared 
>>>> object; recompile with -fPIC
>>>>
>>>> out/Release/obj.target/deps/v8/tools/gyp/../../../../v8_
>>>> base.x64/deps/v8/src/accessors.o: could not read symbols: Bad value
>>>>
>>>> collect2: ld returned 1 exit status
>>>>
>>>> So, I need a way to tell V8 to build static library with -fPIC. Or is 
>>>> there any other fix for this?
>>>>
>>>> --
>>>> Marat
>>>>
>>>> On Monday, July 2, 2012 4:33:02 AM UTC+4, Charles Lowell wrote:
>>>>>
>>>>> Hi,
>>>>>
>>>>> I'm trying to build a shared object and link in the static v8 library. 
>>>>> This works fine for me on OSX, but on Linux I get the following error:
>>>>>
>>>>>     /usr/bin/ld: /tmp/build_321giz8disep/vendor
>>>>> /v8/out/x64.release/obj.target/v8_base/src/api.o: relocation 
>>>>> R_X86_64_32S against `vtable for v8::ScriptData' can not be used when 
>>>>> making a shared object; recompile with -fPIC
>>>>>        
>>>>> /tmp/build_321giz8disep/vendor/v8/out/x64.release/obj.target/tools/gyp/libv8_base.a:
>>>>>  
>>>>> could not read symbols: Bad value
>>>>>        collect2: ld returned 1 exit status
>>>>>
>>>>> Is there a way to tell GYP to build a static v8 library with -fPIC? Is 
>>>>> there a way to do this without patching one of the gypfiles?
>>>>>
>>>>> cheers,
>>>>> Charles
>>>>>
>>>>  -- 
>>>> -- 
>>>> 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.
>>>>
>>>
>>>  -- 
>> -- 
>> v8-users mailing list
>> [email protected] <javascript:>
>> 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] <javascript:>.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>

-- 
-- 
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