Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feasible to remove VISR dependency? #12

Open
trevorknight opened this issue Nov 14, 2023 · 5 comments
Open

Feasible to remove VISR dependency? #12

trevorknight opened this issue Nov 14, 2023 · 5 comments

Comments

@trevorknight
Copy link

trevorknight commented Nov 14, 2023

It seems the VISR project is abandoned and the "0.13" release that this project, BEAR, is using has never made it into the VISR releases.

Furthermore, it seems the 0.13 build needs to be patched in several ways to get it to work:

  • pybind11 needs to be updated in order to avoid an error (invalid use of incomplete type 'PyFrameObject')
  • Several files need to be edited to add <cstdint>

Any chance of removing this dependency?

@tomjnixon
Copy link
Member

Hi,

You're right, and it's an unfortunate situation that happened because of things outside of our control.

I'll try to address those issues -- thanks for pointing them out.

As for removing it, I agree with the idea (if only to reduce the build complexity -- technically it is sound), but it's a massive job, and one that I can't commit to. I've had interest in doing this from other users, so it might happen, but there's no timeline.

It might be worth us thinking about keeping it mostly as-is, but embedding it more closely into this project and stripping out the bits we don't use, so that users don't have to think about it. I think that would solve most of the issues, with less work.

@myayks
Copy link

myayks commented Nov 16, 2023

@trevorknight, @tomjnixon can you provide more information on exactly what needs to be changed to build VISR dependency? I am a bit struggling with it and can't proceed with building native BEAR (Arm mac)

@tomjnixon
Copy link
Member

Any information that either of you has on this (errors etc.) would be helpful.

I know about the pybind11 update (this can be disabled by setting BUILD_PYTHON_BINDINGS to off when building visr if you don't need it) and headers in test_variable_block_size, and will get those fixed soon, but i have limited visibility into the issues you're having.

In general I will only see (and therefore fix) errors that occur in the EPS build (which is currently fine on windows+mac+linux) and the nix/CI build (linux only).

@trevorknight
Copy link
Author

I have only tried building on Linux with gcc 13.

For the pybind issue, the solution we found was to replace it with the latest version:

$ unzip visr-0.13.0-pre-5e13f020.zip
$ cd rd-audio-visr-public-master/3rd
$ rm -rf pybind11
$ git clone https://github.com/pybind/pybind11

For the other issue, see "Header dependency changes" on this page, Porting to GCC 13.

I added #include <cstdint> as needed, for errors like, "uint64_t does not name a type". Without much careful analysis, I added it to:

  • src/libvisr/detail/compile_time_hash_fnv1.hpp
  • src/libefl/vector_functions.cpp
  • src/libefl/reference/vector_functions_imp.hpp

@tomjnixon
Copy link
Member

Thanks, GCC13 was the key piece of information. I'll get this updated on Monday.

tomjnixon added a commit that referenced this issue Nov 21, 2023
- switch to branch in BEAR repository rather than a zip
- misc updates from 0.13 branch
- update pybind11 to 2.11.1 (see #12)
- fix missing includes (see #12)
- switch to C++14 for new versions of boost
tomjnixon added a commit that referenced this issue Nov 21, 2023
- switch to branch in BEAR repository rather than a zip
- misc updates from 0.13 branch
- update pybind11 to 2.11.1 (see #12)
- fix missing includes (see #12)
- switch to C++14 for new versions of boost
tomjnixon added a commit that referenced this issue Nov 21, 2023
- switch to branch in BEAR repository rather than a zip
- misc updates from 0.13 branch
- update pybind11 to 2.11.1 (see #12)
- fix missing includes (see #12)
- switch to C++14 for new versions of boost
- fix ffts build for clang on linux
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

No branches or pull requests

3 participants