2017-10-05 8 views
1

私がUbuntu 16.04で動脈を構築しようとすると、以下は、私はUnixシステム上の建物の源を持つすべてのこと慣れていない午前としてどのように私は非常にわからない $ cmakeの--build /ホーム/ハルト/静脈/動脈-マスター/Ubuntuの構築動脈が失敗する

[ 23%] Linking CXX shared library libartery.so 
/usr/bin/ld: /usr/local/lib/libvanetza_btp.a(data_request.cpp.o): relocation R_X86_64_32 against `.bss' can not be used when making a shared 
object; recompile with -fPIC 
/usr/local/lib/libvanetza_btp.a: error adding symbols: Bad value 
collect2: error: ld returned 1 exit status 
src/artery/CMakeFiles/artery.dir/build.make:954: recipe for target'src/artery/libartery.so' failed 
make[2]: *** [src/artery/libartery.so] Error 1 
CMakeFiles/Makefile2:229: recipe for target 'src/artery/CMakeFiles/artery.dir/all' failed 
make[1]: *** [src/artery/CMakeFiles/artery.dir/all] Error 2 
Makefile:83: recipe for target 'all' failed 
make: *** [all] Error 2 

を構築呼び出した後に起こりますこのエラーを処理します。 私はcmake version 3.9.3、boost 1.65.1とcrypto ++ 5.6.4を使用していますが、geographiclibもエラーなしでビルドされています。

+0

仮想マシンを構築していますか? 64または32ビット? –

+0

仮想マシンはありません、64ビットOS(16.04。LTS) –

+1

あなたは静的ライブラリとしてVanetzaを構築したようですが、共有ライブラリである必要があります。 Vanetzaビルドディレクトリのcmake変数 'BUILD_SHARED_LIBS'を見ることができますか? 'BUILD_SHARED_LIBS'は' ON'でなければなりません。この変数は 'extern/vanetza/build'ディレクトリに移動し、' ccmake 'とタイプすることで確認できます。 – Ventu

答えて

1

コメントで読めるように、問題は解決されています。
cmake構成のvanetzaディレクトリVANETZA_DIRへのパスが間違っていました。 ccmakeを介してこれを修正すると、問題が解決しました。

関連する問題