molpopgen / fwdpy

forward-time population genetic simulation in python
http://molpopgen.github.io/fwdpy/
GNU General Public License v3.0
18 stars 3 forks source link

Installation failure #6

Open astrojuanlu opened 7 years ago

astrojuanlu commented 7 years ago

From https://github.com/rtfd/readthedocs.org/issues/2707:

I tried to install your library locally and failed:

(test36) juanlu@nebulae /tmp/fwdpy-master $ conda install -c bioconda libsequence -yq
Fetching package metadata ...........
Solving package specifications: .

Package plan for installation in environment /home/juanlu/.miniconda36/envs/test36:

The following NEW packages will be INSTALLED:

    curl:        7.52.1-0               
    htslib:      1.3.2-0        bioconda
    libgcc:      5.2.0-0                
    libsequence: 1.9.0-0        bioconda
    tbb:         4.4_20150728-0 bioconda

Proceed ([y]/n)? 
(test36) juanlu@nebulae /tmp/fwdpy-master $ pip install .
Processing /tmp/fwdpy-master
    Complete output from command python setup.py egg_info:
    check_deps/test_libseq.cc:1:32: fatal error: Sequence/SimData.hpp: No such file or directory
     #include <Sequence/SimData.hpp>
                                    ^
    compilation terminated.
    make: *** [<builtin>: check_deps/test_libseq.o] Error 1
    libsequence version 1.9.0  found.
    GSL version  2.3  found.
    Attempting to compile and link a test program using fwdpy's dependencies
    2
    Could not compile and link test programs!

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-k20ckd2g-build/

Perhaps some issue configuring the environment variables?

molpopgen commented 7 years ago

Can you try it in a fresh condaenv with the bioconda version of gcc, which is pinned at 4.8.5. I'm also not sure what system you are using (os x? linux?)

Also, the pip command is incorrect--see the README.

astrojuanlu commented 7 years ago

Sorry, I'm using Linux. I'm pasting conda info -a here. I tried pip install . --upgrade --intall-option=--use-cython from the zip and didn't work either.

(test36) juanlu@nebulae /tmp $ conda info -a
Current conda install:

               platform : linux-64
          conda version : 4.3.11
       conda is private : False
      conda-env version : 4.3.11
    conda-build version : not installed
         python version : 3.6.0.final.0
       requests version : 2.13.0
       root environment : /home/juanlu/.miniconda36  (writable)
    default environment : /home/juanlu/.miniconda36/envs/test36
       envs directories : /home/juanlu/.miniconda36/envs
                          /home/juanlu/.conda/envs
          package cache : /home/juanlu/.miniconda36/pkgs
                          /home/juanlu/.conda/pkgs
           channel URLs : https://repo.continuum.io/pkgs/free/linux-64
                          https://repo.continuum.io/pkgs/free/noarch
                          https://repo.continuum.io/pkgs/r/linux-64
                          https://repo.continuum.io/pkgs/r/noarch
                          https://repo.continuum.io/pkgs/pro/linux-64
                          https://repo.continuum.io/pkgs/pro/noarch
            config file : None
           offline mode : False
             user-agent : conda/4.3.11 requests/2.13.0 CPython/3.6.0 Linux/4.10.3-1-ARCH arch/ glibc/2.25
                UID:GID : 1000:100

# conda environments:
#
hrl36                    /home/juanlu/.miniconda36/envs/hrl36
op35                     /home/juanlu/.miniconda36/envs/op35
poliastro36              /home/juanlu/.miniconda36/envs/poliastro36
py36                     /home/juanlu/.miniconda36/envs/py36
py36_test                /home/juanlu/.miniconda36/envs/py36_test
sktext2017               /home/juanlu/.miniconda36/envs/sktext2017
test36                *  /home/juanlu/.miniconda36/envs/test36
root                     /home/juanlu/.miniconda36

sys.version: 3.6.0 |Continuum Analytics, Inc.| (defau...
sys.prefix: /home/juanlu/.miniconda36
sys.executable: /home/juanlu/.miniconda36/bin/python
conda location: /home/juanlu/.miniconda36/lib/python3.6/site-packages/conda
conda-build: None
conda-env: /home/juanlu/.miniconda36/bin/conda-env
user site dirs: 

CIO_TEST: <not set>
CONDA_DEFAULT_ENV: test36
CONDA_ENVS_PATH: <not set>
LD_LIBRARY_PATH: /opt/opencascade/lib
PATH: /home/juanlu/.miniconda36/envs/test36/bin:/home/juanlu/.miniconda36/bin:/home/juanlu/.local/bin:/home/juanlu/.gem/ruby/2.1.0/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/opt/opencascade/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/opt/visit/bin
PYTHONHOME: <not set>
PYTHONPATH: <not set>

WARNING: could not import _license.show_info
# try:
# $ conda install -n root _license
juanlu@nebulae /tmp $ conda create -n test36 python=3.6 -yq                                  
Fetching package metadata .........
Solving package specifications: .

Package plan for installation in environment /home/juanlu/.miniconda36/envs/test36:

The following NEW packages will be INSTALLED:

    openssl:    1.0.2k-1     
    pip:        9.0.1-py36_1 
    python:     3.6.0-0      
    readline:   6.2-2        
    setuptools: 27.2.0-py36_0
    sqlite:     3.13.0-0     
    tk:         8.5.18-0     
    wheel:      0.29.0-py36_0
    xz:         5.2.2-1      
    zlib:       1.2.8-3      

#
# To activate this environment, use:                                                          
# > source activate test36                                                                    
#                                                                                             
# To deactivate this environment, use:                                                        
# > source deactivate test36                                                                  
#                                                                                             

juanlu@nebulae /tmp $ source activate test36
(test36) juanlu@nebulae /tmp $ conda install -c bioconda libsequence gcc -yq
Fetching package metadata ...........
Solving package specifications: .

Package plan for installation in environment /home/juanlu/.miniconda36/envs/test36:

The following NEW packages will be INSTALLED:

    cloog:       0.18.0-0               
    curl:        7.52.1-0               
    gcc:         4.8.5-7                
    gmp:         6.1.0-0                
    htslib:      1.3.2-0        bioconda
    isl:         0.12.2-0               
    libgcc:      5.2.0-0                
    libsequence: 1.9.0-0        bioconda
    mpc:         1.0.3-0                
    mpfr:        3.1.5-0                
    tbb:         4.4_20150728-0 bioconda

(test36) juanlu@nebulae /tmp $ unzip f
firefox_juanlu/      fwdpy-master/        fwdpy-master(1).zip  fwdpy-master.zip
(test36) juanlu@nebulae /tmp $ unzip -q fwdpy-master.zip
(test36) juanlu@nebulae /tmp $ conda install cython -yq
Fetching package metadata .........
Solving package specifications: .

Package plan for installation in environment /home/juanlu/.miniconda36/envs/test36:

The following NEW packages will be INSTALLED:

    cython: 0.25.2-py36_0

(test36) juanlu@nebulae /tmp $ cd fwdy-master/
(test36) juanlu@nebulae /tmp/fwdpy-master $ pip install . --upgrade --install-option=--use-cython
/home/juanlu/.miniconda36/envs/test36/lib/python3.6/site-packages/pip/commands/install.py:194: UserWarning: Disabling all use of wheels due to the use of --build-options / --global-options / --install-options.
  cmdoptions.check_install_build_global(options)
Processing /tmp/fwdpy-master
    Complete output from command python setup.py egg_info:
    check_deps/test_fwdpp.cc:1:28: fatal error: fwdpp/diploid.hh: No such file or directory
     #include <fwdpp/diploid.hh>
                                ^
    compilation terminated.
    make: *** [<builtin>: check_deps/test_fwdpp.o] Error 1
    libsequence version 1.9.0  found.
    GSL version  2.3  found.
    Attempting to compile and link a test program using fwdpy's dependencies
    2
    Could not compile and link test programs!

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-ljm2rl6x-build/

Then I tried cloning the repo, but failed again because pandas is listed nowhere:

(test36) juanlu@nebulae /tmp $ git clone https://github.com/molpopgen/fwdpy.git
Cloning into 'fwdpy'...
remote: Counting objects: 10914, done.
remote: Compressing objects: 100% (240/240), done.
remote: Total 10914 (delta 107), reused 0 (delta 0), pack-reused 10672
Receiving objects: 100% (10914/10914), 10.41 MiB | 2.00 MiB/s, done.
Resolving deltas: 100% (7710/7710), done.
(test36) juanlu@nebulae /tmp $ cd fwdpy
(test36) juanlu@nebulae /tmp/fwdpy $ git submodule init
Submodule 'fwdpy/headers/fwdpp' (https://github.com/molpopgen/fwdpp) registered for path 'fwdpy/headers/fwdpp'
(test36) juanlu@nebulae /tmp/fwdpy $ git submodule update
(test36) juanlu@nebulae /tmp/fwdpy :( $ pip install . --upgrade --install-option=--use-cython
/home/juanlu/.miniconda36/envs/test36/lib/python3.6/site-packages/pip/commands/install.py:194: UserWarning: Disabling all use of wheels due to the use of --build-options / --global-options / --install-options.
  cmdoptions.check_install_build_global(options)
Processing /tmp/fwdpy
    Complete output from command python setup.py egg_info:
    libsequence version 1.9.0  found.
    GSL version  2.3  found.
    Attempting to compile and link a test program using fwdpy's dependencies
    Success!
    import pandas failed.  Please install pandas

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-9obfrc9d-build/

I installed pandas but the installation failed with another error:

(test36) juanlu@nebulae /tmp/fwdpy $ pip install . --upgrade --install-option=--use-cython
/home/juanlu/.miniconda36/envs/test36/lib/python3.6/site-packages/pip/commands/install.py:194: UserWarning: Disabling all use of wheels due to the use of --build-options / --global-options / --install-options.
  cmdoptions.check_install_build_global(options)
Processing /tmp/fwdpy
    Complete output from command python setup.py egg_info:

    Error compiling Cython file:
    ------------------------------------------------------------
    ...

    from libcpp cimport bool
    from libcpp.utility cimport pair
    from libcpp.string cimport string
    from libcpp.vector cimport vector
    from cython_gsl cimport gsl_rng,gsl_ran_discrete_t
    ^
    ------------------------------------------------------------

    fwdpy/fwdpp.pxd:17:0: 'cython_gsl.pxd' not found

    Error compiling Cython file:
    ------------------------------------------------------------
    ...

    from libcpp cimport bool
    from libcpp.utility cimport pair
    from libcpp.string cimport string
    from libcpp.vector cimport vector
    from cython_gsl cimport gsl_rng,gsl_ran_discrete_t
    ^
    ------------------------------------------------------------

    fwdpy/fwdpp.pxd:17:0: 'cython_gsl/gsl_rng.pxd' not found

    Error compiling Cython file:
    ------------------------------------------------------------
    ...

    from libcpp cimport bool
    from libcpp.utility cimport pair
    from libcpp.string cimport string
    from libcpp.vector cimport vector
    from cython_gsl cimport gsl_rng,gsl_ran_discrete_t
    ^
    ------------------------------------------------------------

    fwdpy/fwdpp.pxd:17:0: 'cython_gsl/gsl_ran_discrete_t.pxd' not found

    Error compiling Cython file:
    ------------------------------------------------------------
    ...
    ##See wrappers in fwdpy.pyx to functions in fwdpy's sampling_wrappers.hpp for thin wrappers to single-dem samplers
    cdef extern from "fwdpp/sugar/sampling.hpp" namespace "KTfwd" nogil:
        ctypedef vector[pair[double,string]] sample_t
        ctypedef pair[sample_t,sample_t] sep_sample_t
        #For metapopulations...
        sep_sample_t sample_separate[POPTYPE](const gsl_rng *,const POPTYPE &,const unsigned deme , const unsigned nsam , const bool removeFixed) except+
                                                   ^
    ------------------------------------------------------------

    fwdpy/fwdpp.pxd:92:48: 'gsl_rng' is not a type identifier

    Error compiling Cython file:
    ------------------------------------------------------------
    ...
        #It is used as the deleter type for a unique_ptr
        cdef cppclass gsl_ran_discrete_t_deleter:
            pass

        #Smart-ptr wrapper around gsl_ran_discrete_t that uses custom deleter
        ctypedef unique_ptr[gsl_ran_discrete_t,gsl_ran_discrete_t_deleter] gsl_ran_discrete_t_ptr
                                             ^
    ------------------------------------------------------------

    fwdpy/fwdpp.pxd:124:42: unknown type in template argument

    Error compiling Cython file:
    ------------------------------------------------------------
    ...
    from libcpp.memory cimport unique_ptr

    cdef extern from "fwdpp/internal/gsl_discrete.hpp" namespace "KTfwd::internal" nogil:
        cdef cppclass gsl_ran_discrete_t_deleter:
            pass
        ctypedef unique_ptr[gsl_ran_discrete_t,gsl_ran_discrete_t_deleter] gsl_ran_discrete_t_ptr
                                             ^
    ------------------------------------------------------------

    fwdpy/fwdpp_internal.pxd:8:42: unknown type in template argument

    Error compiling Cython file:
    ------------------------------------------------------------
    ...
            void fromfile(const char *,size_t)
            void clear()

        cdef cppclass GSLrng_t:
            GSLrng_t(unsigned)
            const gsl_rng * get()
                 ^
    ------------------------------------------------------------

    fwdpy/fwdpy.pxd:122:14: 'gsl_rng' is not a type identifier

    Error compiling Cython file:
    ------------------------------------------------------------
    ...

    ctypedef vector[pair[sep_sample_t,popsample_details]] popSampleData

    cdef extern from "sampler_sample_n.hpp" namespace "fwdpy" nogil:
        cdef cppclass sample_n(sampler_base):
            sample_n(unsigned, const gsl_rng * r,
                                    ^
    ------------------------------------------------------------

    fwdpy/fwdpy.pxd:268:33: 'gsl_rng' is not a type identifier

    Error compiling Cython file:
    ------------------------------------------------------------
    ...
                                     const region_manager * rm,
                                     const singlepop_fitness & fitness) except +

    cdef extern from "sampling_wrappers.hpp" namespace "fwdpy" nogil:
        sample_t sample_single[POPTYPE](gsl_rng * r,const POPTYPE & p, const unsigned nsam, const bool removeFixed)  except +
                                       ^
    ------------------------------------------------------------

    fwdpy/fwdpy.pxd:417:36: 'gsl_rng' is not a type identifier

    Error compiling Cython file:
    ------------------------------------------------------------
    ...
                                     const singlepop_fitness & fitness) except +

    cdef extern from "sampling_wrappers.hpp" namespace "fwdpy" nogil:
        sample_t sample_single[POPTYPE](gsl_rng * r,const POPTYPE & p, const unsigned nsam, const bool removeFixed)  except +
        sep_sample_t sample_sep_single[POPTYPE](gsl_rng * r,const POPTYPE & p, const unsigned nsam, const bool removeFixed)  except +
                                               ^
    ------------------------------------------------------------

    fwdpy/fwdpy.pxd:418:44: 'gsl_rng' is not a type identifier

    Error compiling Cython file:
    ------------------------------------------------------------
    ...

    cdef extern from "sampling_wrappers.hpp" namespace "fwdpy" nogil:
        sample_t sample_single[POPTYPE](gsl_rng * r,const POPTYPE & p, const unsigned nsam, const bool removeFixed)  except +
        sep_sample_t sample_sep_single[POPTYPE](gsl_rng * r,const POPTYPE & p, const unsigned nsam, const bool removeFixed)  except +
        vector[sample_t] sample_single_mloc[POPTYPE](gsl_rng * r,const POPTYPE & p, const unsigned nsam, const bool
                                                    ^
    ------------------------------------------------------------

    fwdpy/fwdpy.pxd:419:49: 'gsl_rng' is not a type identifier

    Error compiling Cython file:
    ------------------------------------------------------------
    ...
    cdef extern from "sampling_wrappers.hpp" namespace "fwdpy" nogil:
        sample_t sample_single[POPTYPE](gsl_rng * r,const POPTYPE & p, const unsigned nsam, const bool removeFixed)  except +
        sep_sample_t sample_sep_single[POPTYPE](gsl_rng * r,const POPTYPE & p, const unsigned nsam, const bool removeFixed)  except +
        vector[sample_t] sample_single_mloc[POPTYPE](gsl_rng * r,const POPTYPE & p, const unsigned nsam, const bool
                removeFixed, const vector[pair[double,double]] &)  except +
        vector[sep_sample_t] sample_sep_single_mloc[POPTYPE](gsl_rng * r,const POPTYPE & p, const unsigned nsam, const bool
                                                            ^
    ------------------------------------------------------------

    fwdpy/fwdpy.pxd:421:57: 'gsl_rng' is not a type identifier

    Error compiling Cython file:
    ------------------------------------------------------------
    ...
    cdef extern from "metapop.hpp" namespace "fwdpy" nogil:
        void re_init_mpop( metapop_t * mpop, const singlepop_t * pop)
        void copy_deme( metapop_t * mpop, const size_t i ) except +
        void remove_deme( metapop_t * mpop, const size_t i ) except +
        void merge_demes(metapop_t  * mpop, const size_t i, const size_t j) except +
        void split_deme(const gsl_rng * r, metapop_t * mpop, const size_t i, const unsigned N_new, const bint replacement ) except +
                             ^
    ------------------------------------------------------------

    fwdpy/demography/demography.pxd:11:26: 'gsl_rng' is not a type identifier

    Error compiling Cython file:
    ------------------------------------------------------------
    ...
        void re_init_mpop( metapop_t * mpop, const singlepop_t * pop)
        void copy_deme( metapop_t * mpop, const size_t i ) except +
        void remove_deme( metapop_t * mpop, const size_t i ) except +
        void merge_demes(metapop_t  * mpop, const size_t i, const size_t j) except +
        void split_deme(const gsl_rng * r, metapop_t * mpop, const size_t i, const unsigned N_new, const bint replacement ) except +
        void admix_demes(const gsl_rng * r, metapop_t * mpop, const size_t i, const size_t j, const double prop_i,const unsigned N_new, const bint replacement) except +
                              ^
    ------------------------------------------------------------

    fwdpy/demography/demography.pxd:12:27: 'gsl_rng' is not a type identifier
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-gmhzw5o5-build/setup.py", line 239, in <module>
        extensions = cythonize(extensions)
      File "/home/juanlu/.miniconda36/envs/test36/lib/python3.6/site-packages/Cython/Build/Dependencies.py", line 934, in cythonize
        cythonize_one(*args)
      File "/home/juanlu/.miniconda36/envs/test36/lib/python3.6/site-packages/Cython/Build/Dependencies.py", line 1056, in cythonize_one
        raise CompileError(None, pyx_file)
    Cython.Compiler.Errors.CompileError: fwdpy/demography/demography.pyx
    libsequence version 1.9.0  found.
    GSL version  2.3  found.
    Attempting to compile and link a test program using fwdpy's dependencies
    Success!
    fwdpy/fwdpy.pxd: cannot find cimported module 'cython_gsl'
    ./fwdpy/fwdpp.pxd: cannot find cimported module 'cython_gsl'
    ./fwdpy/fwdpy.pxd: cannot find cimported module 'cython_gsl'
    ./fwdpy/fwdpp_internal.pxd: cannot find cimported module 'cython_gsl'
    fwdpy/numeric_gsl.pyx: cannot find cimported module 'cython_gsl.gsl_blas'
    fwdpy/numeric_gsl.pyx: cannot find cimported module 'cython_gsl.gsl_linalg'
    fwdpy/numeric_gsl.pyx: cannot find cimported module 'cython_gsl.gsl_math'
    fwdpy/numeric_gsl.pxd: cannot find cimported module 'cython_gsl'
    ./fwdpy/gsl.pxd: cannot find cimported module 'cython_gsl'
    Compiling fwdpy/fwdpy.pyx because it changed.
    Compiling fwdpy/internal/internal.pyx because it changed.
    Compiling fwdpy/fwdpyio/fwdpyio.pyx because it changed.
    Compiling fwdpy/demography/demography.pyx because it changed.
    Compiling fwdpy/fitness.pyx because it changed.
    Compiling fwdpy/matrix.pyx because it changed.
    Compiling fwdpy/numeric_gsl.pyx because it changed.
    [1/7] Cythonizing fwdpy/demography/demography.pyx

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-gmhzw5o5-build/

Lastly, I tried building the extensions but failed too:

(test36) juanlu@nebulae /tmp/fwdpy :( $ python setup.py build_ext -i
libsequence version 1.9.0  found.
GSL version  2.3  found.
Attempting to compile and link a test program using fwdpy's dependencies
Success!
fwdpy/fwdpy.pxd: cannot find cimported module 'cython_gsl'
./fwdpy/fwdpp.pxd: cannot find cimported module 'cython_gsl'
./fwdpy/fwdpy.pxd: cannot find cimported module 'cython_gsl'
./fwdpy/fwdpp_internal.pxd: cannot find cimported module 'cython_gsl'
fwdpy/numeric_gsl.pyx: cannot find cimported module 'cython_gsl.gsl_blas'
fwdpy/numeric_gsl.pyx: cannot find cimported module 'cython_gsl.gsl_math'
fwdpy/numeric_gsl.pyx: cannot find cimported module 'cython_gsl.gsl_linalg'
fwdpy/numeric_gsl.pxd: cannot find cimported module 'cython_gsl'
./fwdpy/gsl.pxd: cannot find cimported module 'cython_gsl'
Compiling fwdpy/fwdpy.pyx because it changed.
Compiling fwdpy/internal/internal.pyx because it changed.
Compiling fwdpy/fwdpyio/fwdpyio.pyx because it changed.
Compiling fwdpy/demography/demography.pyx because it changed.
Compiling fwdpy/fitness.pyx because it changed.
Compiling fwdpy/matrix.pyx because it changed.
Compiling fwdpy/numeric_gsl.pyx because it changed.
[1/7] Cythonizing fwdpy/demography/demography.pyx

Error compiling Cython file:
------------------------------------------------------------
...

from libcpp cimport bool
from libcpp.utility cimport pair
from libcpp.string cimport string
from libcpp.vector cimport vector
from cython_gsl cimport gsl_rng,gsl_ran_discrete_t
^
------------------------------------------------------------

fwdpy/fwdpp.pxd:17:0: 'cython_gsl.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...

from libcpp cimport bool
from libcpp.utility cimport pair
from libcpp.string cimport string
from libcpp.vector cimport vector
from cython_gsl cimport gsl_rng,gsl_ran_discrete_t
^
------------------------------------------------------------

fwdpy/fwdpp.pxd:17:0: 'cython_gsl/gsl_rng.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...

from libcpp cimport bool
from libcpp.utility cimport pair
from libcpp.string cimport string
from libcpp.vector cimport vector
from cython_gsl cimport gsl_rng,gsl_ran_discrete_t
^
------------------------------------------------------------

fwdpy/fwdpp.pxd:17:0: 'cython_gsl/gsl_ran_discrete_t.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
##See wrappers in fwdpy.pyx to functions in fwdpy's sampling_wrappers.hpp for thin wrappers to single-dem samplers
cdef extern from "fwdpp/sugar/sampling.hpp" namespace "KTfwd" nogil:
    ctypedef vector[pair[double,string]] sample_t
    ctypedef pair[sample_t,sample_t] sep_sample_t
    #For metapopulations...
    sep_sample_t sample_separate[POPTYPE](const gsl_rng *,const POPTYPE &,const unsigned deme , const unsigned nsam , const bool removeFixed) except+
                                               ^
------------------------------------------------------------

fwdpy/fwdpp.pxd:92:48: 'gsl_rng' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
    #It is used as the deleter type for a unique_ptr
    cdef cppclass gsl_ran_discrete_t_deleter:
        pass

    #Smart-ptr wrapper around gsl_ran_discrete_t that uses custom deleter
    ctypedef unique_ptr[gsl_ran_discrete_t,gsl_ran_discrete_t_deleter] gsl_ran_discrete_t_ptr 
                                         ^
------------------------------------------------------------

fwdpy/fwdpp.pxd:124:42: unknown type in template argument

Error compiling Cython file:
------------------------------------------------------------
...
from libcpp.memory cimport unique_ptr

cdef extern from "fwdpp/internal/gsl_discrete.hpp" namespace "KTfwd::internal" nogil:
    cdef cppclass gsl_ran_discrete_t_deleter:
        pass
    ctypedef unique_ptr[gsl_ran_discrete_t,gsl_ran_discrete_t_deleter] gsl_ran_discrete_t_ptr 
                                         ^
------------------------------------------------------------

fwdpy/fwdpp_internal.pxd:8:42: unknown type in template argument

Error compiling Cython file:
------------------------------------------------------------
...
        void fromfile(const char *,size_t)
        void clear()

    cdef cppclass GSLrng_t:
        GSLrng_t(unsigned)
        const gsl_rng * get()
             ^
------------------------------------------------------------

fwdpy/fwdpy.pxd:122:14: 'gsl_rng' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...

ctypedef vector[pair[sep_sample_t,popsample_details]] popSampleData

cdef extern from "sampler_sample_n.hpp" namespace "fwdpy" nogil:
    cdef cppclass sample_n(sampler_base):
        sample_n(unsigned, const gsl_rng * r,
                                ^
------------------------------------------------------------

fwdpy/fwdpy.pxd:268:33: 'gsl_rng' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
                                     const region_manager * rm,
                                     const singlepop_fitness & fitness) except +

cdef extern from "sampling_wrappers.hpp" namespace "fwdpy" nogil:
    sample_t sample_single[POPTYPE](gsl_rng * r,const POPTYPE & p, const unsigned nsam, const bool removeFixed)  except +
                                   ^
------------------------------------------------------------

fwdpy/fwdpy.pxd:417:36: 'gsl_rng' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
                                     const singlepop_fitness & fitness) except +

cdef extern from "sampling_wrappers.hpp" namespace "fwdpy" nogil:
    sample_t sample_single[POPTYPE](gsl_rng * r,const POPTYPE & p, const unsigned nsam, const bool removeFixed)  except +
    sep_sample_t sample_sep_single[POPTYPE](gsl_rng * r,const POPTYPE & p, const unsigned nsam, const bool removeFixed)  except +
                                           ^
------------------------------------------------------------

fwdpy/fwdpy.pxd:418:44: 'gsl_rng' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...

cdef extern from "sampling_wrappers.hpp" namespace "fwdpy" nogil:
    sample_t sample_single[POPTYPE](gsl_rng * r,const POPTYPE & p, const unsigned nsam, const bool removeFixed)  except +
    sep_sample_t sample_sep_single[POPTYPE](gsl_rng * r,const POPTYPE & p, const unsigned nsam, const bool removeFixed)  except +
    vector[sample_t] sample_single_mloc[POPTYPE](gsl_rng * r,const POPTYPE & p, const unsigned nsam, const bool
                                                ^
------------------------------------------------------------

fwdpy/fwdpy.pxd:419:49: 'gsl_rng' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
cdef extern from "sampling_wrappers.hpp" namespace "fwdpy" nogil:
    sample_t sample_single[POPTYPE](gsl_rng * r,const POPTYPE & p, const unsigned nsam, const bool removeFixed)  except +
    sep_sample_t sample_sep_single[POPTYPE](gsl_rng * r,const POPTYPE & p, const unsigned nsam, const bool removeFixed)  except +
    vector[sample_t] sample_single_mloc[POPTYPE](gsl_rng * r,const POPTYPE & p, const unsigned nsam, const bool
            removeFixed, const vector[pair[double,double]] &)  except +
    vector[sep_sample_t] sample_sep_single_mloc[POPTYPE](gsl_rng * r,const POPTYPE & p, const unsigned nsam, const bool
                                                        ^
------------------------------------------------------------

fwdpy/fwdpy.pxd:421:57: 'gsl_rng' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
cdef extern from "metapop.hpp" namespace "fwdpy" nogil:
    void re_init_mpop( metapop_t * mpop, const singlepop_t * pop)
    void copy_deme( metapop_t * mpop, const size_t i ) except +
    void remove_deme( metapop_t * mpop, const size_t i ) except +
    void merge_demes(metapop_t  * mpop, const size_t i, const size_t j) except +
    void split_deme(const gsl_rng * r, metapop_t * mpop, const size_t i, const unsigned N_new, const bint replacement ) except +
                         ^
------------------------------------------------------------

fwdpy/demography/demography.pxd:11:26: 'gsl_rng' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
    void re_init_mpop( metapop_t * mpop, const singlepop_t * pop)
    void copy_deme( metapop_t * mpop, const size_t i ) except +
    void remove_deme( metapop_t * mpop, const size_t i ) except +
    void merge_demes(metapop_t  * mpop, const size_t i, const size_t j) except +
    void split_deme(const gsl_rng * r, metapop_t * mpop, const size_t i, const unsigned N_new, const bint replacement ) except +
    void admix_demes(const gsl_rng * r, metapop_t * mpop, const size_t i, const size_t j, const double prop_i,const unsigned N_new, const bint replacement) except +
                          ^
------------------------------------------------------------

fwdpy/demography/demography.pxd:12:27: 'gsl_rng' is not a type identifier
Traceback (most recent call last):
  File "setup.py", line 239, in <module>
    extensions = cythonize(extensions)
  File "/home/juanlu/.miniconda36/envs/test36/lib/python3.6/site-packages/Cython/Build/Dependencies.py", line 934, in cythonize
    cythonize_one(*args)
  File "/home/juanlu/.miniconda36/envs/test36/lib/python3.6/site-packages/Cython/Build/Dependencies.py", line 1056, in cythonize_one
    raise CompileError(None, pyx_file)
Cython.Compiler.Errors.CompileError: fwdpy/demography/demography.pyx
molpopgen commented 7 years ago

The complete list of dependencies are in the .travis.yml, and they are also listed in the readme: fwdpp, cythongsl, cython, libsequence, pandas, numpy.

But, this is not going to solve the RTD issues. The package builds on Travis, so we know that isn't the problem: https://travis-ci.org/molpopgen/fwdpy