2011-01-12 1 views
1

Я разработал довольно средний инструмент Mono на моей машине Ubuntu 10.10 (Meverick), скомпилированный с Mono 2.6. Программа работает нормально, без каких-либо проблем. Затем я дал инструмент одному из моих коллег для тестирования, который все еще использует Ubuntu 10.04 (Lucid) и Mono 2.4. Он не может запустить программу. Мы обновили Mono на своей машине до версии 2.6, используя скрипт badgerports, но не повезло. Он запускается, но сбой немедленно с ошибкой SEGSIGV. Я сомневаюсь, что это происходит потому, что на вашем компьютере отсутствует пакет lib. Но как мне пойти и выяснить, какие зависимости ему нужно для запуска программы? Я знаю, что есть раздел, в котором вы можете указать, какие библиотеки вам нужны при создании установщика .deb. Но какие библиотеки и какие версии я должен включить для проверки?Поиск зависимости приложения для программы, написанной в Mono

+0

Пожалуйста, опубликуйте весь результат. – ulrichb

+0

Пожалуйста, запустите его в gdb и разместите backtrace, когда произойдет сигсегв. –

+0

Вы нашли решение в среднем? Я просто столкнулся с той же проблемой. – RobinJ

ответ

0

Может getlibs Ваш ответ: http://ubuntuforums.org/showthread.php?t=474790

или более простой способ здесь: добавить HTTP здесь, потому что я не могу отправить второе звено, linux.byexamples.com/archives/409/how-to- используемые в библиотеке-списке-shared-library-used-by-an-application/

В основном используйте ldd -v в своей программе, чтобы узнать, что требуется.

Первое решение устанавливает необходимый вам материал. Второй дает вам список необходимых.

ж

+0

ldd не работает. Это то, что я получаю: не динамический исполняемый файл. – ashokgelal

0

Для более новых версий Mono AsmSpy делает трюк.
Работал нормально с текущей стабильностью (Mono 4.4.2) - я загрузил prebuilt version from AppVeyor.