Укажите отработанное время

Отработанное время:
Продуктивное время:
Bug 4449 - Сборка opennx для Windows   Make a simular bug
Summary: Сборка opennx для Windows
Status: ASSIGNED
Alias: None
Product: Сборка пакетов
Classification: Инфраструктура (Infrastructure)
Component: Сборка через Коринф (show other bugs)
Version: не указана
Hardware: PC All
: P2 major
Target Milestone: ---
Assignee: Константин Кондратюк
QA Contact: Константин Кондратюк
URL:
Whiteboard:
Keywords:
Depends on: 8875 9727
Blocks: 7513 9325
  Show dependency treegraph
 
In work:
Reported: 2009-11-12 18:31 MSK by Юрий Филь
Modified: 2018-02-05 21:59 MSK (History)
9 users (show)

See Also:
Заявки RT:
Связано с:
Дата напоминания: 2015-03-01


Attachments
Патч на кросс компиляцию (604 bytes, patch)
2010-11-18 03:58 MSK, Антон Азанов (Djelf)
Details | Diff
исправленный патч (657 bytes, patch)
2010-11-18 03:58 MSK, Юрий Филь
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Юрий Филь Живая Классика 2009-11-12 18:31:31 MSK
нужно собрать opennx для Windows.
Comment 1 Devaev Maxim Живая Классика 2009-11-20 15:12:49 MSK
Хорошо бы сделать это к релизу, чтобы клиент для всего был.
Comment 2 Boris Savelev Живая Классика 2009-11-20 16:06:52 MSK
Юра, в сизифе есть mingw32-wxGTK собранный в 4 конфигурациях. собирай со статическим, пжлста. Иначе дистриб распухнет в разы.
Comment 3 Юрий Филь Живая Классика 2009-11-23 17:44:10 MSK
Как я понял, выполняем секцию %prep из спека, потом - ./configure c исправленными для Винды опциями и make.

Пока неясно, с какими опциями запускать configure. 

Также непонятно, куда устанавливать бинарники в Винде, как планируется пакет распространять - CAB файлом, нужно будет написать setup.exe? 
Comment 4 Boris Savelev Живая Классика 2009-11-23 17:57:34 MSK
начать стоит со страницы разработчика.
http://www.fritz-elfert.de/downloads/

вот, примерно, как я собираю
/srv/boris/Projects/Sisyphus/mingw/altlinux/mingw32-opennx/
Comment 5 Юрий Филь Живая Классика 2009-11-23 19:43:19 MSK
У меня валится на

i586-pc-mingw32-g++ -DHAVE_CONFIG_H -I.     -pipe -Wall -O2 -march=i586 -mtune=i686 -Wp,-D_FORTIFY_SOURCE=2 -fexceptions --param=ssp-buffer-size=4 -mms-bitfields -MT bin2hdr.o -MD -MP -MF .deps/bin2hdr.Tpo -c -o bin2hdr.o bin2hdr.cpp
./bin2hdr tmpres.zip memres.h mem_res
./bin2hdr: ./bin2hdr: cannot execute binary file
Comment 6 Boris Savelev Живая Классика 2009-11-23 21:09:05 MSK
(In reply to comment #5)
> У меня валится на
> 
> i586-pc-mingw32-g++ -DHAVE_CONFIG_H -I.     -pipe -Wall -O2 -march=i586
> -mtune=i686 -Wp,-D_FORTIFY_SOURCE=2 -fexceptions --param=ssp-buffer-size=4
> -mms-bitfields -MT bin2hdr.o -MD -MP -MF .deps/bin2hdr.Tpo -c -o bin2hdr.o
> bin2hdr.cpp
> ./bin2hdr tmpres.zip memres.h mem_res
> ./bin2hdr: ./bin2hdr: cannot execute binary file
> 

это windows приложение. в линуксе его надо запускать в wine
Comment 7 Devaev Maxim Живая Классика 2010-01-19 21:07:03 MSK
Есть ли какой-то прогресс со сборкой? На сколько я могу судить, проблема уже решена:

[mdevaev@kompas mingw32-opennx]$ grep -R bin2 . | grep -v '.git'
./opennx/Makefile.am:noinst_PROGRAMS = bin2hdr
./opennx/Makefile.am:bin2hdr_SOURCES = bin2hdr.cpp
./opennx/Makefile.am:memres.h: tmpres.zip bin2hdr
./opennx/Makefile.am:   wine ./bin2hdr tmpres.zip memres.h mem_res
./opennx/bin2hdr.cpp:    fprintf(stderr, "Usage: bin2hdr <infile> <outfile> <identifier>\n");
[mdevaev@kompas mingw32-opennx]$ pwd
/srv/boris/Projects/Sisyphus/mingw/altlinux/mingw32-opennx
Comment 8 Антон Азанов (Djelf) 2010-01-21 13:19:28 MSK
Created attachment 1465 [details]
Патч на кросс компиляцию

wine@etersoft (1.0.12-eter1.1) не запускает bin2hdr без расширения exe
Патч решает проблему
Comment 9 Юрий Филь Живая Классика 2010-01-25 21:44:28 MSK
(In reply to comment #8)
> Created an attachment (id=1465) [details]
> Патч на кросс компиляцию
> 
> wine@etersoft (1.0.12-eter1.1) не запускает bin2hdr без
> расширения exe
> Патч решает проблему
> 

Спасибо за патч!
Проблему с запуском bin2hdr он действительно решает. Но пока непонятно, как включить сборку для Windows в korinf - не в .wine/dosdevices у меня не собралось.
Comment 10 Юрий Филь Живая Классика 2010-01-25 21:48:57 MSK
Created attachment 1472 [details]
исправленный патч

У меня собиралось с таким патчем.
Comment 11 Devaev Maxim Живая Классика 2010-02-11 21:47:55 MSK
Сейчас какая проблема со сборкой? Давайте решать.
Comment 12 Юрий Филь Живая Классика 2010-02-27 14:47:26 MSK
По спеку собрал RPM. Windows-пользователям, наверное, в таком виде opennx отдавать не надо.
Comment 13 Devaev Maxim Живая Классика 2010-02-27 14:59:27 MSK
http://stackoverflow.com/questions/911025/rpm-to-msi-wrapper

В идеале надо сделать либо setup.exe, либо msi
Comment 14 Boris Savelev Живая Классика 2010-02-27 15:23:26 MSK
в сизифе есть minwd32-nsis который прекрасно делает инсталяторы.
пример http://git.etersoft.ru/people/boris/packages/nxclient-win.git

сам автор пользуется innosetup
Comment 15 Юрий Филь Живая Классика 2010-02-27 16:09:24 MSK
Я запаковал
7z a -o{%PROGRAMFILES%} -sfx opennx_setup.exe usr
, сложил в /var/ftp/pub/Etersoft/RX@Etersoft/unstable/Windows.

Нужно проверить, как установится.
Если не получится, ждем, пока поставят на билдер minwd32-nsis или innosetup.
Comment 16 Devaev Maxim Живая Классика 2010-02-27 16:27:44 MSK
Экзешник вылетает с ошибкой "Программа не умещается в памяти". Память при этом есть.
Comment 17 Антон Азанов (Djelf) 2010-02-27 17:07:49 MSK
Фрица удалось немного "продавить" по поводу использования уже скомпилированных NX библиотек:
В версии 0.16.0.493 для сборки пакета OpenNX для Win32 под InnoSetup нужно установить последний на Wine, распаковать NXClient в /opennx/packaging/win32/cygnx/{app}
./configure запускать с ключами --with-orignx --with-nxwin --with-wine-iscc=ПутьК+ISCC.exe
Теоретически, все должно собраться, практически нет - makefile кривоват.
Без моих патчей (выложенных к более старой версии на unixforum) с библиотеками NX работоспособность нулевая. Новый комплект патчей есть, Фрицу баги отослал. Он попросил подождать: говорит "все будет, просто подождите". 
Comment 18 Vitaly Lipatov Живая Классика 2010-02-27 17:38:08 MSK
(In reply to comment #15)
> Я запаковал
> 7z a -o{%PROGRAMFILES%} -sfx opennx_setup.exe usr
> , сложил в /var/ftp/pub/Etersoft/RX@Etersoft/unstable/Windows.
> 
> Нужно проверить, как установится.
> Если не получится, ждем, пока поставят на
> билдер minwd32-nsis или innosetup.
Давно стоит:
[lav@builder tools]$ rpm -qa | grep nsis
mingw32-nsis-2.45-alt1


Comment 19 Devaev Maxim Живая Классика 2010-03-05 15:07:56 MSK
Отвязываю от релиза RX 1.1
Comment 20 Денис Баранов Живая Классика 2013-06-11 18:42:06 MSK
Пытался собрать, застрял на ошибке:
pulsecore/core-util.c:867: error: 'regex_t' undeclared (first use in this function)
pulsecore/core-util.c:867: error: (Each undeclared identifier is reported only once
pulsecore/core-util.c:867: error: for each function it appears in.)
pulsecore/core-util.c:867: error: expected ';' before 're'
pulsecore/core-util.c:868: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
pulsecore/core-util.c:870: warning: implicit declaration of function 'regcomp' [-Wimplicit-function-declaration]
pulsecore/core-util.c:870: error: 're' undeclared (first use in this function)
Comment 21 Станислав Коробейников Живая Классика 2013-06-12 11:59:51 MSK
На builder-е в mingw есть файл regex.h. 

В файле win32/pulse/pulsaudio-*.congig.h.in есть строка 
/* Define to 1 if you have the <regex.h> header file. */
#undef HAVE_REGEX_H

Думаю надо как-то переопределить. Может в configure.
Comment 22 Vitaly Lipatov Живая Классика 2013-10-17 13:24:26 MSK
(В ответ на comment #21)
> На builder-е в mingw есть файл regex.h. 
> 
> В файле win32/pulse/pulsaudio-*.congig.h.in есть строка 
> /* Define to 1 if you have the <regex.h> header file. */
> #undef HAVE_REGEX_H
> 
> Думаю надо как-то переопределить. Может в configure.
Да, при сборке mingw-pulseaudio.
Comment 23 Korablin Victor Живая Классика 2013-12-25 13:10:01 MSK
Возникла проблема. Сборку осуществлял согласно тому, как написано в packaging/win32/cygnx/readme. На этапе конфигурации возникает следующее:  

[korablin@builder64 opennx]$ mingw32-configure \
    --enable-staticwx \
    --with-orignx \
    --with-dllpath=/usr/i686-pc-mingw32/sys-root/mingw/bin \
    --with-wx-config=/usr/i686-pc-mingw32/sys-root/mingw/bin/wx-config \
    --with-wine-iscc="$HOME/.wine/drive_c/Program\ Files/Inno\ Setup\ 5/ISCC.exe"
...
...
...
checking for wxWidgets version >= 2.8.0 (--debug=no --unicode=yes
--static=no)... no
configure: error: Could not find wxWidgets library

mingw32-wxGTK-2.8.10-alt5 на builder64 есть. На простом builder то же самое.
Comment 24 Vitaly Lipatov Живая Классика 2013-12-25 13:54:55 MSK
(В ответ на comment #23)
...
> checking for wxWidgets version >= 2.8.0 (--debug=no --unicode=yes
> --static=no)... no
> configure: error: Could not find wxWidgets library
Ну так что пишется в config.log ?
Comment 25 Vitaly Lipatov Живая Классика 2013-12-25 16:59:57 MSK
(В ответ на comment #24)
> Ну так что пишется в config.log ?

А пишется туда следующее:
configure:18206: will enable unicode build
configure:18224: will link against static wxWidgets libs
configure:18266: checking for wx-config
configure:18269: result: /usr/i586-pc-mingw32/sys-root/mingw/bin/wx-config
configure:18324: checking for wxWidgets version >= 2.8.0 (--debug=no --unicode=yes --static=yes)
configure:18437: result: no
configure:18476: error: Could not find wxWidgets library


Запустил конфигурирование вручную:
$ /usr/i586-pc-mingw32/sys-root/mingw/bin/wx-config --debug=no --unicode=yes --static=yes --libs

  Warning: No config found to match: /usr/i586-pc-mingw32/sys-root/mingw/bin/wx-config --static=yes --libs
           in /usr/i586-pc-mingw32/sys-root/mingw/lib/wx/config
  If you require this configuration, please install the desired
  library build. 


Поставил mingw32-wxGTK-static. Ошибка ушла.
Comment 26 Korablin Victor Живая Классика 2013-12-26 12:34:32 MSK
(In reply to comment #25)

> Поставил mingw32-wxGTK-static. Ошибка ушла.

Да, на этапе конфигурации ошибки больше нет. 
Команда конфигурации:
[korablin@builder64 opennx]$ mingw32-configure     --enable-staticwx     --with-orignx     --with-dllpath=/usr/i586-pc-mingw32/sys-root/mingw/bin     --with-wx-config=/usr/i586-pc-mingw32/sys-root/mingw/bin/wx-config     --with-wine-iscc="$HOME/.wine/drive_c/Program\ Files/Inno\ Setup\ 5/ISCC.exe"

Теперь возникает следующая ошибка: как и сказано в readme, после конфигурации запускаю make dist-platform. После прохода по части каталогов, происходит работа в основном каталоге и вот результат:
make[2]: Вход в каталог `/srv/korablin/Projects/Copy/opennx'
  CXX    opennx-AboutDialog.o
  CXX    opennx-AsyncProcess.o
  CXX    opennx-LibOpenSC.o
  CXX    opennx-CardWaiterDialog.o
  CXX    opennx-ConnectDialog.o
  CXX    opennx-ExtHtmlWindow.o
  CXX    opennx-ForeignFrame.o
  CXX    opennx-Icon.o
  CXX    opennx-LogDialog.o
  CXX    opennx-KeyDialog.o
  CXX    opennx-LibUSB.o
  CXX    opennx-LoginDialog.o
  CXX    opennx-mylog.o
  CC     opennx-md5.o
  CXX    opennx-MyIPC.o
  CXX    opennx-MyDynlib.o
  CXX    opennx-MySession.o
  CXX    opennx-MyValidator.o
  CXX    opennx-MyWizard.o
  CXX    opennx-MyXmlConfig.o
  CXX    bin2hdr.o
  CXXLD  bin2hdr.exe
  GEN    memres.h
/bin/sh: ./bin2hdr.exe: не могу запустить бинарный файл
make[2]: *** [memres.h] Ошибка 126
make[2]: Выход из каталога `/srv/korablin/Projects/Copy/opennx'
make[1]: *** [all-recursive] Ошибка 1
make[1]: Выход из каталога `/srv/korablin/Projects/Copy/opennx'
make: *** [all] Ошибка 2
Comment 27 Vitaly Lipatov Живая Классика 2013-12-26 15:41:56 MSK
(В ответ на comment #26)
...
> /bin/sh: ./bin2hdr.exe: не могу запустить бинарный файл

Ты внимательно прочитал всю эту багу? См.
https://bugs.etersoft.ru/show_bug.cgi?id=4449#c10
Comment 28 Korablin Victor Живая Классика 2013-12-27 12:59:03 MSK
Патч помог решить проблему запуска bin2hdr(вторая его часть, на строках 161-162 уже была в версии, которая у нас в репозитории). 

Однако сборка все равно не удается. Возникают ошибки при сборке файлов speexenc.c skeleton.h, причем ошибки эти связаны с синтаксисом в файлах.
Comment 29 Konstantin Artyushkin Живая Классика 2014-09-17 14:51:10 MSK
Отложил до декабря
Comment 30 Konstantin Artyushkin Живая Классика 2015-02-02 12:23:38 MSK
Отложил до марта
Comment 31 dimbor 2015-04-12 20:48:33 MSK
Прошел сей тернистый путь по случаю.  Не с вашим кодом, но близко достаточно.
Возможно квест пригодится и здесь.
http://unixforum.org/index.php?s=&showtopic=100412&view=findpost&p=1275686
Comment 32 Vitaly Lipatov Живая Классика 2015-05-02 13:55:41 MSK
(Ответ dimbor на комментарий31)
> Прошел сей тернистый путь по случаю.  Не с вашим кодом, но близко достаточно.
> Возможно квест пригодится и здесь.
> http://unixforum.org/index.php?s=&showtopic=100412&view=findpost&p=1275686

Спасибо!
Comment 33 Vitaly Lipatov Живая Классика 2015-07-24 20:16:19 MSK
Инструкция по сборке под Windows:
http://unixforum.org/index.php?showtopic=100412&st=210&start=210
Comment 34 Станислав Коробейников Живая Классика 2017-01-30 18:54:09 MSK
Собирал под альт не очень получилось началась сборка pulse, и она начала требрвать разное ( типа mingw32-libogg и mingw32-libltdl) и если libogg было собрано, то libltdl была собрана старая и неподходящая версия. 
Начал собирать под fedora. 
Пришлось поставить разные пакеты mingw и потом ещё много для сборки типа autoconf, zip, wine 
Пока тоже не собралось 
wine: cannot find L"unix\\srv\\stas\\Projects\\rxclient-f\\opennx\\bin2hdr.exe"
C bin2hdr.exe всё в порядке. Что-то с путями. wine ставил из федоровских реп. В alt'е с этим было всё в порядке.
Comment 35 dimbor 2017-01-31 18:45:56 MSK
Очень хорошее начинание. От девятого пульса под винду никто бы не отказался. Даже у x2go-ншиков он еще шестой, да еще очень нехороший. В свое время я таковую сборку не осилил и в своем пакете просто беру бинари под винду у них - http://code.x2go.org/gitweb?p=x2goclient-contrib.git;a=summary
Comment 36 Станислав Коробейников Живая Классика 2017-02-02 18:37:35 MSK
fedora64
Получил ошибку
configure.in:13: error: possibly undefined macro: AM_PROG_LIBTOOL
Воспользовался советом:
https://bugs.etersoft.ru/show_bug.cgi?id=2123#c4

Поставил mingw32-libgnurx, для regexp


Обзая схема сборки до того момента, до которого дошёл я:
autoreconf

./configure --host=i686-w64-mingw32 --with-dllpath=/usr/i686-w64-mingw32/sys-root/mingw/bin/ --with-nxproto=3.5.0 --with-wxdir=/usr/i686-w64-mingw32/sys-root/mingw/bin/ --enable-staticwx CFLAGS="-static-libstdc++ -static-libgcc"  CXXFLAGS="-static-libstdc++ -static-libgcc" -with-wine-iscc="$HOME/.wine/drive_c/Program\ Files/Inno\ Setup\ 5/ISCC.exe" --prefix=/usr/i686-w64-mingw32 --with-nxwin --with-orignx

Дальше я применил вручную пачи, котороые есть в баге
+memres.h: tmpres.zip bin2hdr$(EXEEXT)
+	wine ./bin2hdr$(EXEEXT) tmpres.zip memres.h mem_res

Далее всё собирается до момента сборки pulse, который он откуда-то качает.

После этого получил ошибку:
pulse/pulseaudio-1.0-fe-20111209

json_tokener.c:120:5: error: nonnull argument 'str' compared to NULL [-Werror=nonnull-compare]
   if(str) {
   /srv/stas/Projects/rxclient-f/opennx/packaging/win32/pulse/json-c-0.9
   
В Makefile.am по этому адресу добавил    
-Wno-nonnull-compare 
в AM_CFLAGS 

После получил ошибку:
  CCLD   libpulsecommon-1.0.la
.libs/libpulsecommon_1.0_la-core-util.o: In function `pa_match':
/srv/stas/Projects/rxclient-f/opennx/packaging/win32/pulse/pulseaudio-1.0-fe-20111209/src/pulsecore/core-util.c:870: undefined reference to `regcomp'
/srv/stas/Projects/rxclient-f/opennx/packaging/win32/pulse/pulseaudio-1.0-fe-20111209/src/pulsecore/core-util.c:875: undefined reference to `regexec'
/srv/stas/Projects/rxclient-f/opennx/packaging/win32/pulse/pulseaudio-1.0-fe-20111209/src/pulsecore/core-util.c:882: undefined reference to `regfree'
/srv/stas/Projects/rxclient-f/opennx/packaging/win32/pulse/pulseaudio-1.0-fe-20111209/src/pulsecore/core-util.c:882: undefined reference to `regfree'
 
 Не знаю, почему так, но в сборочном скрипте не указн libregex
 Для сеюминутной сборки добавил в Makefile packaging/win32/pulse/pulseaudio-1.0-fe-20111209/src:
 libpulsecommon_1.0_la_LIBADD = $(AM_LIBADD) \
	$(LIBWRAP_LIBS) $(WINSOCK_LIBS) $(LTLIBICONV) \
	$(LIBSNDFILE_LIBS) $(am__append_24) $(am__append_28) -lregex
	
К сожалению, при пересборке этот Makefile перезаписывается. Нужно как-то оформить его в пач packaging/win32/pulse/patches
Comment 37 Константин Кондратюк Живая Классика 2017-03-16 13:13:00 MSK
(Ответ Станислав Коробейников на комментарий36)
>  Не знаю, почему так, но в сборочном скрипте не указн libregex
>  Для сеюминутной сборки добавил в Makefile
> packaging/win32/pulse/pulseaudio-1.0-fe-20111209/src:
>  libpulsecommon_1.0_la_LIBADD = $(AM_LIBADD) \
> 	$(LIBWRAP_LIBS) $(WINSOCK_LIBS) $(LTLIBICONV) \
> 	$(LIBSNDFILE_LIBS) $(am__append_24) $(am__append_28) -lregex
> 	
> К сожалению, при пересборке этот Makefile перезаписывается. Нужно как-то
> оформить его в пач packaging/win32/pulse/patches

Перенёс исправления в MakeFile.in, сформировал pulseaudio-win32.patch в патчах. Не знаю пока, применяется ли автоматически или нет.


Далее встретил ошибку в SimpleXauth.cpp. Она заключалась элементарно в том, что у статической функции wxStringHash::wxCharStringHash пропустили двоеточия. Исправил, закоммитил.


Результат: собрался rxclient.exe
Comment 38 Константин Кондратюк Живая Классика 2017-03-16 17:07:01 MSK
(Ответ Станислав Коробейников на комментарий36)
> json_tokener.c:120:5: error: nonnull argument 'str' compared to NULL
> [-Werror=nonnull-compare]
>    if(str) {
>    /srv/stas/Projects/rxclient-f/opennx/packaging/win32/pulse/json-c-0.9
>    
> В Makefile.am по этому адресу добавил    
> -Wno-nonnull-compare 
> в AM_CFLAGS 

Для этого тоже оформил патч, закоммитил. Теперь pulse (и всё остальное) собирается без ошибок.
Comment 39 Константин Кондратюк Живая Классика 2017-03-16 17:17:13 MSK
Сборка дистрибутива осложняется тем, что пытаемся выкачать установщик nxclient, а на сайте nomachine давно всё почищено. Произвольный установщик не подходит по версии. Тем не менее удалось узнать, что nxclient-3.4.0.5, который есть у нас на ftp, подходит для парсинга.

Далее потребовалось настроить корректный путь для wine, добавить симлинк на каталог сборки в dosdevices.

Следующая проблема: ошибки в opennx.inss, допущенные при переименовании пакета. Их нужно исправить.


Если поправить имена файлов, то дальше успешно собирается установщик RX Client.

P.S. Устанавливается идеально, но падает при запуске.
Comment 40 Константин Кондратюк Живая Классика 2017-03-17 12:26:55 MSK
Пересобрал с обновлённым mingw. Внезапно возникла ошибка при попытке установки: "The setup files are corrupted. Please obtain a new copy of the program."

Обновил версию innounp, использующуюся для парсинга nxclient. Заодно стало возможно использовать более новые установщики nxclient и не получать конфликт версий.

Новый инсталлятор запускается и работает. Далее успешно запускается rxclient.exe, там можно создать сессию. При попытке подключиться или зайти в настройки — падает.
Comment 41 Константин Кондратюк Живая Классика 2017-03-17 13:38:06 MSK
Падение rxclient, запущенного в wine:

Unhandled exception: page fault on read access to 0x00000000 in 32-bit code (0x00000000).
Register dump:
 CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
 EIP:00000000 ESP:00cdf2ec EBP:0014c758 EFLAGS:00210206(  R- --  I   - -P- )
 EAX:00040026 EBX:00cddd74 ECX:00cddd74 EDX:00cddd74
 ESI:00000000 EDI:00cdf3dc
Stack dump:
0x00cdf2ec:  0065336b 00cdf3dc 008e7ba0 009085e6
0x00cdf2fc:  00cdf310 006cf43e 00cdf2c0 00cdf600
0x00cdf30c:  00cfff88 00000000 00cdf3dc 0014c758
0x00cdf31c:  00653395 00cddd74 00cdf3dc 009085e6
0x00cdf32c:  00cdf340 006cf43e 00cdf2f0 00000000
0x00cdf33c:  003bb7f8 00000000 00cdf3dc 0014c758
Backtrace:
=>0 0x00000000 (0x0014c758)
  1 0x00000000 (0x009ca174)
  2 0x0044dd7e in rxclient (+0x4dd7d) (0x005a8ee0)
  3 0x768dc300 (0x9dc298b8)
0x00000000: -- no code accessible --
Comment 42 Vitaly Lipatov Живая Классика 2017-03-17 23:24:38 MSK
(Ответ Константин Кондратюк на комментарий41)
> Падение rxclient, запущенного в wine:
$ winedbg rxclient.exe
Comment 43 Константин Кондратюк Живая Классика 2017-10-13 21:02:46 MSK
Вернулся к вопросу сборки для Windows, чтобы попробовать включить отладку.

Встретил проблему отсутствия функции getuid в mingw32, из-за чего не собирается один из компонентов pulseaudio. Не понятно, как собиралось раньше. Возможно, я собирал не полностью, а используя какие-то готовые бинарники. В качестве быстрого хака для прохождения сборки убрал использование getuid - сборка прошла. Если использование в ближайшее время не понадобится, можно сделать ещё один патч, накладываемый при разворачивании сборочницы pulse.

Включение в CFLAGS и CXXFLAGS ключа -g не помогает, сборка всё равно не даёт внятного backtrace при падении.
Comment 44 Dmitry Timoshkov Живая Классика 2017-10-19 13:46:57 MSK
Константин попросил меня посмотреть на причину падения rxclient.exe и
отправил мне бинарники собранные с отладочной информацией. К сожалению,
IDA как и winedbg не видит никакой отладочной информации и соответственно
ассемблерный листинг не позволяет увидеть реального куска кода, в котором
происходит падение. Поэтому предлагаю сосредоточиться на задаче 12014 и
научиться создавать бинарники с отладочной информацией, которую хоть кто-то
понимает.

Одно можно сказать более-менее уверенно: так как аналогичные падения
происходят как под Wine так и под Windows, то это проблема с RX client,
а не с Wine.
Comment 45 Dmitry Timoshkov Живая Классика 2017-10-19 13:53:13 MSK
(In reply to Dmitry Timoshkov from comment #44)
> Константин попросил меня посмотреть на причину падения rxclient.exe и
> отправил мне бинарники собранные с отладочной информацией. К сожалению,
> IDA как и winedbg не видит никакой отладочной информации и соответственно
> ассемблерный листинг не позволяет увидеть реального куска кода, в котором
> происходит падение. Поэтому предлагаю сосредоточиться на задаче 12014 и
> научиться создавать бинарники с отладочной информацией, которую хоть кто-то
> понимает.
> 
> Одно можно сказать более-менее уверенно: так как аналогичные падения
> происходят как под Wine так и под Windows, то это проблема с RX client,
> а не с Wine.

Забыл добавить, что +relay,+seh,+tid,+snoop создает максимально подробный
лог, включая вызовы внутренних DLL, поставляемых с RX Client, но из лога
совершенно неочевидна причина падения.
Comment 46 Konstantin Artyushkin Живая Классика 2018-02-05 21:59:39 MSK
Насколько я понимаю все наработки перешли в проект rxclient?