Skip to content

[vsgxchange] Update to 1.1.13#51691

Merged
vicroms merged 1 commit into
microsoft:masterfrom
xiaozhuai:dev-vsgxchange
May 15, 2026
Merged

[vsgxchange] Update to 1.1.13#51691
vicroms merged 1 commit into
microsoft:masterfrom
xiaozhuai:dev-vsgxchange

Conversation

@xiaozhuai
Copy link
Copy Markdown
Contributor

  • Changes comply with the maintainer guide.
  • SHA512s are updated for each updated download.
  • The "supports" clause reflects platforms that may be fixed by this new version, or no changes were necessary.
  • Any fixed CI baseline and CI feature baseline entries are removed from that file, or no entries needed to be changed.
  • All patch files in the port are applied and succeed.
  • The version database is fixed by rerunning ./vcpkg x-add-version --all and committing the result.
  • Exactly one version is added in each modified versions file.

@xiaozhuai
Copy link
Copy Markdown
Contributor Author

Depends on #51690

@xiaozhuai xiaozhuai marked this pull request as draft May 12, 2026 08:50
@xiaozhuai xiaozhuai marked this pull request as ready for review May 13, 2026 01:48
@xiaozhuai xiaozhuai force-pushed the dev-vsgxchange branch 2 times, most recently from 0923a93 to 32775ee Compare May 13, 2026 06:40
@xiaozhuai
Copy link
Copy Markdown
Contributor Author

xiaozhuai commented May 13, 2026

vsgxchange 1.1.12 fails when the assimp feature is disabled.
This is an upstream issue.

src/assimp/assimp_fallback.cpp:21:7: error: use of undeclared identifier 'assimp'
src/assimp/assimp_fallback.cpp:43:26: error: unknown type name 'Features'

I tried patch src/assimp/assimp_fallback.cpp to include #include <vsgXchange/assimp.h>, but it didn't work.

CC @robertosfield

@robertosfield
Copy link
Copy Markdown

robertosfield commented May 13, 2026 via email

@xiaozhuai xiaozhuai marked this pull request as draft May 14, 2026 07:25
@robertosfield
Copy link
Copy Markdown

I have checked in a build fix to vsgXchange master:

vsg-dev/vsgXchange@722ff2f

@robertosfield
Copy link
Copy Markdown

I have also updated vsgExamples to handling optional parts of vsgXchange:

vsg-dev/vsgExamples@6dc5b59

I have also tagged a vsgXchange-1.1.13 and vsgExamples-1.1.14 dev releases to wrap up these fixes:

https://github.com/vsg-dev/vsgXchange/releases/tag/v1.1.13
https://github.com/vsg-dev/vsgExamples/releases/tag/v1.1.14

@xiaozhuai xiaozhuai changed the title [vsgxchange] Update to 1.1.12 [vsgxchange] Update to 1.1.13 May 14, 2026
@xiaozhuai
Copy link
Copy Markdown
Contributor Author

@robertosfield Thanks for the quick fix!

@xiaozhuai xiaozhuai marked this pull request as ready for review May 14, 2026 10:19
@xiaozhuai
Copy link
Copy Markdown
Contributor Author

xiaozhuai commented May 14, 2026

@robertosfield New linking issue with v1.1.13.

LINK Pass 1: command "C:\PROGRA~1\MICROS~1\2022\ENTERP~1\VC\Tools\MSVC\1444~1.352\bin\Hostx64\x64\link.exe src\CMakeFiles\vsgXchange.dir\all\Version.cpp.obj src\CMakeFiles\vsgXchange.dir\all\all.cpp.obj src\CMakeFiles\vsgXchange.dir\cpp\cpp.cpp.obj src\CMakeFiles\vsgXchange.dir\stbi\stbi.cpp.obj src\CMakeFiles\vsgXchange.dir\dds\dds.cpp.obj src\CMakeFiles\vsgXchange.dir\images\images.cpp.obj src\CMakeFiles\vsgXchange.dir\bin\bin.cpp.obj src\CMakeFiles\vsgXchange.dir\gltf\gltf.cpp.obj src\CMakeFiles\vsgXchange.dir\gltf\Builder.cpp.obj src\CMakeFiles\vsgXchange.dir\3DTiles\3DTiles.cpp.obj src\CMakeFiles\vsgXchange.dir\3DTiles\i3dm.cpp.obj src\CMakeFiles\vsgXchange.dir\3DTiles\b3dm.cpp.obj src\CMakeFiles\vsgXchange.dir\3DTiles\cmpt.cpp.obj src\CMakeFiles\vsgXchange.dir\3DTiles\Builder.cpp.obj src\CMakeFiles\vsgXchange.dir\freetype\freetype_fallback.cpp.obj src\CMakeFiles\vsgXchange.dir\assimp\assimp_fallback.cpp.obj src\CMakeFiles\vsgXchange.dir\ktx\ktx_fallback.cpp.obj src\CMakeFiles\vsgXchange.dir\gdal\GDAL_fallback.cpp.obj src\CMakeFiles\vsgXchange.dir\curl\curl_fallback.cpp.obj src\CMakeFiles\vsgXchange.dir\openexr\openexr_fallback.cpp.obj /out:bin\vsgXchanged.dll /implib:lib\vsgXchanged.lib /pdb:bin\vsgXchanged.pdb /dll /version:1.1 /machine:x64 /nologo /debug /INCREMENTAL D:\installed\x64-windows\debug\lib\vsgd.lib D:\installed\x64-windows\debug\lib\vulkan-1.lib kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib /MANIFEST /MANIFESTFILE:src\CMakeFiles\vsgXchange.dir/intermediate.manifest src\CMakeFiles\vsgXchange.dir/manifest.res" failed (exit code 1120) with the following output:
   Creating library lib\vsgXchanged.lib and object lib\vsgXchanged.exp

all.cpp.obj : error LNK2001: unresolved external symbol "public: virtual bool __cdecl vsgXchange::assimp::Builder::getColor(struct aiMaterial const *,char const *,unsigned int,unsigned int,struct vsg::t_vec3<float> &)" (?getColor@Builder@assimp@vsgXchange@@UEAA_NPEBUaiMaterial@@PEBDIIAEAU?$t_vec3@M@vsg@@@Z)

assimp_fallback.cpp.obj : error LNK2001: unresolved external symbol "public: virtual bool __cdecl vsgXchange::assimp::Builder::getColor(struct aiMaterial const *,char const *,unsigned int,unsigned int,struct vsg::t_vec3<float> &)" (?getColor@Builder@assimp@vsgXchange@@UEAA_NPEBUaiMaterial@@PEBDIIAEAU?$t_vec3@M@vsg@@@Z)

all.cpp.obj : error LNK2001: unresolved external symbol "public: virtual bool __cdecl vsgXchange::assimp::Builder::getColor(struct aiMaterial const *,char const *,unsigned int,unsigned int,struct vsg::t_vec4<float> &)" (?getColor@Builder@assimp@vsgXchange@@UEAA_NPEBUaiMaterial@@PEBDIIAEAU?$t_vec4@M@vsg@@@Z)

assimp_fallback.cpp.obj : error LNK2001: unresolved external symbol "public: virtual bool __cdecl vsgXchange::assimp::Builder::getColor(struct aiMaterial const *,char const *,unsigned int,unsigned int,struct vsg::t_vec4<float> &)" (?getColor@Builder@assimp@vsgXchange@@UEAA_NPEBUaiMaterial@@PEBDIIAEAU?$t_vec4@M@vsg@@@Z)

all.cpp.obj : error LNK2001: unresolved external symbol "public: virtual struct vsgXchange::assimp::SamplerData __cdecl vsgXchange::assimp::Builder::convertTexture(struct aiMaterial const &,int)const " (?convertTexture@Builder@assimp@vsgXchange@@UEBA?AUSamplerData@23@AEBUaiMaterial@@H@Z)

assimp_fallback.cpp.obj : error LNK2001: unresolved external symbol "public: virtual struct vsgXchange::assimp::SamplerData __cdecl vsgXchange::assimp::Builder::convertTexture(struct aiMaterial const &,int)const " (?convertTexture@Builder@assimp@vsgXchange@@UEBA?AUSamplerData@23@AEBUaiMaterial@@H@Z)

all.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl vsgXchange::assimp::Builder::processAnimations(void)" (?processAnimations@Builder@assimp@vsgXchange@@UEAAXXZ)

assimp_fallback.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl vsgXchange::assimp::Builder::processAnimations(void)" (?processAnimations@Builder@assimp@vsgXchange@@UEAAXXZ)

all.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl vsgXchange::assimp::Builder::processCameras(void)" (?processCameras@Builder@assimp@vsgXchange@@UEAAXXZ)

assimp_fallback.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl vsgXchange::assimp::Builder::processCameras(void)" (?processCameras@Builder@assimp@vsgXchange@@UEAAXXZ)

all.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl vsgXchange::assimp::Builder::processLights(void)" (?processLights@Builder@assimp@vsgXchange@@UEAAXXZ)

assimp_fallback.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl vsgXchange::assimp::Builder::processLights(void)" (?processLights@Builder@assimp@vsgXchange@@UEAAXXZ)

all.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class vsg::ref_ptr<class vsg::MatrixTransform> __cdecl vsgXchange::assimp::Builder::processCoordinateFrame(class vsg::Path const &)" (?processCoordinateFrame@Builder@assimp@vsgXchange@@UEAA?AV?$ref_ptr@VMatrixTransform@vsg@@@vsg@@AEBVPath@5@@Z)

assimp_fallback.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class vsg::ref_ptr<class vsg::MatrixTransform> __cdecl vsgXchange::assimp::Builder::processCoordinateFrame(class vsg::Path const &)" (?processCoordinateFrame@Builder@assimp@vsgXchange@@UEAA?AV?$ref_ptr@VMatrixTransform@vsg@@@vsg@@AEBVPath@5@@Z)

all.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl vsgXchange::assimp::Builder::convert(struct aiMaterial const *,class vsg::DescriptorConfigurator &)" (?convert@Builder@assimp@vsgXchange@@UEAAXPEBUaiMaterial@@AEAVDescriptorConfigurator@vsg@@@Z)

assimp_fallback.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl vsgXchange::assimp::Builder::convert(struct aiMaterial const *,class vsg::DescriptorConfigurator &)" (?convert@Builder@assimp@vsgXchange@@UEAAXPEBUaiMaterial@@AEAVDescriptorConfigurator@vsg@@@Z)

all.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class vsg::ref_ptr<class vsg::Data> __cdecl vsgXchange::assimp::Builder::createIndices(struct aiMesh const *,unsigned int,unsigned int)" (?createIndices@Builder@assimp@vsgXchange@@UEAA?AV?$ref_ptr@VData@vsg@@@vsg@@PEBUaiMesh@@II@Z)

assimp_fallback.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class vsg::ref_ptr<class vsg::Data> __cdecl vsgXchange::assimp::Builder::createIndices(struct aiMesh const *,unsigned int,unsigned int)" (?createIndices@Builder@assimp@vsgXchange@@UEAA?AV?$ref_ptr@VData@vsg@@@vsg@@PEBUaiMesh@@II@Z)

all.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl vsgXchange::assimp::Builder::convert(struct aiMesh const *,class vsg::ref_ptr<class vsg::Node> &)" (?convert@Builder@assimp@vsgXchange@@UEAAXPEBUaiMesh@@AEAV?$ref_ptr@VNode@vsg@@@vsg@@@Z)

assimp_fallback.cpp.obj : error LNK2001: unresolved external symbol "public: virtual void __cdecl vsgXchange::assimp::Builder::convert(struct aiMesh const *,class vsg::ref_ptr<class vsg::Node> &)" (?convert@Builder@assimp@vsgXchange@@UEAAXPEBUaiMesh@@AEAV?$ref_ptr@VNode@vsg@@@vsg@@@Z)

all.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class vsg::ref_ptr<class vsg::Node> __cdecl vsgXchange::assimp::Builder::visit(struct aiNode const *,int)" (?visit@Builder@assimp@vsgXchange@@UEAA?AV?$ref_ptr@VNode@vsg@@@vsg@@PEBUaiNode@@H@Z)

assimp_fallback.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class vsg::ref_ptr<class vsg::Node> __cdecl vsgXchange::assimp::Builder::visit(struct aiNode const *,int)" (?visit@Builder@assimp@vsgXchange@@UEAA?AV?$ref_ptr@VNode@vsg@@@vsg@@PEBUaiNode@@H@Z)

all.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class vsg::ref_ptr<class vsg::Node> __cdecl vsgXchange::assimp::Builder::createSceneGraph(struct aiScene const *,class vsg::ref_ptr<class vsg::Options const >,class vsg::Path const &)" (?createSceneGraph@Builder@assimp@vsgXchange@@UEAA?AV?$ref_ptr@VNode@vsg@@@vsg@@PEBUaiScene@@V?$ref_ptr@$$CBVOptions@vsg@@@5@AEBVPath@5@@Z)

assimp_fallback.cpp.obj : error LNK2001: unresolved external symbol "public: virtual class vsg::ref_ptr<class vsg::Node> __cdecl vsgXchange::assimp::Builder::createSceneGraph(struct aiScene const *,class vsg::ref_ptr<class vsg::Options const >,class vsg::Path const &)" (?createSceneGraph@Builder@assimp@vsgXchange@@UEAA?AV?$ref_ptr@VNode@vsg@@@vsg@@PEBUaiScene@@V?$ref_ptr@$$CBVOptions@vsg@@@5@AEBVPath@5@@Z)

bin\vsgXchanged.dll : fatal error LNK1120: 12 unresolved externals

@vicroms vicroms marked this pull request as draft May 14, 2026 16:59
@robertosfield
Copy link
Copy Markdown

I have added #ifdef's around the vsgXchange::assimp::Builder class and related declarations:

vsg-dev/vsgXchange@ddfcec7

I am currently working on Kubuntu so will boot up my Windows 11 system and try disabling the assimp in vsgXchange to make sure this commit resolves the issue. @xiaozhuai if you could test this commit out as well, if this testing works then I'll tag another dev release.

@robertosfield
Copy link
Copy Markdown

I have done a Windows 11 build of vsgXchange with assimp disabled and found another build error which I resolved with this commit:

vsg-dev/vsgXchange@33d8e96

@robertosfield
Copy link
Copy Markdown

My local build of vsgXchange with assimp disabled is now compiling cleanly so I've assumed it'll also work for you and gone ahead a redone the vsgXchange-v1.1.13 so it now includes all the associated fixes. Fingers crossed v1.1.13 will now work for you.

@robertosfield
Copy link
Copy Markdown

Changes I've made since vsgXchange-v.1.1.12: vsg-dev/vsgXchange@v1.1.12...v1.1.13

@xiaozhuai
Copy link
Copy Markdown
Contributor Author

@robertosfield The new v1.1.13 works. Thank you again.

@xiaozhuai xiaozhuai marked this pull request as ready for review May 15, 2026 03:30
@vicroms vicroms merged commit 758bb06 into microsoft:master May 15, 2026
16 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants