Skip to content

The VecAddCS sample doesn't compile #1

@yottaawesome

Description

@yottaawesome

Hi,

FYI, the book's VecAddCS sample doesn't compile due to common files missing from inclusion in the project, leading to undefined symbol errors at build time. Build output is below.

1>  Generating Code...
1>     Creating library E:\Code\Test\d3d12book_2ed\Demos\C13_VecAddCS\..\..\bin\VecAddCS_debug64.lib and object E:\Code\Test\d3d12book_2ed\Demos\C13_VecAddCS\..\..\bin\VecAddCS_debug64.exp
1>d3dUtil.obj : error LNK2019: unresolved external symbol "public: bool __cdecl M3DLoader::LoadM3d(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class std::vector<struct M3DLoader::Vertex,class std::allocator<struct M3DLoader::Vertex> > &,class std::vector<unsigned int,class std::allocator<unsigned int> > &,class std::vector<struct M3DLoader::Subset,class std::allocator<struct M3DLoader::Subset> > &,class std::vector<struct M3DLoader::M3dMaterial,class std::allocator<struct M3DLoader::M3dMaterial> > &)" (?LoadM3d@M3DLoader@@QEAA_NAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEAV?$vector@UVertex@M3DLoader@@V?$allocator@UVertex@M3DLoader@@@std@@@3@AEAV?$vector@IV?$allocator@I@std@@@3@AEAV?$vector@USubset@M3DLoader@@V?$allocator@USubset@M3DLoader@@@std@@@3@AEAV?$vector@UM3dMaterial@M3DLoader@@V?$allocator@UM3dMaterial@M3DLoader@@@std@@@3@@Z) referenced in function "public: static class std::unique_ptr<struct MeshGeometry,struct std::default_delete<struct MeshGeometry> > __cdecl d3dUtil::LoadSimpleModelGeometry(struct ID3D12Device *,class DirectX::ResourceUploadBatch &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,bool)" (?LoadSimpleModelGeometry@d3dUtil@@SA?AV?$unique_ptr@UMeshGeometry@@U?$default_delete@UMeshGeometry@@@std@@@std@@PEAUID3D12Device@@AEAVResourceUploadBatch@DirectX@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@3@2_N@Z)
1>E:\Code\Test\d3d12book_2ed\Demos\C13_VecAddCS\..\..\bin\VecAddCS_debug64.exe : fatal error LNK1120: 1 unresolved externals
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
========== Build completed at 3:35 PM and took 48.845 seconds ==========

Including the common files LoadM3d.h, LoadM3d.cpp, SkinnedData.h, and SkinnedData.cpp in the project resolves the issue.

Regards,
Vasilios

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions