ammarhakim / gkyl

This is the main source repo for the Gkeyll 2.0 code. Please see gkeyll.rtfd.io for details.
https://gkeyll.readthedocs.io/en/latest/
54 stars 14 forks source link

Pre-g0: build-adios fails due to change from http to https/improper SSL cert. #173

Open skylord-a52 opened 3 months ago

skylord-a52 commented 3 months ago

(Okay, I promise this issue isn't me missing a note or having a corrupted compiler this time. I know because I was able to work around it.)

The following error concerns the pre-g0 branch.

When attempting to fetch ADIOS 1.13.1 during mkdeps, curl instead fetches an html error file. gunzip of course has trouble interpreting this, and the build of ADIOS halts.

gzip: adios-1.13.1.tar.gz: not in gzip format
tar: adios-1.13.1.tar: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now
./build-adios.sh: line 14: cd: adios-1.13.1: No such file or directory
./build-adios.sh: line 15: ./configure: No such file or directory
make: *** No rule to make target 'install'.  Stop.

This is because the current url used to fetch ADIOS 1 is has broken SSL certs. (See line 11 of build-adios.sh)

curl -L https://users.nccs.gov/~pnorbert/adios-1.13.1.tar.gz > adios-1.13.1.tar.gz

It can be downloaded manually through the browser by changing "http" to "https". However, that's not enough to satisfy curl though, which still raises an error if you change the url.

curl: (60) SSL certificate problem: unable to get local issuer certificate
More details here: https://curl.se/docs/sslcerts.html

curl failed to verify the legitimacy of the server and therefore could not
establish a secure connection to it. To learn more about this situation and
how to fix it, please visit the web page mentioned above.

This could probably be fixed by linking to a different mirror of ADIOS, or changing the security requirements on curl. It would likely be a relatively simple fix, just not one I'm experienced enough in net security to do myself.

Workaround:

JunoRavin commented 3 months ago

Thank you for documenting this issue. Your workaround is exactly what we were doing prior to the upgrade to ADIOS2 (see this commit: https://github.com/ammarhakim/gkyl/commit/4d1a4d0190d6433dfbb75e983a805f5666a8a053)

I would like to leave this issue open documenting how folks running the pre-g0 build can still get ADIOS1 for running fluid calculations through gkyl (or G2 as we call it within the group) and then I will close this issue once the Lua C wrappers for the fluid solver are complete and every part of the code is utilizing ADIOS2.

cwsmith commented 2 months ago

It appears that success with the 'https' url is sensitive to the version of curl used. On the purdue anvil system curl 7.61.1 does not complain but another machine with curl 8.6.0 fails with the ssl certificate error.