Hello,

I am trying to create a VCPKG (https://github.com/microsoft/vcpkg) port of 
v8,
and in doing so I am syncing to tag 8.3.110.13 as suggested here: 
https://v8.dev/docs/version-numbers

Since this is package manager, I want to build against msvc's c++ lib, so I 
am using use_custom_libcxx=false,
however I am seeing linking errors related to undefined symbols on debug 
builds like:

[1797/2086] LINK(DLL) v8.dll v8.dll.lib v8.dll.pdb
FAILED: v8.dll v8.dll.lib v8.dll.pdb 
C:/Code/vcpkg/buildtrees/v8/src/epot_tools-f6c91d5fca/bootstrap-3_8_0_chromium_8_bin/python/bin/python.exe
 
../../build/toolchain/win/tool_wrapper.py link-wrapper environment.x64 
False link.exe /nologo /IMPLIB:./v8.dll.lib /DLL /OUT:./v8.dll 
/PDB:./v8.dll.pdb @./v8.dll.rsp
class-verifiers-tq.obj : error LNK2019: unresolved external symbol "public: 
class v8::internal::TNode<struct v8::internal::BoolT> __cdecl 
v8::internal::TorqueGeneratedExportedMacrosAssembler::IsFastJSArray(class 
v8::internal::TNode<class v8::internal::Object>,class 
v8::internal::TNode<class v8::internal::Context>)" 
(?IsFastJSArray@TorqueGeneratedExportedMacrosAssembler@internal@v8@@QEAA?AV?$TNode@UBoolT@internal@v8@@@23@V?$TNode@VObject@internal@v8@@@23@V?$TNode@VContext@internal@v8@@@23@@Z)
 
referenced in function "public: class v8::internal::TNode<class 
v8::internal::JSArray> __cdecl 
v8::internal::CodeStubAssembler::TaggedToFastJSArray(class 
v8::internal::TNode<class v8::internal::Context>,class 
v8::internal::TNode<class v8::internal::Object>,class 
v8::internal::compiler::CodeAssemblerLabel *)" 
(?TaggedToFastJSArray@CodeStubAssembler@internal@v8@@QEAA?AV?$TNode@VJSArray@internal@v8@@@23@V?$TNode@VContext@internal@v8@@@23@V?$TNode@VObject@internal@v8@@@23@PEAVCodeAssemblerLabel@compiler@23@@Z)

There's 75 symbols missing in total, all in class-verifiers-tq.obj, I can 
post the rest if needed, but hopefully this will give you an idea.

On release builds there is only one undefined symbol: void __cdecl 
v8::internal::FixedArray::set(int,class v8::internal::Smi), which I believe 
should be in fixed-array-tq-csa.obj,
but it is not there. There are 2 overrides right next to its definition in 
fixed-array-inl.h that do seem to exist in the object file but this one 
isn't.

here is the error output:

ninja: Entering directory `out\x64.release'
[1/298] LINK mksnapshot.exe mksnapshot.exe.pdb
FAILED: mksnapshot.exe mksnapshot.exe.pdb
C:/Code/vcpkg/buildtrees/v8/src/epot_tools-f6c91d5fca/bootstrap-3_8_0_chromium_8_bin/python/bin/python.exe
 
../../build/toolchain/win/tool_wrapper.py link-wrapper environment.x64 
False link.exe /nologo /OUT:./mksnapshot.exe /PDB:./mksnapshot.exe.pdb 
@./mksnapshot.exe.rsp
exported-macros-assembler-tq.obj : error LNK2019: unresolved external 
symbol "public: void __cdecl v8::internal::FixedArray::set(int,class 
v8::internal::Smi)" (?set@FixedArray@internal@v8@@QEAAXHVSmi@23@@Z) 
referenced in function "protected: void __cdecl 
v8::internal::OrderedHashTable<class 
v8::internal::OrderedHashMap,2>::SetNumberOfBuckets(int)" 
(?SetNumberOfBuckets@?$OrderedHashTable@VOrderedHashMap@internal@v8@@$01@internal@v8@@IEAAXH@Z)

.\mksnapshot.exe : fatal error LNK1120: 1 unresolved externals

Is there something I can patch to make this work? is this a known issue?

Also, is there a way to add a debug postfix/suffix like "d" to debug 
libraries?

Thanks in advance!

-- 
-- 
v8-users mailing list
v8-users@googlegroups.com
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 v8-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/v8-users/bd039d0b-45cd-4aa4-afe3-70b297de1536o%40googlegroups.com.

Reply via email to