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

Unable to compile #5

Open
TenzinCHW opened this issue Oct 3, 2020 · 6 comments
Open

Unable to compile #5

TenzinCHW opened this issue Oct 3, 2020 · 6 comments

Comments

@TenzinCHW
Copy link

TenzinCHW commented Oct 3, 2020

I am on Ubuntu 18.04.3, running gcc 7.5.0 and used JUCE 6.0.1.

I am up to compiling the project using make but there seems to have been an error during compilation.

The first error is

../../Source/AudioIOComponent.h:128:65: error: ‘nonexistent’ is not a member of ‘juce::File’
     FileChooser chooser ("Select a Wave file to play...", File::nonexistent, "*.wav");

and the second is

../../Source/AudioIOComponent.h:206:74: error: no matching function for call to ‘juce::ScopedPointer<juce::FileOutputStream>::ScopedPointer(std::unique_ptr<juce::FileOutputStream>)’
     ScopedPointer<FileOutputStream> fileStream (file.createOutputStream());

I've tried to use an older version of JUCE (5.4.4) to generate the build files but to no avail.

Would appreciate any help.

@TenzinCHW
Copy link
Author

I realised it was built with JUCE 5.3.2 so I tried that too but it doesn't work. After checking the git history of the file causing the error, I found that those lines have been there since the creation of the file AudioIOComponent.h.

Think it might be an Ubuntu problem. Will try with an older version of Ubuntu.

@TenzinCHW
Copy link
Author

Okay got it working with JUCE 6.0.1.

nonexistent is deprecated so should just change it to File().

ScopedPointer is also deprecated so should change it to unique_ptr.

There's also the change in Utils.h from the other issue which fixes finding omni.sofa and directional.sofa.

I also found that libmysofa offered a mysofa_open_no_norm function which I just plopped into DirectivityHandler.h since that was causing some problems too.

Hopefully I'll find some time to make a pull request.

@yipinghan
Copy link

Can you make a demo successfully by using this projects?

@TenzinCHW
Copy link
Author

Hi yes. I have created a gist to install everything here. You may need to change the path name for data_dir for all three files because I created these scripts for a live USB usage (have to install every time it reboots).

Unzip and then run bash initial_setup.sh and then install_linux.sh. You also will have to set up Juce files when Projucer pops up by clicking File > Open and then choosing the EvertSE.jucer from the Evertims/auralization_engine_evertims in the data_dir that you specified and finally saving project with Ctrl+P.

You'll be able to find the auralization engine in the folder $data_dir/Evertims/aureng/build and Evertims in $data_dir/Evertims/evertims.

To start it in Blender, you'll need to get the Blender addon and import it into Blender 2.79 and specify the auralization engine binary path (see above) and evertims binary and mat file (in the evertims folder).

I have made some fixes for Blender 2.80+ but the sample scene is wonky.

@ramagottfried
Copy link

same File::nonexistent errors here, with Projucer v7.0.5 on mac os

@TenzinCHW
Copy link
Author

TenzinCHW commented Oct 7, 2023

Sorry I've stopped any work on this as it was just for a friend's master's project which has since been completed. Though this is quite interesting and I might pick the auralization engine project up some time in the future.

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