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

[HELICS] update to v3.6.0 #9967

Merged
merged 4 commits into from
Dec 27, 2024
Merged

Conversation

HELICS-bot
Copy link
Contributor

Update to the HELICS 3.6.0 release

@nightlark
Copy link
Contributor

Going to look into the build errors. I suspect all of them are either going to need to use a newer version of CMake, and potentially bump up the minimum version of some other build dependencies (+ minium of c++17).

@imciner2 imciner2 closed this Dec 27, 2024
@imciner2 imciner2 reopened this Dec 27, 2024
@imciner2
Copy link
Member

The RISC-V failure here seems to be related to not linking atomics properly. Based on this other issue advancedtelematic/aktualizr#1427, it seems this can be solved by adding a linking statement to libatomic, or also it may be fixed in a newer GCC version, but that isn't as clear.

@giordano
Copy link
Member

For future reference, errors are

[16:32:59] FederateState.cpp:(.text+0x90e): undefined reference to `__atomic_compare_exchange_1'
[16:32:59] /opt/riscv64-linux-gnu/bin/../lib/gcc/riscv64-linux-gnu/12.1.0/../../../../riscv64-linux-gnu/bin/ld: ../../../lib/libhelics_core.a(FederateState.cpp.o):FederateState.cpp:(.text+0x94c): more undefined references to `__atomic_compare_exchange_1' follow
[16:32:59] /opt/riscv64-linux-gnu/bin/../lib/gcc/riscv64-linux-gnu/12.1.0/../../../../riscv64-linux-gnu/bin/ld: ../../../lib/libhelics_core.a(FederateState.cpp.o): in function `.L0 ':
[16:32:59] FederateState.cpp:(.text+0x469a): undefined reference to `__atomic_fetch_or_2'
[16:32:59] /opt/riscv64-linux-gnu/bin/../lib/gcc/riscv64-linux-gnu/12.1.0/../../../../riscv64-linux-gnu/bin/ld: ../../../lib/libhelics_core.a(FederateState.cpp.o): in function `.L3080':
[16:32:59] FederateState.cpp:(.text+0x47aa): undefined reference to `__atomic_fetch_and_2'
[16:32:59] /opt/riscv64-linux-gnu/bin/../lib/gcc/riscv64-linux-gnu/12.1.0/../../../../riscv64-linux-gnu/bin/ld: ../../../lib/libhelics_core.a(FederateState.cpp.o): in function `.L0 ':

@nightlark
Copy link
Contributor

In addition to __atomic_compare_exchange_1, __atomic_fetch_or_2, and __atomic_fetch_and_2, there are also undefined references to __atomic_compare_exchange_2, __atomic_fetch_add_2, and __atomic_fetch_sub_2. For the next HELICS release I'll try to get a check added that makes sure these atomic functions used are available, but I guess for this release a patch/workaround will be needed for the the julia packaging.

@imciner2 imciner2 merged commit 7fc70e7 into JuliaPackaging:master Dec 27, 2024
35 checks passed
@imciner2
Copy link
Member

Looks good. Thanks for making the patch.

@nightlark nightlark deleted the helics-3.6.0 branch December 27, 2024 20:46
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

Successfully merging this pull request may close these issues.

4 participants