dipetkov / eems

Estimating Effective Migration Surfaces
GNU General Public License v2.0
102 stars 28 forks source link

Error compiling runeems_snps - no sudo permissions #71

Open EveTC opened 1 year ago

EveTC commented 1 year ago

Hi,

I am really struggling to install EEMS on my system - I have been trying multiple ways for a long time but keep getting the same error. I am working on a remote server through bah ubuntu where I do not have sudo permissions which can make troubleshooting more troublesome!

I usually work in conda environments as this make is much easier to install things. I found this answer here which gave me hope that I could use miniconda to install this. The code beow is exctly what I have run:

conda create --name EEMS
conda activate EEMS

conda install -c anaconda gcc_linux-64 # as I thought this was an issu at one point but didnt change anything
conda install boost=1.71.0 # previous error from makefile said I should use boost of 1.72.0 or below.
conda install eigen

git clone https://github.com/dipetkov/eems.git
cd ./eems/runeems_snps/src/

# Here I edit the Makefile

The top of the Makefile is edited to: following the previous comments here

EIGEN_INC =  /pub65/eve/bin/miniconda3/envs/EEMS/include/eigen3
BOOST_LIB =  /pub65/eve/bin/miniconda3/envs/EEMS/lib
BOOST_INC =  /pub65/eve/bin/miniconda3/envs/EEMS/include

I then run make linux here is where I get the error

Output is in the file attached EEMS_install_error.txt

The main errors I can see are:

  1. undefined reference to 'boost::program_options::value_semantic_codecvt_helper<char>::parse(boost::any&, std::vector<std::string, std::allocator<std::string> > const&, bool) const' - undefined reference for lots of the program_options
  2. collect2: error: ld returned 1 exit status
  3. Makefile:19: recipe for target 'linux' failed

Any ideas what I need to do differently? Please remeber I do not have sudo so this can sometimes limit options. Thank you for your help in advance