[Solved] Build Error on Ubuntu Linux

My OS: Ubuntu 19.10.

I think it is a linking error:

/opt/lib/xr-openxr-sdk/lib/libopenxr_loader.a(filesystem_utils.cpp.o):filesystem_utils.cpp:function FileSysUtilsGetCurrentPath(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&): error: undefined reference to 'std::experimental::filesystem::v1::current_path[abi:cxx11]()' /opt/lib/xr-openxr-sdk/lib/libopenxr_loader.a(filesystem_utils.cpp.o):filesystem_utils.cpp:function FileSysUtilsIsAbsolutePath(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&): error: undefined reference to 'std::experimental::filesystem::v1::__cxx11::path::_M_split_cmpts()' /opt/lib/xr-openxr-sdk/lib/libopenxr_loader.a(filesystem_utils.cpp.o):filesystem_utils.cpp:function FileSysUtilsIsAbsolutePath(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&): error: undefined reference to 'std::experimental::filesystem::v1::__cxx11::path::has_root_directory() const' /opt/lib/xr-openxr-sdk/lib/libopenxr_loader.a(filesystem_utils.cpp.o):filesystem_utils.cpp:function FileSysUtilsIsRegularFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&): error: undefined reference to 'std::experimental::filesystem::v1::__cxx11::path::_M_split_cmpts()' /opt/lib/xr-openxr-sdk/lib/libopenxr_loader.a(filesystem_utils.cpp.o):filesystem_utils.cpp:function FileSysUtilsIsRegularFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&): error: undefined reference to 'std::experimental::filesystem::v1::status(std::experimental::filesystem::v1::__cxx11::path const&)' /opt/lib/xr-openxr-sdk/lib/libopenxr_loader.a(filesystem_utils.cpp.o):filesystem_utils.cpp:function FileSysUtilsIsDirectory(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&): error: undefined reference to 'std::experimental::filesystem::v1::__cxx11::path::_M_split_cmpts()' /opt/lib/xr-openxr-sdk/lib/libopenxr_loader.a(filesystem_utils.cpp.o):filesystem_utils.cpp:function FileSysUtilsIsDirectory(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&): error: undefined reference to 'std::experimental::filesystem::v1::status(std::experimental::filesystem::v1::__cxx11::path const&)' /opt/lib/xr-openxr-sdk/lib/libopenxr_loader.a(filesystem_utils.cpp.o):filesystem_utils.cpp:function FileSysUtilsPathExists(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&): error: undefined reference to 'std::experimental::filesystem::v1::__cxx11::path::_M_split_cmpts()' /opt/lib/xr-openxr-sdk/lib/libopenxr_loader.a(filesystem_utils.cpp.o):filesystem_utils.cpp:function FileSysUtilsPathExists(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&): error: undefined reference to 'std::experimental::filesystem::v1::status(std::experimental::filesystem::v1::__cxx11::path const&)' /opt/lib/xr-openxr-sdk/lib/libopenxr_loader.a(filesystem_utils.cpp.o):filesystem_utils.cpp:function FileSysUtilsGetParentPath(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&): error: undefined reference to 'std::experimental::filesystem::v1::__cxx11::path::parent_path() const' /opt/lib/xr-openxr-sdk/lib/libopenxr_loader.a(filesystem_utils.cpp.o):filesystem_utils.cpp:function FileSysUtilsGetAbsolutePath(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&): error: undefined reference to 'std::experimental::filesystem::v1::current_path[abi:cxx11]()' /opt/lib/xr-openxr-sdk/lib/libopenxr_loader.a(filesystem_utils.cpp.o):filesystem_utils.cpp:function FileSysUtilsGetAbsolutePath(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&): error: undefined reference to 'std::experimental::filesystem::v1::absolute(std::experimental::filesystem::v1::__cxx11::path const&, std::experimental::filesystem::v1::__cxx11::path const&)' /opt/lib/xr-openxr-sdk/lib/libopenxr_loader.a(filesystem_utils.cpp.o):filesystem_utils.cpp:function FileSysUtilsFindFilesInPath(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&): error: undefined reference to 'std::experimental::filesystem::v1::__cxx11::directory_iterator::directory_iterator(std::experimental::filesystem::v1::__cxx11::path const&, std::experimental::filesystem::v1::directory_options, std::error_code*)' /opt/lib/xr-openxr-sdk/lib/libopenxr_loader.a(filesystem_utils.cpp.o):filesystem_utils.cpp:function FileSysUtilsFindFilesInPath(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&): error: undefined reference to 'std::experimental::filesystem::v1::__cxx11::directory_iterator::operator*() const' /opt/lib/xr-openxr-sdk/lib/libopenxr_loader.a(filesystem_utils.cpp.o):filesystem_utils.cpp:function FileSysUtilsFindFilesInPath(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&): error: undefined reference to 'std::experimental::filesystem::v1::__cxx11::directory_iterator::operator++()' collect2: error: ld returned 1 exit status ninja: build stopped: subcommand failed. make: *** [GNUmakefile:315: all] Error 1

I updated libraries, then did a fresh build but the error still persist.
Any help would be appreciated, Thank you.

Cheers

Have exact same issue here… Using install8deps.sh script to build the libs, what are you using?

@mont29, probably you need to add DISABLE_STD_FILESYSTEM.
https://developer.blender.org/rBba3d49225c9ff3514fb87ae5d692baefe5edec30

yes indeed, just pushed the fix, so everything should be fine now. Works for me © at least :wink:

that solved the the issue, Thank you guys.