LINUX.ORG.RU

Dosbox, Ubuntu, core=dynamic

 


0

1

Просто любопытно. Может у кого-нибудь найдётся время поговорить и пояснить.

Иногда гоняю старые программки под Dosbox (по моему - удивительная ирония судьбы в том, что при наличии эмулятора под любую ОС эти древние программы сейчас оказались самые платформонезависимые, каким бы жутким ассемблером они не писались)

В Ubuntu, к сожалению, Dosbox сваливается при конфигурации с core=dynamic. (Само окно схлопывается с сообщением «Exit to error: DRC64:Unhandled memory reference»)

У меня параллельно установлены разные линуксы. Так вот, если сидя в Ubuntu запускать бинарник dosbox из примонтированных /mnt/fedora/usr/bin или /mnt/suse/usr/bin, то он прекрасно работает под Ubuntu с тем же конфигом (core=dynamic).

Декларативно версия Dosbox одна и та же везде (0.74).

Собственно, любопытство вызывает что именно происходит. Точно не ядро в линуксах. Точно не библиотеки. Это или какие-то опции компилятора при сборке dosbox должны быть (какие? можно как-то узнать как собирался он в федора или сусе?), или какие-то собственные патчи мейнтейнеров (?) (а так бывает, что один и тот же с виду пакет собирается с разными исходниками по сути? т.е. получается, что пакет АБВГД под Ubuntu и пакет АБВГД под SUSE - буква в букву и с точностью до версии - запросто могут быть совсем разными пакетами?).

Перемещено Shaman007 из talks

Deleted

Мне тоже любопытно. Вот в Debian 9 и 8 версии DOSBox почти идентичны, но при этом в 9 он не может монтировать .iso как D: — пришлось даунгрейдить, тот работает нормально.

Vsevolod-linuxoid ★★★★★
()

В ядре есть несколько опций, которые повышают безопасность системы, но мешают работе всяких эмуляторов, в т.ч. Dosbox.

h31 ★★★★
()
Ответ на: комментарий от h31

Это более/менее можно себе представить про ядро.

Удивление то как раз в том, что разница только (исключительно ТОЛЬКО) в самом собранном бинарнике. Ни пакетный убунтовский досбокс, ни собранный из исходников (только что проверял) с настройками по умолчанию - не запускаются с core=dynamic.

Что федоровцы/сусевцы подмешивают в сам бинарник досбокс, отчего он запускается на этой же убунте?

Deleted
()

Как собирается в Федоре: https://src.fedoraproject.org//cgit/rpms/dosbox.git/tree/

Команды сборки находятся в файле dosbox.spec.

Из дополнительных ключей (кроме общих ключей, используемых для сборки всех пакетов в Федора) там передаётся только --enable-core-inline в configure.

Ещё там применяется 5 патчей.

cdslow ★★
()
Ответ на: комментарий от cdslow

Вот спасибо. Это именно то, о чём спрашивал. С этой информацией даже один раз смог собрать из исходников рабочий бинарник для dynamic. Правда повторить не смог второй раз. Интересно.

До этого дня думал, что дистрибутиво-строители линуксов не вмешиваются так глубоко в функциональность приложений. Шут с ним с досбоксом. А если какой-нибудь широкоприменяемый пакет одной и той же версии х.х вдруг стал вести себя по разному в Debian и в CentOS, причем не на уровне конфигов и настроек, а прям на уровне исходников и сборки - неужели никто бы не удивился?

Тема, видимо исчерпана. Ответ получен. Спасибо ещё раз.

Deleted
()
Ответ на: комментарий от Deleted

До этого дня думал, что дистрибутиво-строители линуксов не вмешиваются так глубоко в функциональность приложений. Шут с ним с досбоксом. А если какой-нибудь широкоприменяемый пакет одной и той же версии х.х вдруг стал вести себя по разному в Debian и в CentOS, причем не на уровне конфигов и настроек, а прям на уровне исходников и сборки - неужели никто бы не удивился?

В ходовых дистрах много софта патчено-перепатчено. Мейтенеры фиксят баги (и отправляют фиксы в апстрим) и добавляют свои.

На счет dosbox:

https://packages.debian.org/testing/dosbox
http://metadata.ftp-master.debian.org/changelogs/main/d/dosbox/dosbox_0.74-4.3_changelog
https://packages.ubuntu.com/bionic/dosbox
http://changelogs.ubuntu.com/changelogs/pool/universe/d/dosbox/dosbox_0.74-4.3/changelog

Читаем changelog:


dosbox (0.74-4.3) unstable; urgency=medium

  * non-maintainer upload.
  * Update 64bit dynamic recompiler to the most recent upstream version.
    This solves a crash with core=dynamic and comes with a couple of other
    fixes (Closes: #857341, #799586).

 -- Alberto Garcia <berto@igalia.com>  Mon, 25 Sep 2017 20:42:37 +0300

dosbox (0.74-4.2) unstable; urgency=medium

  * non-maintainer upload
  * allow dosbox to satisfy dependencies from other architectures
    (Multi-Arch: foreign) - thanks Jens Reyer (Closes: #801615)

 -- Graham Inggs <ginggs@debian.org>  Tue, 13 Oct 2015 16:54:56 +0200

dosbox (0.74-4.1) unstable; urgency=medium

  * non-maintainer upload
  * improve interoperability with Wine (Closes: #789092)
    - allow Wine to move Z: mount (SVN r3736)
    - work with Wine-style name mangling (SVN r3742)
  * compile with -D_FILE_OFFSET_BITS=64 to fix mount failure
    with inodes > 2^32 - thanks Vladislav Naumov (Closes: #792886)

 -- Graham Inggs <ginggs@debian.org>  Wed, 07 Oct 2015 11:39:45 +0200

dosbox (0.74-4) unstable; urgency=medium

  * bump debhelper dependency and compat level to 9 to automatically enable
    hardening flags
  * restrict watch file to source tarballs
  * add debian/patches/fix-ftbfs-format-security.patch to fix build
    failure with -Werror=format-security
  * use autotools-dev
    - debian/control: add autotools-dev to Build-Depends
    - debian/rules: add --with autotools_dev to dh invocation
  * use canonical Vcs-* URLs
  * add Keywords to debian/dosbox.desktop, fix German comment spelling
  * apply patches by Rodrigo Silva to add larger multiple size icons and
    remove old pixmap icon (Closes: #756739) and remove old pre-XDG menu file
    (Closes: #619013)
  * switch debian/copyright to machine readable format
  * bump Standards-Version to 3.9.6 (no changes)

 -- Jan Dittberner <jandd@debian.org>  Thu, 09 Oct 2014 22:42:16 +0200

dosbox (0.74-3) unstable; urgency=low

  * Fix manpage bugs by updating debian/patches/fix_manpage_errors.patch
    (Closes: #644936)
  * Bump Standards-Version to 3.9.3 (no changes)
  * change Build-Depends, change from libpng12-dev to libpng-dev (Closes:
    #662303)

 -- Jan Dittberner <jandd@debian.org>  Mon, 05 Mar 2012 21:07:13 +0100

dosbox (0.74-2) unstable; urgency=low

  * Fix "FTBFS: ../../include/dos_inc.h:543:78: error: expected primary-
    expression before ',' token" add patch from upstream SVN as
    debian/patches/ftbfs624976_upstream_svn3691.patch (Closes: #624976)
  * fix another spelling error in man page in
    debian/patches/fix_manpage_errors.patch
  * Bump Standards-Version to 3.9.2 (No changes needed) in
    debian/control
  * fix description synopsis to not start with an article

 -- Jan Dittberner <jandd@debian.org>  Mon, 02 May 2011 21:20:37 +0200

dosbox (0.74-1) unstable; urgency=low

  * New upstream release.
  * remove debian/README.source because repacking is not required
  * remove version mangling from debian/watch
  * update debian/README.Debian, remove outdated note regarding removed
    files
  * remove Debian patches that have been applied upstream
   - debian/patches/fix_spelling_errors.patch
   - debian/patches/remove_fmopl_code.patch
   - debian/patches/remove_ymf262_code.patch
  * refresh debian/patches/fix_manpage_errors.patch
  * debian/control: update Standards-Version to 3.8.4, no changes needed

И вот багрепорты:

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=624976
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=756739
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=792886
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=789092
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=799586
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=801615
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=857341

Root-msk ★★★★★
()
Ответ на: комментарий от Root-msk

О, как )

Тогда неожиданно возник другой вопрос (простите если тупые вопросы задаю).

Вот я тут у себя читаю:

$ uname -a
Linux host1 4.13.0-32-generic #35-Ubuntu SMP Thu Jan 25 09:13:46 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

$ lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 17.10
Release:	17.10
Codename:	artful

$ sudo apt-get update
Чтение списков пакетов… Готово

$ apt show dosbox
Package: dosbox
Version: 0.74-4.2build1

Это значит что что? Что сентябрьское обновление 0.74-4.3 ещё не долетело до artful? Что это обновление вообще как-то мимо artful? Это откуда changelog? На всякий случай в виртуалке Debian 9 апнул и посмотрел - там тоже нет такого сегодня. Запутался.

Стоп. Всё, понял, пардон. Это из тестинга и бионика логи. Ей богу, без задней мысли спрашивал.

Deleted
()
Ответ на: комментарий от Deleted

неужели никто бы не удивился?

А чему здесь удивляться? Одни ваяют для души(честь и хвала), а другие работают за деньги(no comments).

papin-aziat ★★★★★
()
Ответ на: комментарий от Deleted

Надо просить на ланчпаде, чтобы бэкпортировали патч в стабильную версию Убунты. В идеале - прислать готовый патч.

h31 ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.