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

SEAL can be found only for x86 on aarch64 #242

Open
skriesch opened this issue Jul 2, 2024 · 2 comments
Open

SEAL can be found only for x86 on aarch64 #242

skriesch opened this issue Jul 2, 2024 · 2 comments
Labels

Comments

@skriesch
Copy link

skriesch commented Jul 2, 2024

Description
If you want to install with "pip install ." on an Raspberry Pi 4 (aarch64), you are receiving the following error message:

aarch64-linux-gnu-gcc -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -I/usr/include/python3.11 -I/home/skriesch/homomorphic/lib/python3.11/site-packages/numpy/_core/include -IPyfhel -IPyfhel/Afhel -IPyfhel/SEAL/SEAL/seal -I/home/skriesch/homomorphic/include -I/usr/include/python3.11 -c Pyfhel/Afhel/Afseal.cpp -o build/temp.linux-aarch64-cpython-311/Pyfhel/Afhel/Afseal.o -std=c++17 -O3 -DHAVE_CONFIG_H
      In file included from Pyfhel/Afhel/../SEAL/SEAL/seal/defines.h:68,
                       from Pyfhel/Afhel/../SEAL/SEAL/seal/bigpoly.h:8,
                       from Pyfhel/Afhel/../SEAL/SEAL/seal/seal.h:3,
                       from Pyfhel/Afhel/Afseal.h:41,
                       from Pyfhel/Afhel/Afseal.cpp:37:
      Pyfhel/Afhel/../SEAL/SEAL/seal/gcc.h:20:10: fatal error: x86intrin.h: No such file or directory
         20 | #include <x86intrin.h>
            |          ^~~~~~~~~~~~~
      compilation terminated.

Code To Reproduce Error

  1. Clone the repo
  2. Set the Python environment
  3. Enter "pip install ."
  4. SEAL can not be built for aarch64

Expected behavior
SEAL will be built

Workaround
Clone the MS SEAL Project and build for aarch64

Setup:

  • OS: Raspberry OS
  • Python: 3.11.2-1+b1 (arm64)
  • C compiler version: gcc 4:12.2.0-3 (arm64)
  • Pyfhel Version: master
@skriesch skriesch added the bug label Jul 2, 2024
@skriesch
Copy link
Author

I want to suggest a more maintainable solution of dependencies (like SEAL). Other projects are using makefiles with the feature to fetch special versions. Then you don't need "git clone" in your repository. Here is such an example for SEAL:
https://github.com/OpenMined/TenSEAL/blob/main/cmake/seal.cmake

Is that a possible solution for you as a replacement of the old SEAL version from 2 years ago?

@ibarrond
Copy link
Owner

@skriesch I'll take a look!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants