2016-08-12 3 views
2

ここでは、EASGDパッケージのインストール手順についてはhttps://github.com/sixin-zh/mpiT です。EASGD Torch luarocksモジュールをインストールするとlibmpiT.soが見つかりませんか?

私はluarocksがmpit-MVAPICH-1.rockspecを作る実行すると、私はエラーが表示されます。

Scanning dependencies of target mpiT 
[100%] Building C object CMakeFiles/mpiT.dir/mpiT.c.o 
In file included from /raid/ubuntu/mpiT/mpiT.c:18:0: 
/raid/ubuntu/mpiT/lua-mpi.h: In function ‘_MPI_Op’: 
/raid/ubuntu/mpiT/lua-mpi.h:51:1: warning: passing argument 2 of ‘luampi_push_MPI_Op’ from incompatible pointer type [enabled by default] 
MPI_STRUCT_TYPE(Op, MPI_DATATYPE_NULL) 
^ 
/raid/ubuntu/mpiT/lua-mpi.h:8:15: note: expected ‘MPI_Op’ but argument is of type ‘struct ompi_datatype_t *’ 
    static void luampi_push_MPI_##s(lua_State *L, MPI_##s init, int N) \ 
      ^
/raid/ubuntu/mpiT/lua-mpi.h:51:1: note: in expansion of macro ‘MPI_STRUCT_TYPE’ 
MPI_STRUCT_TYPE(Op, MPI_DATATYPE_NULL) 
^ 
Linking C shared module libmpiT.so 
/usr/bin/ld: cannot find -lpreloadable_libintl 
collect2: error: ld returned 1 exit status 
make[2]: *** [libmpiT.so] Error 1 
make[1]: *** [CMakeFiles/mpiT.dir/all] Error 2 
make: *** [all] Error 2 

何が起こっていますか?

編集:hugomg

luarocks make mpit-mvapich-1.rockspec 
cmake -E make_directory build && cd build && cmake .. \ 
-DCMAKE_C_COMPILER=${MPI_PREFIX}/bin/mpicc -DCMAKE_CXX_COMPILER=${MPI_PREFIX}/bin/mpicxx \ 
-DMPI_ROOT=${MPI_PREFIX} \ 
-DOPENMPI=0 \ 
-DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH="/home/ubuntu/dltools/distro/install/bin/.." -DCMAKE_INSTALL_PREFIX="/home/ubuntu/dltools/distro/install/lib/luarocks/rocks/mpit/mvapich-1" && make 

-- Found Torch7 in /home/ubuntu/dltools/distro/install 
MPI ROOT is /usr 
LMPI is /usr/lib/libchromeXvMC.so;/usr/lib/libblas.so;/usr/lib/libmpi_f90.so;/usr/lib/libibverbs.so;/usr/lib/libopenblas.so;/usr/lib/libf77blas.so;/usr/lib/libTHC.so;/usr/lib/libijs-0.35.so;/usr/lib/libmpi++.so;/usr/lib/libvdpau_ubuntu.so;/usr/lib/libcr.so;/usr/lib/liblapack.so;/usr/lib/libgettextlib-0.18.3.so;/usr/lib/libGraphicsMagickWand.so;/usr/lib/libopen-pal.so;/usr/lib/preloadable_libintl.so;/usr/lib/libmpi.so;/usr/lib/libsnappy.so;/usr/lib/libmca_common_sm.so;/usr/lib/libgettextsrc-0.18.3.so;/usr/lib/libfreeimage-3.15.4.so;/usr/lib/libopen-rte.so;/usr/lib/libcblas.so;/usr/lib/libluaT.so;/usr/lib/libqtlua.so;/usr/lib/libguilereadline-v-18.so;/usr/lib/libompitrace.so;/usr/lib/libchromeXvMCPro.so;/usr/lib/libopcodes-2.24-system.so;/usr/lib/libatlas.so;/usr/lib/libdsdp-5.8gf.so;/usr/lib/libTH.so;/usr/lib/libpulsecore-4.0.so;/usr/lib/libv8.so;/usr/lib/libGraphicsMagick.so;/usr/lib/libmpi_f77.so;/usr/lib/libmpif90.so;/usr/lib/libfreeimageplus-3.15.4.so;/usr/lib/liblapack_atlas.so;/usr/lib/libbfd-2.24-system.so;/usr/lib/libmpi_cxx.so;/usr/lib/libthreadsmain.so;/usr/lib/libcr_omit.so;/usr/lib/libcr_run.so;/usr/lib/libcompizconfig_gsettings_backend.so;/usr/lib/libqlua.so;/usr/lib/libluajit.so;/usr/lib/libmpif77.so 
LMCA is 
-- Configuring done 
CMake Warning at /home/ubuntu/dltools/distro/install/share/cmake/torch/TorchPackage.cmake:17 (ADD_LIBRARY): 
    Cannot generate a safe linker search path for target mpiT because files in 
    some directories may conflict with libraries in implicit directories: 

    link library [libTHC.so] in /usr/lib may be hidden by files in: 
     /home/ubuntu/dltools/distro/install/lib 
    link library [libluaT.so] in /usr/lib may be hidden by files in: 
     /home/ubuntu/dltools/distro/install/lib 
    link library [libqtlua.so] in /usr/lib may be hidden by files in: 
     /home/ubuntu/dltools/distro/install/lib 
    link library [libTH.so] in /usr/lib may be hidden by files in: 
     /home/ubuntu/dltools/distro/install/lib 
    link library [libthreadsmain.so] in /usr/lib may be hidden by files in: 
     /home/ubuntu/dltools/distro/install/lib 
    link library [libqlua.so] in /usr/lib may be hidden by files in: 
     /home/ubuntu/dltools/distro/install/lib 
    link library [libluajit.so] in /usr/lib may be hidden by files in: 
     /home/ubuntu/dltools/distro/install/lib 

    Some of these libraries may not be found correctly. 
Call Stack (most recent call first): 
    CMakeLists.txt:24 (ADD_TORCH_PACKAGE) 


CMake Warning at /home/ubuntu/dltools/distro/install/share/cmake/torch/TorchPackage.cmake:17 (ADD_LIBRARY): 
    Cannot generate a safe runtime search path for target mpiT because files in 
    some directories may conflict with libraries in implicit directories: 

    runtime library [libTHC.so] in /usr/lib may be hidden by files in: 
     /home/ubuntu/dltools/distro/install/lib 
    runtime library [libluaT.so] in /usr/lib may be hidden by files in: 
     /home/ubuntu/dltools/distro/install/lib 
    runtime library [libqtlua.so] in /usr/lib may be hidden by files in: 
     /home/ubuntu/dltools/distro/install/lib 
    runtime library [libTH.so] in /usr/lib may be hidden by files in: 
     /home/ubuntu/dltools/distro/install/lib 
    runtime library [libthreadsmain.so] in /usr/lib may be hidden by files in: 
     /home/ubuntu/dltools/distro/install/lib 
    runtime library [libqlua.so] in /usr/lib may be hidden by files in: 
     /home/ubuntu/dltools/distro/install/lib 
    runtime library [libluajit.so] in /usr/lib may be hidden by files in: 
     /home/ubuntu/dltools/distro/install/lib 

    Some of these libraries may not be found correctly. 
Call Stack (most recent call first): 
    CMakeLists.txt:24 (ADD_TORCH_PACKAGE) 


-- Generating done 
-- Build files have been written to: /raid/ubuntu/mpiT/build 
Linking C shared module libmpiT.so 
/usr/bin/ld: cannot find -lpreloadable_libintl 
collect2: error: ld returned 1 exit status 
make[2]: *** [libmpiT.so] Error 1 
make[1]: *** [CMakeFiles/mpiT.dir/all] Error 2 
make: *** [all] Error 2 

Error: Build error: Failed building. 

答えて

1

によって推奨されているように、詳細にcmakeをオンにしようとした実際のエラーは、GNUのlibcのの一部であるライブラリーである、それはpreloadable_libintl.soを見つけることができないということです。それは

sudo apt-get install libc6-dev 
+0

おかげで動作しない場合は、

sudo apt-get install libc6 

かで行方不明の依存関係をインストールしてください。私はそれらを試して、彼らはすでにインストールされていた。私もアップグレードしましたが、同じエラーです。それは間違ってリンクされているか、それを見つけることができませんか? preloadable_libintl.so を見つけるには、その – LKT

+0

/usr/lib/preloadable_libintl.so に位置がGCCおよび/またはldに渡されているかのフラグを確認する方法があることを述べていますか?私はcmakeに堪能ではありませんが、CMakelists.txtを編集して "冗長"モードにすることが可能でなければならないと思います – hugomg

関連する問題