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

gmp-compat-test no longer works in GitHub actions or in Docker #61

Open
creachadair opened this issue Jan 25, 2025 · 2 comments
Open

gmp-compat-test no longer works in GitHub actions or in Docker #61

creachadair opened this issue Jan 25, 2025 · 2 comments
Labels
bug testing Issues with building and running of tests, or their absence

Comments

@creachadair
Copy link
Owner

creachadair commented Jan 25, 2025

I have not had occasion to run the gmp-compat-test suite in GitHub Actions for a while, and they now no longer work properly when run there. When run, either in a local Docker container or in the Actions worker, the test runner fails in make check with this error:

./genpytest.py > wrappers.py                                                                                                           
./gendata.py > random.tests                                        
./runtest -p 100000 random.tests               
Traceback (most recent call last):                       
  File "/imath/tests/gmp-compat-test/runtest.py", line 115, in <module>
    gmp_test_so = ctypes.cdll.LoadLibrary("gmp_test.so")           
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                               
  File "/usr/lib/python3.12/ctypes/__init__.py", line 460, in LoadLibrary
    return self._dlltype(name)                 
           ^^^^^^^^^^^^^^^^^^^                                     
  File "/usr/lib/python3.12/ctypes/__init__.py", line 379, in __init__
    self._handle = _dlopen(self._name, mode)                                                                                           
                   ^^^^^^^^^^^^^^^^^^^^^^^^^         
OSError: Error relocating ./gmp_test.so: __gmpz_set_si: symbol not found

I thought at first this was a simple link order issue, but that alone was not sufficient to fix it. I thought it might also be an arm64/amd64 issue, but I tried a couple variations of platform and all seem to have the same symptoms in this environment.

For now I've disabled make check in CI, but I should probably figure this out. I'm sure there's some long painful way in which I'm holding it wrong.

@creachadair creachadair added bug testing Issues with building and running of tests, or their absence labels Jan 25, 2025
@creachadair
Copy link
Owner Author

See also #60, which fixes this problem for GitHub Actions.

@creachadair
Copy link
Owner Author

It appears the issue is specific to GCC, and that building with clang avoids the problem.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug testing Issues with building and running of tests, or their absence
Projects
None yet
Development

No branches or pull requests

1 participant