2016-12-11 17 views
1

ubuntu 12.04を実行しているので、ソースをダウンロードし、指示に従ってコンパイルしました(https://github.com/davisking/dlib参照)。以下は表示されるエラーメッセージです。dlibの例、テストビルドが失敗する

cmake --build . --config Release 
[ 1%] Building CXX object dlib_build/CMakeFiles/dlib.dir/bsp/bsp.cpp.o 
In file included from /home/andreif/downlib/dlib-19.2/dlib/bsp/../sockets/../threads/parallel_for_extension.h:9:0, 
from /home/my_path/dlib-19.2/dlib/bsp/../sockets/../threads.h:24, 
from /home/my_path/dlib-19.2/dlib/bsp/../sockets/sockets_kernel_2.h:33, 
from /home/my_path/dlib-19.2/dlib/bsp/../sockets/posix.h:4, 
from /home/my_path/dlib-19.2/dlib/bsp/../sockets.h:14, 
from /home/my_path/dlib-19.2/dlib/bsp/bsp.h:7, 
from /home/my_path/dlib-19.2/dlib/bsp/bsp.cpp:6: 
/home/my_path/dlib-19.2/dlib/bsp/../sockets/../threads/async.h: In function ‘std::future<typename std::result_of<_Functor(_ArgTypes="" ...)="">::type> dlib::async(dlib::thread_pool&, Function&&, Args&& ...)’: 
/home/my_path/dlib-19.2/dlib/bsp/../sockets/../threads/async.h:63:15: error: expected nested-name-specifier before ‘bind_t’ 
/home/my_path/dlib-19.2/dlib/bsp/../sockets/../threads/async.h:63:15: error: ‘bind_t’ has not been declared 
/home/my_path/dlib-19.2/dlib/bsp/../sockets/../threads/async.h:63:22: error: expected ‘;’ before ‘=’ token 
/home/my_path/dlib-19.2/dlib/bsp/../sockets/../threads/async.h:63:22: error: expected primary-expression before ‘=’ token 
/home/my_path/dlib-19.2/dlib/bsp/../sockets/../threads/async.h:63:24: error: expected primary-expression before ‘decltype’ 
/home/my_path/dlib-19.2/dlib/bsp/../sockets/../threads/async.h:63:24: error: expected ‘;’ before ‘decltype’ 
/home/my_path/dlib-19.2/dlib/bsp/../sockets/../threads/async.h:64:37: error: ‘bind_t’ was not declared in this scope 
make[2]: [dlib_build/CMakeFiles/dlib.dir/bsp/bsp.cpp.o] Error 1 
make[1]: [dlib_build/CMakeFiles/dlib.dir/all] Error 2 
make: *** [all] Error 2 

答えて

1

問題は、私のC++コンパイラた:Ubuntuの12.04のデフォルトのgcc 4.6は、C++ 11のサポートを持っていますが、それはそれを呼び出すときに、コマンドラインで有効にする必要があります。私は/.bashrcを自動的に編集しようとしましたが、うまくいきませんでした。ここで説明したように私のためのソリューションは、(使用可能な古いインストールを維持するために、使用する更新代替)のgcc/gで++ 4.8をインストールすることでした

http://mortenvp.com/installing-a-newer-gccg-on-ubuntu-12-04-lts/

+0

これが受け入れ答えである必要があり、問題が解決されました。 – andreifin

関連する問題