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

Using a Cilk compiler #262

Open
blonded04 opened this issue Aug 14, 2024 · 6 comments
Open

Using a Cilk compiler #262

blonded04 opened this issue Aug 14, 2024 · 6 comments

Comments

@blonded04
Copy link

blonded04 commented Aug 14, 2024

Hello, I can't get to build OpenCilk hello-world program and keep getting same error messages on ARM64 Redhat Linux that don't seem to happen to anybody on the internet before me:

/opt/user/opencilk/bin/clang++: /lib64/libtinfo.so.6: no version information available (required by /opt/user/opencilk/bin/clang++)
/opt/user/opencilk/bin/clang++: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.30' not found (required by /opt/user/opencilk/bin/clang++)

Can you please help me fix them?

@neboat
Copy link
Collaborator

neboat commented Aug 15, 2024

I need to know more about how you setup OpenCilk on your system to suggest a fix.

To start, are you using the precompiled binaries for OpenCilk, or are you building OpenCilk from source?

@blonded04
Copy link
Author

I need to know more about how you setup OpenCilk on your system to suggest a fix.

To start, are you using the precompiled binaries for OpenCilk, or are you building OpenCilk from source?

I'm using precompiled OpenCilk and I have it in /opt/user/opencilk

@neboat
Copy link
Collaborator

neboat commented Aug 16, 2024

Thanks for the clarification.

Because you're running on RedHat, you will need to build OpenCilk from source. The precompiled OpenCilk binaries are built for Ubuntu. Unfortunately, Ubuntu and RedHat differ in their shared libraries, and those differences lead to problems like what you're seeing.

Can you please try building OpenCilk from source? These quick-start instructions should do the trick: https://www.opencilk.org/doc/users-guide/build-opencilk-from-source/#quick-start. After building OpenCilk from source, if you would like to install OpenCilk into a particular directory, you can follow these instructions as well: https://www.opencilk.org/doc/users-guide/build-opencilk-from-source/#optional:-installing-opencilk.

Please let us know whether this works for you or if you run into any issues.

@blonded04
Copy link
Author

Thank you, I'll try building OpenCilk from source and return to you after

@blonded04
Copy link
Author

Thanks for the clarification.

Because you're running on RedHat, you will need to build OpenCilk from source. The precompiled OpenCilk binaries are built for Ubuntu. Unfortunately, Ubuntu and RedHat differ in their shared libraries, and those differences lead to problems like what you're seeing.

Can you please try building OpenCilk from source? These quick-start instructions should do the trick: https://www.opencilk.org/doc/users-guide/build-opencilk-from-source/#quick-start. After building OpenCilk from source, if you would like to install OpenCilk into a particular directory, you can follow these instructions as well: https://www.opencilk.org/doc/users-guide/build-opencilk-from-source/#optional:-installing-opencilk.

Please let us know whether this works for you or if you run into any issues.

I followed steps from the tutorial, and got the following message on the last step (infrastructure/tools/build $(pwd)/opencilk $(pwd)/build), however my Redhat 11.4 Arm64 clearly has 8-byte pointers:

CMake Error at /home/vmatskev/opencilk/cheetah/cmake/config-ix.cmake:89 (message):
  Please use architecture with 4 or 8 byte pointers.
Call Stack (most recent call first):
  /home/vmatskev/opencilk/cheetah/CMakeLists.txt:146 (include)

I googled a little bit and it turned out that I should use v2.1-rc1+ instead of v2.1, but, sadly, after trying to build v2.1-rc2 I keep getting this message :(

@neboat
Copy link
Collaborator

neboat commented Aug 16, 2024

You should not need to switch to v2.1-rc2. I recommend sticking with v2.1.

This error is usually caused by some other problem with your system's setup. CMake itself sets the value of CMAKE_SIZEOF_VOID_P when it checks the system compiler.

Can you send me the output of the following two commands on your system?

$ cc --version
$ c++ --version

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

2 participants