2016-04-12 15 views
0

Matrisin çözülmesi için python değişkenlerini ve lapack'ı ayıklamak için destek kullanarak bir program oluşturdum. Ben derleme sürecinde bazı sorun var Ancak buradaboost-python ve lapack ile derleme hatası

benim içerir ve kod ilkler hattı:

#define NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION 
#include "lapacke.h" 
#include <math.h> 

#include <omp.h> 

#include <stdlib.h> 
#include <stdint.h> 
#include <stdio.h> 
#include <stdarg.h> 
#include <math.h> 
#include <sys/times.h> 

#include <exception> 
#include <fstream> 
#include <iostream> 
#include <cassert> 
#include <algorithm> 
#include <string> 
#include <sstream> 
#include <vector> 
#include <map> 
#include <list> 
#include <set> 
#include <limits> 

#include <Python.h> 
#include <arrayobject.h> 

#include <boost/timer/timer.hpp> 
#include <boost/python.hpp> 
#include "boost/python/extract.hpp" 


using namespace std; 

bu çıktıyı yorumlamak zorluk hataların büyük miktarda derleme sonuçları.

In file included from /usr/include/c++/4.9/complex.h:36:0, 
       from /usr/include/lapacke.h:73, 
       from /project/git/CLCCD/whittaker/wfilter.cpp:4: 
/usr/include/boost/operators.hpp:308:26: error: expected identifier before ‘(’ token 
template <class T, class I, class R, class B = ::boost::detail::empty_base<T> > 
         ^
/usr/include/boost/operators.hpp:308:26: error: expected ‘)’ before ‘__extension__’ 
template <class T, class I, class R, class B = ::boost::detail::empty_base<T> > 
         ^
/usr/include/boost/operators.hpp:308:26: error: expected ‘>’ before ‘__extension__’ 
/usr/include/boost/operators.hpp:308:26: error: expected unqualified-id before ‘)’ token 
template <class T, class I, class R, class B = ::boost::detail::empty_base<T> > 
         ^
In file included from /usr/include/boost/system/error_code.hpp:17:0, 
       from /usr/include/boost/chrono/detail/system.hpp:12, 
       from /usr/include/boost/chrono/system_clocks.hpp:64, 
       from /usr/include/boost/chrono/chrono.hpp:13, 
       from /usr/include/boost/timer/timer.hpp:14, 
       from /project/git/CLCCD/whittaker/wfilter.cpp:37: 
/usr/include/boost/operators.hpp:649:7: error: ‘indexable’ was not declared in this scope 
    , indexable<T, D, R, B 
    ^
/usr/include/boost/operators.hpp:650:7: error: wrong number of template arguments (6, should be 3) 
     > > > > {}; 
    ^
/usr/include/boost/operators.hpp:420:8: error: provided for ‘template<class T, class U, class B> struct boost::additive2’ 
struct additive2 
     ^
/usr/include/boost/operators.hpp:650:9: error: template argument 2 is invalid 
     > > > > {}; 
     ^
/usr/include/boost/operators.hpp:650:11: error: template argument 3 is invalid 
     > > > > {}; 
     ^
/usr/include/boost/operators.hpp:650:13: error: expected ‘{’ before ‘>’ token 
     > > > > {}; 
      ^
/usr/include/boost/operators.hpp:650:13: error: expected unqualified-id before ‘>’ token 
/usr/include/boost/operators.hpp:851:1: error: ‘indexable’ is not a member of ‘boost’ 
BOOST_OPERATOR_TEMPLATE3(indexable) 
^ 
/usr/include/boost/operators.hpp:851:1: error: ‘indexable’ is not a member of ‘boost’ 
/usr/include/boost/operators.hpp:851:1: error: wrong number of template arguments (4, should be 1) 
BOOST_OPERATOR_TEMPLATE3(indexable) 
^ 
/usr/include/boost/operators.hpp:731:26: error: provided for ‘template<class T> struct boost::is_chained_base’ 
template<class T> struct is_chained_base { 
         ^
/usr/include/boost/operators.hpp:851:1: error: expected unqualified-id before ‘>’ token 
BOOST_OPERATOR_TEMPLATE3(indexable) 
^ 
In file included from /usr/include/c++/4.9/complex.h:36:0, 
       from /usr/include/lapacke.h:73, 
       from /project/git/CLCCD/whittaker/wfilter.cpp:4: 
/usr/include/boost/smart_ptr/detail/spinlock_pool.hpp:34:15: error: expected ‘)’ before ‘__extension__’ 
template< int I > class spinlock_pool 
      ^
/usr/include/boost/smart_ptr/detail/spinlock_pool.hpp:34:15: error: expected ‘>’ before ‘__extension__’ 
/usr/include/boost/smart_ptr/detail/spinlock_pool.hpp:34:15: error: expected unqualified-id before ‘)’ token 
template< int I > class spinlock_pool 
      ^
/usr/include/boost/smart_ptr/detail/spinlock_pool.hpp:75:15: error: expected ‘)’ before ‘__extension__’ 
template< int I > spinlock spinlock_pool<I>::pool_[ 41 ] = 
      ^
/usr/include/boost/smart_ptr/detail/spinlock_pool.hpp:75:15: error: expected ‘>’ before ‘__extension__’ 
/usr/include/boost/smart_ptr/detail/spinlock_pool.hpp:75:15: error: expected unqualified-id before ‘)’ token 
template< int I > spinlock spinlock_pool<I>::pool_[ 41 ] = 
      ^
// some other lines ... 
    In file included from /usr/include/boost/shared_ptr.hpp:17:0, 
       from /usr/include/boost/python/converter/shared_ptr_to_python.hpp:10, 
       from /usr/include/boost/python/converter/arg_to_python.hpp:15, 
       from /usr/include/boost/python/call.hpp:15, 
       from /usr/include/boost/python/object_core.hpp:14, 
       from /usr/include/boost/python/args.hpp:25, 
       from /usr/include/boost/python.hpp:11, 
       from /project/git/CLCCD/whittaker/wfilter.cpp:38: 
/usr/include/boost/smart_ptr/shared_ptr.hpp: In function ‘boost::shared_ptr<T> boost::atomic_load(const boost::shared_ptr<T>*)’: 
/usr/include/boost/smart_ptr/shared_ptr.hpp:954:5: error: ‘spinlock_pool’ is not a member of ‘boost::detail’ 
    boost::detail::spinlock_pool<2>::scoped_lock lock(p); 
    ^
/usr/include/boost/smart_ptr/shared_ptr.hpp:954:36: error: ‘::scoped_lock’ has not been declared 
    boost::detail::spinlock_pool<2>::scoped_lock lock(p); 
            ^
/usr/include/boost/smart_ptr/shared_ptr.hpp: In function ‘void boost::atomic_store(boost::shared_ptr<T>*, boost::shared_ptr<T>)’: 
/usr/include/boost/smart_ptr/shared_ptr.hpp:965:5: error: ‘spinlock_pool’ is not a member of ‘boost::detail’ 
    boost::detail::spinlock_pool<2>::scoped_lock lock(p); 
    ^
/usr/include/boost/smart_ptr/shared_ptr.hpp:965:36: error: ‘::scoped_lock’ has not been declared 
    boost::detail::spinlock_pool<2>::scoped_lock lock(p); 
            ^
// and it continues... 

S:: İşte bir örnek derleme My sınırlı bilgi LAPACK ve boost arasında bir çatışma varsayalım eğilimindedir, ama nasıl çözmek için?

S: Bu, cpp dosyasında tanımlı tüm ad alanlarıyla ilgili bir sorun mu var?

cevap

0

Aslında bu boost içerir sonra, ben başka sorunlar yaşıyorum şeyler ...

çözüldü sipariş içeren bir sorun ... #include "lapacke.h" koyarak

oldu şimdi ... ama bu başka bir hikaye ...

+0

Aslında, #include 'ilk dahil etmeniz gerekir. Şuna bakın: http://www.boost.org/doc/libs/1_60_0/libs/python/doc/html/building/include_issues.html – Caduchon