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

Error isntalling this package for saige #30

Open
akhilpampana opened this issue May 26, 2023 · 9 comments
Open

Error isntalling this package for saige #30

akhilpampana opened this issue May 26, 2023 · 9 comments

Comments

@akhilpampana
Copy link

Hello,

I am trying to install this package as part of Saige and I am getting an error like this.

Downloading https://github.com/statgen/savvy/archive/v2.1.0.tar.gz
Unexpected error: <class 'OSError'>
[Errno socket error] [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1129)
Failed to build package statgen/savvy

May I know how to rectify this error?

~Akhil

@jonathonl
Copy link
Collaborator

Are you able to run wget https://github.com/statgen/savvy/archive/v2.1.0.tar.gz without error? If not, it's probably a network or firewall issue.

If downloading with wget does work, then this is a python issue. There are various solutions to this error on the internet, but the correct solution depend on what is causing python to throw that error. I would start with trying pip install --upgrade certifi (https://stackoverflow.com/a/43855394). Another alternative is to install savvy manually and modify the configure script in SAIGE to not remove the thirdParty/cgetdirectory and to not use cget to install savvy.

@akhilpampana
Copy link
Author

Are you able to run wget https://github.com/statgen/savvy/archive/v2.1.0.tar.gz without error? If not, it's probably a network or firewall issue.

--> I could able to download the file which rules out the firewall issue

If downloading with wget does work, then this is a python issue. There are various solutions to this error on the internet, but the correct solution depend on what is causing python to throw that error. I would start with trying pip install --upgrade certifi (https://stackoverflow.com/a/43855394).

--> I tried this method still getting the issue above

Another alternative is to install savvy manually and modify the configure script in SAIGE to not remove the thirdParty/cgetdirectory and to not use cget to install savvy.

--> how do I install without savvy?

@jonathonl
Copy link
Collaborator

To install savvy without cget you can untar the the file you just downloaded and then cd savvy-2.1.0/. From the savvy-2.1.0 directory, run cmake -P cmake/get-dependencies.cmake /path/to/SAIGE where /path/to/SAIGE is the directory path of the SAIGE clone from github. Then in /path/to/SAIGE/configure, comment out the 3 lines at https://github.com/weizhouUMICH/SAIGE/blob/master/configure#L20-L22 to prevent SAIGE from deleting the cget directory during the SAIGE install.

@jonathonl
Copy link
Collaborator

You may need to run export CFLAGS="-fPIC" before running the steps above.

@akhilpampana
Copy link
Author

Thank you so much. I will try and get back to you if any more questions.

@akhilpampana
Copy link
Author

Hello, I tried as suggested and now I am getting error like this:

VCF.cpp:4:10: fatal error: savvy/reader.hpp: No such file or directory
    4 | #include "savvy/reader.hpp"
      |          ^~~~~~~~~~~~~~~~~~
compilation terminated.
make: *** [VCF.o] Error 1
ERROR: compilation failed for package 'SAIGE'

Any idea how to resolve it?

@jonathonl
Copy link
Collaborator

SAIGE looks for includes at https://github.com/weizhouUMICH/SAIGE/blob/master/src/Makevars#L14 relative to the directory where Makevars is found in. So /path/to/SAIGE in the instructions above should be /path/to/SAIGE/thirdParty/cget. You will also need to copy the Savvy includes to where SAIGE is looking for inlucdes: cp -r /path/to/savvy/include/savvy /path/to/SAIGE/thirdParty/cget/include/savvy. Ultimately, Savvy and all of it's dependencies need to be installed in the path where SAIGE looks for its dependencies.

@jingydz
Copy link

jingydz commented Jun 1, 2023

I also used the way you said, but I also couldn't install successfully, did anyone experience the same problem?

Logfile

Waf: The wscript in '/xxx/software/SAIGE/SAIGE/thirdParty/bgen' is unreadable
Traceback (most recent call last):
File "/xxx/software/SAIGE/SAIGE/thirdParty/bgen/.waf3-2.0.6-f8aee10f7730da942389d88501d489e8/waflib/Scripting.py", line 101, in waf_entry_point
set_main_module(os.path.normpath(os.path.join(Context.run_dir,Context.WSCRIPT_FILE)))
File "/xxx/software/SAIGE/SAIGE/thirdParty/bgen/.waf3-2.0.6-f8aee10f7730da942389d88501d489e8/waflib/Scripting.py", line 141, in set_main_module
Context.g_module=Context.load_module(file_path)
File "/xxx/software/SAIGE/SAIGE/thirdParty/bgen/.waf3-2.0.6-f8aee10f7730da942389d88501d489e8/waflib/Context.py", line 360, in load_module
exec(compile(code,path,'exec'),module.dict)
File "/xxx/software/SAIGE/SAIGE/thirdParty/bgen/wscript", line 33
print "Creating %s build..." % bld.options.mode
^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print("Creating %s build..." % bld.options.mode)?

@jonathonl
Copy link
Collaborator

@jingydz, these error messages are not related to Savvy. Potentially a read permission issue when installing the bgen dependency.

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

3 participants