Question about building strand-cam

36 views
Skip to first unread message

Annika Rings

unread,
Mar 3, 2022, 5:42:31 AM3/3/22
to multi-camera software from the Straw Lab
Dear Andrew,

I'm trying to build strand-cam (on Mac OS 10.14.6) from the instructions of the Readme in the strand-cam folder as follows:

cargo build --features "serve_files backend_pyloncxx with_camtrig flydratrax" 

I'm getting this error:

error: You are attempting to compile without a required feature flag being used. You must use one of either `2017`, `2018`, `2019`

  --> /Users/annika/.cargo/registry/src/github.com-1ecc6299db9ec823/ipp-headers-sys-0.4.3/src/lib.rs:37:1

   |

37 | / compile_error!("You are attempting to compile without a required feature flag \

38 | |     being used. You must use one of either `2017`, `2018`, `2019`");

   | |___________________________________________________________________^


error: could not compile `ipp-headers-sys` due to previous error

warning: build failed, waiting for other jobs to finish...

error: build failed

Which I understood to be related to not supplying a version feature. I therefore modified the Cargo.toml file to include this feature in this line:

ipp-sys = {version="0.4.4", optional=true, features=["2019"]}


But still getting the same error.


Do you have any advice?

Sorry for my ignorance, I'm very new to using your software.


Thanks.

Annika

Andrew Straw

unread,
May 14, 2022, 8:34:12 AM5/14/22
to multi-camera software from the Straw Lab
Dear Annika,

Please pardon my late reply -- somehow this message escaped my notice until just now.

Overall, my best recommendation is to check the .gitlab-ci.yml file for examples of how this is compiled by our continuous integration (CI) server. This is how the releases are built. I also have a few .sh and .bat scripts sprinkled around which I often use for building but sometimes they get outdated whereas I get notified immediately and I consider it an urgent problem if the .gitlab-ci.yml file does not result in an error-free build.

The specific error you are hitting is from the ipp-headers-sys crate. All of these ipp-* crates are somewhat annoying because they depend on the Intel IPP libraries as an dependency inherited from days long past. I would like to replace these as a dependency and have some progress on that with the imops crate but this is not complete yet and is slow going on my side. Typically you wouldn't need to change the Cargo.toml file but at the command line add something like "--features ipp-sys/2019". For this to work, though, you would need to have Intel IPP from 2019 installed and source the scripts to set environment variables that were included with IPP.

I hope you got further and if you still have questions, please feel free to reply back here. I'll keep a closer eye on this.

Reply all
Reply to author
Forward
0 new messages