thepanlab / Sipros4

Sipros for stable isotopic mass spectrum meta proteomic
MIT License
7 stars 1 forks source link

bioconda recipe #1

Open bernt-matthias opened 2 months ago

bernt-matthias commented 2 months ago

Would it be possible to create a conda recipe (eg. at bioconda) for Sipros4? I could help if you like.

I tried to compile Sipros4 on my own and found a few problems:

Building siprosEnsembleCmake fails with:

/usr/bin/ld: attempted static link of dynamic object `/usr/lib/gcc/x86_64-linux-gnu/11/libstdc++.so'
/usr/bin/ld: attempted static link of dynamic object `/lib/x86_64-linux-gnu/libm.so.6'
/usr/bin/ld: attempted static link of dynamic object `/lib/x86_64-linux-gnu/libmvec.so.1'
/usr/bin/ld: attempted static link of dynamic object `/lib/x86_64-linux-gnu/libc.so.6'
/usr/bin/ld: attempted static link of dynamic object `/lib64/ld-linux-x86-64.so.2'
collect2: error: ld returned 1 exit status
make[2]: *** [openmp/CMakeFiles/SiprosEnsembleOMP.dir/build.make:292: bin/SiprosEnsembleOMP] Error 1
make[1]: *** [CMakeFiles/Makefile2:160: openmp/CMakeFiles/SiprosEnsembleOMP.dir/all] Error 2

I was wondering if you can/should remove all 3rd party software from your repo and use it from conda. That is, everything in here (e.g. zlib, sqlite, etc). I guess also license wise it would be a good idea (e.g. most of these these packages require you to ship their license which you currently do not do).

xyz1396 commented 2 months ago

Thanks for your interest on our Sipros. The compile script in this repos is tested in the wsl ubuntu 22.04 environment on windows. May I know what your compiling environment is? I am also working on conda recipe. I have made the script for compiling it in conda envrionment. I can make a branch for the conda version. zlib and sqlite are included from mstoolkit for reading the mzml file. I can make a license file for them.

bernt-matthias commented 2 months ago

FYI https://github.com/bioconda/bioconda-recipes/pull/50631 (so far I tried to use the binaries. having it compiled would be better)

May I know what your compiling environment is?

Ubuntu 22.04.4 LTS

I can make a branch for the conda version.

Would be great for testing.

zlib and sqlite are included from mstoolkit for reading the mzml file. I can make a license file for them.

I think we should just use it from the corresponding conda packages and remove it here completely. FYI: https://github.com/mhoopmann/mstoolkit/pull/28

xyz1396 commented 2 months ago

I updated the compile flag in the latest commit to resolve the compilation error of siproEnsemble on Ubuntu 22.04 with g++11.

xyz1396 commented 2 months ago

sipros-recipe.zip I revised the recipe, and all tests passed locally using Conda build.

bernt-matthias commented 2 months ago

Thanks @xyz1396 . I incorporated your changes in my bioconda PR and played around a bit. It turns out that we can not build a package on bioconda since current versions of numpy are incompatible with python2.

xyz1396 commented 2 months ago

@bernt-matthias . I used conda build . -c bioconda -c conda-forge for my local build test, and it succeeded. However, it seems that the recipe does not include -c conda-forge when submitting to Bioconda. I’m looking for a solution to this issue.

xyz1396 commented 1 month ago

it succeeded finally at this commit. https://github.com/bioconda/bioconda-recipes/pull/51091