2

このスクリプトで単純な .deb パッケージをビルドしようとすると、次のエラーで失敗します:

   dh_installexamples
   dh_installman
   dh_installcatalogs
   dh_installcron
   dh_installdebconf
   dh_installemacsen
   dh_installifupdown
   dh_installinfo
   dh_pysupport
   dh_installinit
   dh_installmenu
   dh_installmime
   dh_installmodules
   dh_installlogcheck
   dh_installlogrotate
   dh_installpam
   dh_installppp
   dh_installudev
   dh_installwm
   dh_installxfonts
   dh_bugfiles
   dh_lintian
   dh_gconf
   dh_icons
   dh_perl
   # Skipping dh_usrlocal - empty override
   dh_link
   dh_compress
   dh_fixperms
   dh_strip
   dh_makeshlibs
   dh_shlibdeps
dpkg-shlibdeps: error: couldn't find library libmono-2.0.so.1 needed by debian/7digital-mono/usr/usr/bin/monodis (ELF format: 'elf64-x86-64'; RPATH: '').
Note: libraries are not searched in other binary packages that do not have any shlibs or symbols file.
To help dpkg-shlibdeps find private libraries, you might need to set LD_LIBRARY_PATH.
dh_shlibdeps: dpkg-shlibdeps -Tdebian/7digital-mono.substvars debian/7digital-mono/usr/usr/bin/mono debian/7digital-mono/usr/usr/bin/mprof-report debian/7digital-mono/usr/usr/bin/mono-sgen debian/7digital-mono/usr/usr/bin/pedump debian/7digital-mono/usr/usr/bin/monograph debian/7digital-mono/usr/usr/bin/monodis debian/7digital-mono/usr/usr/lib/mono/4.5/mcs.exe.so debian/7digital-mono/usr/usr/lib/mono/4.5/mscorlib.dll.so debian/7digital-mono/usr/usr/lib/mono/2.0/mscorlib.dll.so debian/7digital-mono/usr/usr/lib/libMonoSupportW.so debian/7digital-mono/usr/usr/lib/libikvm-native.so debian/7digital-mono/usr/usr/lib/libmono-2.0.so.1.0.0 debian/7digital-mono/usr/usr/lib/libMonoPosixHelper.so debian/7digital-mono/usr/usr/lib/libmono-profiler-log.so.0.0.0 debian/7digital-mono/usr/usr/lib/libmono-profiler-cov.so.0.0.0 debian/7digital-mono/usr/usr/lib/libmono-profiler-aot.so.0.0.0 debian/7digital-mono/usr/usr/lib/libmonosgen-2.0.so.0.0.0 debian/7digital-mono/usr/usr/lib/libmono-profiler-iomap.so.0.0.0 returned exit code 2
make: *** [binary] Error 9
dpkg-buildpackage: error: fakeroot debian/rules binary gave error exit status 2

これが何を意味するか分かりますか?

4

2 に答える 2

3

これは、(ビルドプロセス中に)見つかったバイナリ(debian/7digital-mono/usr/usr/bin/monodis最終的には になる可能性が高い/usr/bin/monodis)がリンクしlibmono-2.0.so.1ているが、このファイルが見つからないことを意味します。

.so-file もパッケージの一部であると思われます (ただし、これについての手がかりはありません)。そのため、ターゲット システムにはまだインストールされていません。

私が最も奇妙だと思うのusrは、パスに が二重に出現していることです。これは、問題がどこにあるかをよく示している可能性があります。dpkg-shlibdeps (リンカーを使用) は、おそらく標準パスusr/lib(例:パッケージ パス (例: debian/7digital-mono/usr/lib)。debian/7digital-mono/usr/usr/lib

于 2013-03-04T07:18:08.500 に答える
1

それに応じてファイルを変更"debian/rules"して、正しいパスを示しますLD_LIBRARY

"dh binary-arch"rules ファイルで を検索し、

LD_LIBRARY_PATH=$(LD_LIBRARY_PATH):/usr/lib/i386-linux-gnu:/lib/i386-linux-gnu dh binary-arch

また

LD_LIBRARY_PATH=$(LD_LIBRARY_PATH):/path-1-to-shared-library:/path-2-to-shared-library dh binary-arch

また

LD_LIBRARY_PATH=$(LD_LIBRARY_PATH):/path-to-shared-library dh binary-arch
于 2014-06-24T04:27:28.457 に答える