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

Include issues when attempting to compile on Raspbian. #133

Open
glfejer opened this issue Jul 23, 2020 · 3 comments
Open

Include issues when attempting to compile on Raspbian. #133

glfejer opened this issue Jul 23, 2020 · 3 comments
Assignees

Comments

@glfejer
Copy link

glfejer commented Jul 23, 2020

I got errors from the compiler saying that the AMCL include files could not be found.
I built and installed the AMCL, but there were no amcl/big_256_28.h files anywhere on my system... but they were under amcl/include/big_256_28.h.
There were a number of files like that -- all under /opt/amcl/include

To get it to compile, I changed all of the source files to add the /include path.
I also had to add an include directory in the CMakeLists.txt file.

I'm not certain that I did the correct thing, but it seemed to work.

I checked it in under fej/rpi-compile

I had similar issues when compiling under a clean debian VM.

@drbild
Copy link
Contributor

drbild commented Jul 24, 2020

When compiling AMCL, you need to specify ACML_INCLUDE_SUBDIR=amcl:

cmake .. -DAMCL_INCLUDE_SUBDIR=acml [-D<...>]

This is because AMCL (originally) installed it's headers directly in include, not include/amcl. This is wrong, but when I rewrote the CMake, I couldn't change that behavior as the default without breaking existing non-Xaptum users. So you have to specify that option to get the correct behavior. See the debian/stretch branch here for the CMake options we use when building for Debian.

With /opt/amcl/include in your include_directories(...), then the existing #include "amcl/<header>.h" lines work fine. The headers will be installed under /opt/amcl/include/amcl/<header>.h

@drbild
Copy link
Contributor

drbild commented Jul 24, 2020

My second question, why install ACML in /opt/amcl rather than in the usual /usr or /usr/local? Is that a Raspbian convention?

If you install in /usr, then ecdaa should build fine.

@zanebeckwith
Copy link
Collaborator

Agreed with drbild's responses above.

Also, another place for guidance on building required libraries for this project is in the .travis directory, if that helps

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