I don't want to abuse the goodwill of Google people on this but this comes 
under the heading "Insane crap no one outside Google understands or wants 
to understand."

My first thought (build sqlite against chromium headers, which I got 
working) has a problem in that v8 compiles the ICU library as C++, and 
SQLite is C, so linking the programs that come with SQLite dies horribly, 
since they're built with gcc, not g++.

I'll look at this remove-libraries thing, but I'm afraid I'm getting into a 
situation where MY code will be insanely unmaintainable, because I'd be 
depending on a hack that works on a particular snapshot of v8, which will 
make any updates from the v8 repository problematic.

Thing is, I would think that Google would want v8 to be an easy interpreter 
to embed in places other than Chrome/Chromium.  The only reason I'm not 
more upset is that the Mozilla people are just as goofy about Spidermonkey.


On Thursday, January 19, 2017 at 7:07:50 AM UTC-6, Jochen Eisinger wrote:
>
> You should be able to compile v8 against the system ICU library following 
> these steps: 
> https://cs.chromium.org/chromium/src/build/linux/unbundle/?q=src/build/linux/unbundle
>
> If you set v8_static_library = true and is_component_build = false you 
> should get static libraries
>
> best
> -jochen
>
> On Thu, Jan 19, 2017 at 12:07 PM Ben Noordhuis <[email protected] 
> <javascript:>> wrote:
>
>> On Wed, Jan 18, 2017 at 11:49 PM, kent williams <[email protected] 
>> <javascript:>> wrote:
>> > Subject line says it all:
>> >
>> > When I link my app to the v8 library, I have 2 choices:
>> >
>> > 1. Link to the system ICU libraries (ICU v 50 on Centos 7), in which 
>> case,
>> > there are undefined references in v8 to icu v58.
>> > 2. Link to v8 versions of ICU library, in which case there are undefined
>> > references to icu v50 from the sqlite library.
>> >
>> > I would configure sqlite to use v8's libraries but it isn't 
>> straightforward,
>> > specifically configuring sqlite to add -I for all the directories where 
>> icu
>> > headers are located.
>> >
>> > Any suggestions? All I can come up with is an unacceptable solution: 
>> turning
>> > off il8n in either v8 or sqlite.
>> >
>> >
>> > Bonus points if you can tell me how to use a gn build that permits 
>> static
>> > linking ;-)
>>
>> I can't tell you how to do it with GN (I still use GYP) but I'd
>> probably rig the build so each library links privately to its version
>> of ICU, see [0] for an example.  V8 doesn't re-export ICU symbols, and
>> neither does sqlite as far as I know, so it should be reasonably
>> straightforward.
>>
>> [0] 
>> http://stackoverflow.com/questions/228117/loading-multiple-shared-libraries-with-different-versions
>>
>> --
>> --
>> 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