Hitting the same issue.
Adding:
v8_static_library("v8_monolith") {
deps = [
":v8",
":v8_libbase",
":v8_libplatform",
":v8_maybe_temporal",
"//build/win:default_exe_manifest",
]
configs = [ ":internal_config" ]
}
Does not help.
On Tuesday, 24 June 2025 at 19:11:35 UTC+1 [email protected] wrote:
> Hi Manish,
>
> Yes, I made the change to BUILD.gn on Windows. I'll try on MacOS this
> weekend.
>
> Best regards,
> Sam
>
> On Tuesday, June 24, 2025 at 4:55:48 PM UTC+2 [email protected] wrote:
>
>> Did you make the requested change to BUILD.gn, or just change args?
>> Again, I'm recommending adding `:v8_maybe_temporal` to the dependencies
>> section of the `v8_monolith` build rule.
>>
>> When I get a chance I can try and replicate these flags locally.
>>
>> On Tue, Jun 24, 2025 at 3:32 AM Sam Cao <[email protected]> wrote:
>>
>>> Hi Manish,
>>>
>>> I just tried the following flags (V8 v13.8.258.19) on Windows.
>>> dcheck_always_on = false
>>> is_component_build = false
>>> is_debug = false
>>> symbol_level = 0
>>> target_cpu = "x64"
>>> use_custom_libcxx = false
>>> v8_enable_i18n_support = false
>>> v8_enable_pointer_compression = false
>>> v8_enable_sandbox = false
>>> v8_enable_temporal_support = true
>>> v8_monolithic = true
>>> v8_monolithic_for_shared_library = true
>>> v8_static_library = true
>>> v8_target_cpu = "x64"
>>> v8_use_external_startup_data = false
>>>
>>> It still doesn't work. Here are the errors.
>>> MSBuild version 17.13.19+0d9f5a35a for .NET Framework
>>>
>>> 1>Checking Build System
>>> Building Custom Rule C:/****/CMakeLists.txt
>>> lld-link : error : undefined symbol: temporal_rs_Instant_try_new
>>> [C:\****.vcxproj]
>>> >>> referenced by v8_monolith.lib(js-temporal-objects.obj):(class
>>> v8::internal::MaybeDirectHandle<class v8::internal::JSTemporalInstant>
>>> __cdecl v8::internal::temporal::CreateTemporalInstantWithValidityCheck(
>>> class v8::internal::Isolate *, class v8::internal::DirectHandle<class
>>> v8::internal::JSFunction>, class v8::internal::DirectHandle<class
>>> v8::internal::HeapObject>, class v8::internal::DirectHandle<class v8::in
>>> ternal::BigInt>))
>>>
>>> lld-link : error : undefined symbol: temporal_rs_Instant_destroy
>>> [C:\****.vcxproj]
>>> >>> referenced by v8_monolith.lib(js-temporal-objects.obj):(class
>>> v8::internal::MaybeDirectHandle<class v8::internal::JSTemporalInstant>
>>> __cdecl v8::internal::temporal::CreateTemporalInstantWithValidityCheck(
>>> class v8::internal::Isolate *, class v8::internal::DirectHandle<class
>>> v8::internal::JSFunction>, class v8::internal::DirectHandle<class
>>> v8::internal::HeapObject>, class v8::internal::DirectHandle<class v8::in
>>> ternal::BigInt>))
>>> >>> referenced by v8_monolith.lib(js-temporal-objects.obj):(public:
>>> static class v8::internal::MaybeDirectHandle<class
>>> v8::internal::JSTemporalInstant> __cdecl
>>> v8::internal::JSTemporalInstant::Round(class v8:
>>> :internal::Isolate *, class v8::internal::DirectHandle<class
>>> v8::internal::JSTemporalInstant>, class v8::internal::DirectHandle<class
>>> v8::internal::Object>))
>>> >>> referenced by v8_monolith.lib(js-temporal-objects.obj):(private:
>>> virtual void __cdecl std::_Ref_count_resource<class temporal_rs::Instant *,
>>> struct std::default_delete<class temporal_rs::Instant>>::_Destr
>>> oy(void))
>>>
>>> lld-link : error : undefined symbol: temporal_rs_Instant_round
>>> [C:\****.vcxproj]
>>> >>> referenced by v8_monolith.lib(js-temporal-objects.obj):(public:
>>> static class v8::internal::MaybeDirectHandle<class
>>> v8::internal::JSTemporalInstant> __cdecl
>>> v8::internal::JSTemporalInstant::Round(class v8:
>>> :internal::Isolate *, class v8::internal::DirectHandle<class
>>> v8::internal::JSTemporalInstant>, class v8::internal::DirectHandle<class
>>> v8::internal::Object>))
>>>
>>> lld-link : error : undefined symbol:
>>> temporal_rs_Instant_epoch_milliseconds [C:\****.vcxproj]
>>> >>> referenced by v8_monolith.lib(js-temporal-objects.obj):(public:
>>> static class v8::internal::MaybeDirectHandle<class
>>> v8::internal::Union<class v8::internal::Smi, class
>>> v8::internal::HeapNumber>> __cdecl v8:
>>> :internal::JSTemporalInstant::EpochMilliseconds(class
>>> v8::internal::Isolate *, class v8::internal::DirectHandle<class
>>> v8::internal::JSTemporalInstant>))
>>> >>> referenced by v8_monolith.lib(js-temporal-objects.obj):(public:
>>> static class v8::internal::MaybeDirectHandle<class v8::internal::String>
>>> __cdecl v8::internal::JSTemporalInstant::ToString(class v8::interna
>>> l::Isolate *, class v8::internal::DirectHandle<class
>>> v8::internal::JSTemporalInstant>, class v8::internal::DirectHandle<class
>>> v8::internal::Object>))
>>>
>>> lld-link : error : undefined symbol:
>>> temporal_rs_Instant_epoch_nanoseconds [C:\****.vcxproj]
>>> >>> referenced by v8_monolith.lib(js-temporal-objects.obj):(public:
>>> static class v8::internal::MaybeDirectHandle<class v8::internal::BigInt>
>>> __cdecl v8::internal::JSTemporalInstant::EpochNanoseconds(class v8:
>>> :internal::Isolate *, class v8::internal::DirectHandle<class
>>> v8::internal::JSTemporalInstant>))
>>> Build Failed
>>>
>>> I'm not sure what went wrong.
>>>
>>> Best regards,
>>> Sam
>>>
>>> On Monday, June 23, 2025 at 7:16:41 PM UTC+2 Sam Cao wrote:
>>>
>>>> Hi Manish,
>>>>
>>>> Thank you for the info. I'll try it later and let you know if it works.
>>>>
>>>> Best regards,
>>>> Sam
>>>>
>>>> On Mon, Jun 23, 2025 at 6:02 PM 'Manish Goregaokar' via v8-users <
>>>> [email protected]> wrote:
>>>>
>>>>> Hi!
>>>>>
>>>>> I don't know how to replicate this problem, but have you tried adding
>>>>> `:v8_maybe_temporal` as a dependency to
>>>>> `v8_static_library("v8_monolith")`
>>>>> in `BUILD.gn`?
>>>>>
>>>>> Let me know if that works and i can fix it upstream.
>>>>>
>>>>> On Sunday, June 22, 2025 at 1:05:38 PM UTC-7 Sam Cao wrote:
>>>>>
>>>>>> Hi V8 Dev Team,
>>>>>>
>>>>>> I tried to turn on v8_enable_temporal_support for my V8 embedder, but
>>>>>> found the related JS temporal symbols are only built into
>>>>>> libv8_monolith.a
>>>>>> on Linux. On MacOS or Windows, I experienced js_temporal_* symbol not
>>>>>> found
>>>>>> errors.
>>>>>>
>>>>>> Could you check it out? Thank you.
>>>>>>
>>>>>> Best regards,
>>>>>> Sam
>>>>>>
>>>>> --
>>>>> --
>>>>> v8-users mailing list
>>>>> [email protected]
>>>>> http://groups.google.com/group/v8-users
>>>>> ---
>>>>> You received this message because you are subscribed to a topic in the
>>>>> Google Groups "v8-users" group.
>>>>> To unsubscribe from this topic, visit
>>>>> https://groups.google.com/d/topic/v8-users/nI21ZCjYJwo/unsubscribe.
>>>>> To unsubscribe from this group and all its topics, send an email to
>>>>> [email protected].
>>>>> To view this discussion visit
>>>>> https://groups.google.com/d/msgid/v8-users/e3eee9bb-bf9b-42ef-b215-6b89d2768f28n%40googlegroups.com
>>>>>
>>>>> <https://groups.google.com/d/msgid/v8-users/e3eee9bb-bf9b-42ef-b215-6b89d2768f28n%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>> .
>>>>>
>>>>
>>>>
>>>> --
>>>> -- Sam
>>>>
>>> --
>>> --
>>> v8-users mailing list
>>> [email protected]
>>> http://groups.google.com/group/v8-users
>>> ---
>>> You received this message because you are subscribed to a topic in the
>>> Google Groups "v8-users" group.
>>> To unsubscribe from this topic, visit
>>> https://groups.google.com/d/topic/v8-users/nI21ZCjYJwo/unsubscribe.
>>> To unsubscribe from this group and all its topics, send an email to
>>> [email protected].
>>>
>> To view this discussion visit
>>> https://groups.google.com/d/msgid/v8-users/3c7455f9-bb11-4922-b9fb-03102f4d7a24n%40googlegroups.com
>>>
>>> <https://groups.google.com/d/msgid/v8-users/3c7455f9-bb11-4922-b9fb-03102f4d7a24n%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>>
--
--
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].
To view this discussion visit
https://groups.google.com/d/msgid/v8-users/479f71f9-dd29-4484-8da0-51ff84f41282n%40googlegroups.com.