LINUX.ORG.RU

История изменений

Исправление Xintrea, (текущая версия) :

Ну я поковырял немного и вот что выяснил.

Даже после закрытия и эмулятора, и Qt Creator, в системе продолжает висеть процесс:

adb -P 5037 fork-server server


Из-за него повторный запуск отладки невозможен.

Но и это еще не все. Даже если грохнуть этот процесс, эмулятор не будет запускаться. А все потому что в /tmp лежат «забытые» файлы и каким-то образом влияют на загрузку эмулятора.

$ pwd
/tmp/android-xi

xi:android-xi$ ls -l
итого 1127512
-rw------- 1 xi xi 576716800 янв  4 19:20 emulator-eBMhp9
-rw------- 1 xi xi 576716800 янв  4 19:32 emulator-Wo92s2
srwxr-xr-x 1 xi xi         0 янв  4 18:54 qemu-gles-5606
srwxr-xr-x 1 xi xi         0 янв  4 19:20 qemu-gles-6921
srwxr-xr-x 1 xi xi         0 янв  4 19:32 qemu-gles-7338



То есть, если убить и процесс, и удалить «забытые» файлы, то эмулятор начинает нормально запускаться.

Подводя итог запуска эмулятора, перед запуском отладки, если эмулятор еще не включен, следует выполнить команду:

killall adb ; rm -f -r -d /tmp/android-* ;


Вроде бы проблема решена.

Но вылезло еще три напасти.

1. Теперь моя программа в эмуляторе сегфолтится после первого экрана. Запустить ее я смог только один раз сегодня в обед. Самое интересное, что я ничего в программе не менял, ни строчки кода. Она сегфолтится даже после полной перезагрузки компа и запуска всего «на чистую» в первый раз.

Вообще не знаю что делать.


2. Похоже, что под Андроидом некорректно работает установка обработчика отладочного вывода. После команды:

qInstallMessageHandler(myMessageOutput);


строка, которую при обычных условиях выдает в консоль qDebug():

qDebug() << "Это отладочное сообщение";


не попадает в функцию myMessageOutput(), а улетает черт знает куда.

Поэтому не могу перенаправить отладочные сообщения в файл.


3. Так и не смог заставить работать отладку в QtCreator. На брекпоинтах программа не останавливается. Зато QtCreator показывает дизассемблер в момент сегфолта. Толку от него мало, потому что не видно даже стека вызовов. Вместо имен функций по два вопроса "??".


Кароч, все глухо.

Исправление Xintrea, :

Ну я поковырял немного и вот что выяснил.

Даже после закрытия и эмулятора, и Qt Creator, в системе продолжает висеть процесс:

adb -P 5037 fork-server server


Из-за него повторный запуск отладки невозможен.

Но и это еще не все. Даже если грохнуть этот процесс, эмулятор не будет запускаться. А все потому что в /tmp лежат «забытые» файлы и каким-то образом влияют на загрузку эмулятора.

$ pwd
/tmp/android-xi

xi:android-xi$ ls -l
итого 1127512
-rw------- 1 xi xi 576716800 янв  4 19:20 emulator-eBMhp9
-rw------- 1 xi xi 576716800 янв  4 19:32 emulator-Wo92s2
srwxr-xr-x 1 xi xi         0 янв  4 18:54 qemu-gles-5606
srwxr-xr-x 1 xi xi         0 янв  4 19:20 qemu-gles-6921
srwxr-xr-x 1 xi xi         0 янв  4 19:32 qemu-gles-7338



То есть, если убить и процесс, и удалить «забытые» файлы, то эмулятор начинает нормально запускаться.

Подводя итог запуска эмулятора, перед запуском отладки, если эмулятор еще не включен, следует выполнить команду:

[code]killall adb ; rm -f -r -d /tmp/android-* ;[/code]

Вроде бы проблема решена.

Но вылезло еще три напасти.

1. Теперь моя программа в эмуляторе сегфолтится после первого экрана. Запустить ее я смог только один раз сегодня в обед. Самое интересное, что я ничего в программе не менял, ни строчки кода. Она сегфолтится даже после полной перезагрузки компа и запуска всего «на чистую» в первый раз.

Вообще не знаю что делать.


2. Похоже, что под Андроидом некорректно работает установка обработчика отладочного вывода. После команды:

qInstallMessageHandler(myMessageOutput);

строка, которую при обычных условиях выдает в консоль qDebug():

qDebug() << «Это отладочное сообщение»

не попадает в функцию myMessageOutput(), а улетает черт знает куда.

Поэтому не могу перенаправить отладочные сообщения в файл.


3. Так и не смог заставить работать отладку в QtCreator. На брекпоинтах программа не останавливается. Зато QtCreator показывает дизассемблер в момент сегфолта. Толку от него мало, потому что не видно даже стека вызовов. Вместо имен функций по два вопроса "??".


Кароч, все глухо.

Исправление Xintrea, :

Ну я поковырял немного и вот что выяснил.

Даже после закрытия и эмулятора, и Qt Creator, в системе продолжает висеть процесс:

adb -P 5037 fork-server server


Из-за него повторный запуск отладки невозможен.

Но и это еще не все. Даже если грохнуть этот процесс, эмулятор не будет запускаться. А все потому что в /tmp лежат «забытые» файлы и каким-то образом влияют на загрузку эмулятора.

$ pwd[br]
/tmp/android-xi[br]
[br]
xi:android-xi$ ls -l[br]
итого 1127512[br]
-rw------- 1 xi xi 576716800 янв  4 19:20 emulator-eBMhp9[br]
-rw------- 1 xi xi 576716800 янв  4 19:32 emulator-Wo92s2[br]
srwxr-xr-x 1 xi xi         0 янв  4 18:54 qemu-gles-5606[br]
srwxr-xr-x 1 xi xi         0 янв  4 19:20 qemu-gles-6921[br]
srwxr-xr-x 1 xi xi         0 янв  4 19:32 qemu-gles-7338



То есть, если убить и процесс, и удалить «забытые» файлы, то эмулятор начинает нормально запускаться.

Подводя итог запуска эмулятора, перед запуском отладки, если эмулятор еще не включен, следует выполнить команду:

[code]killall adb ; rm -f -r -d /tmp/android-* ;[/code]

Вроде бы проблема решена.

Но вылезло еще три напасти.

1. Теперь моя программа в эмуляторе сегфолтится после первого экрана. Запустить ее я смог только один раз сегодня в обед. Самое интересное, что я ничего в программе не менял, ни строчки кода. Она сегфолтится даже после полной перезагрузки компа и запуска всего «на чистую» в первый раз.

Вообще не знаю что делать.


2. Похоже, что под Андроидом некорректно работает установка обработчика отладочного вывода. После команды:

qInstallMessageHandler(myMessageOutput);

строка, которую при обычных условиях выдает в консоль qDebug():

qDebug() << «Это отладочное сообщение»

не попадает в функцию myMessageOutput(), а улетает черт знает куда.

Поэтому не могу перенаправить отладочные сообщения в файл.


3. Так и не смог заставить работать отладку в QtCreator. На брекпоинтах программа не останавливается. Зато QtCreator показывает дизассемблер в момент сегфолта. Толку от него мало, потому что не видно даже стека вызовов. Вместо имен функций по два вопроса "??".


Кароч, все глухо.

Исправление Xintrea, :

Ну я поковырял немного и вот что выяснил.

Даже после закрытия и эмулятора, и Qt Creator, в системе продолжает висеть процесс:

adb -P 5037 fork-server server


Из-за него повторный запуск отладки невозможен.

Но и это еще не все. Даже если грохнуть этот процесс, эмулятор не будет запускаться. А все потому что в /tmp лежат «забытые» файлы и каким-то образом влияют на загрузку эмулятора.

$ pwd[br]/tmp/android-xi[br][br]xi:android-xi$ ls -l[br]итого 1127512[br]-rw------- 1 xi xi 576716800 янв  4 19:20 emulator-eBMhp9[br]-rw------- 1 xi xi 576716800 янв  4 19:32 emulator-Wo92s2[br]srwxr-xr-x 1 xi xi         0 янв  4 18:54 qemu-gles-5606[br]srwxr-xr-x 1 xi xi         0 янв  4 19:20 qemu-gles-6921[br]srwxr-xr-x 1 xi xi         0 янв  4 19:32 qemu-gles-7338


То есть, если убить и процесс, и удалить «забытые» файлы, то эмулятор начинает нормально запускаться.

Подводя итог запуска эмулятора, перед запуском отладки, если эмулятор еще не включен, следует выполнить команду:

[code]killall adb ; rm -f -r -d /tmp/android-* ;[/code]

Вроде бы проблема решена.

Но вылезло еще три напасти.

1. Теперь моя программа в эмуляторе сегфолтится после первого экрана. Запустить ее я смог только один раз сегодня в обед. Самое интересное, что я ничего в программе не менял, ни строчки кода. Она сегфолтится даже после полной перезагрузки компа и запуска всего «на чистую» в первый раз.

Вообще не знаю что делать.


2. Похоже, что под Андроидом некорректно работает установка обработчика отладочного вывода. После команды:

qInstallMessageHandler(myMessageOutput);

строка, которую при обычных условиях выдает в консоль qDebug():

qDebug() << «Это отладочное сообщение»

не попадает в функцию myMessageOutput(), а улетает черт знает куда.

Поэтому не могу перенаправить отладочные сообщения в файл.


3. Так и не смог заставить работать отладку в QtCreator. На брекпоинтах программа не останавливается. Зато QtCreator показывает дизассемблер в момент сегфолта. Толку от него мало, потому что не видно даже стека вызовов. Вместо имен функций по два вопроса "??".


Кароч, все глухо.

Исходная версия Xintrea, :

Ну я поковырял немного и вот что выяснил.

Даже после закрытия и эмулятора, и Qt Creator, в системе продолжает висеть процесс:

[code]adb -P 5037 fork-server server[/code]

Из-за него повторный запуск отладки невозможен.

Но и это еще не все. Даже если грохнуть этот процесс, эмулятор не будет запускаться. А все потому что в /tmp лежат «забытые» файлы и каким-то образом влияют на загрузку эмулятора.

[code]$ pwd
/tmp/android-xi

xi:android-xi$ ls -l
итого 1127512
-rw------- 1 xi xi 576716800 янв 4 19:20 emulator-eBMhp9
-rw------- 1 xi xi 576716800 янв 4 19:32 emulator-Wo92s2
srwxr-xr-x 1 xi xi 0 янв 4 18:54 qemu-gles-5606
srwxr-xr-x 1 xi xi 0 янв 4 19:20 qemu-gles-6921
srwxr-xr-x 1 xi xi 0 янв 4 19:32 qemu-gles-7338[/code]

То есть, если убить и процесс, и удалить «забытые» файлы, то эмулятор начинает нормально запускаться.

Подводя итог запуска эмулятора, перед запуском отладки, если эмулятор еще не включен, следует выполнить команду:

[code]killall adb ; rm -f -r -d /tmp/android-* ;[/code]

Вроде бы проблема решена.

Но вылезло еще три напасти.

1. Теперь моя программа в эмуляторе сегфолтится после первого экрана. Запустить ее я смог только один раз сегодня в обед. Самое интересное, что я ничего в программе не менял, ни строчки кода. Она сегфолтится даже после полной перезагрузки компа и запуска всего «на чистую» в первый раз.

Вообще не знаю что делать.


2. Похоже, что под Андроидом некорректно работает установка обработчика отладочного вывода. После команды:

qInstallMessageHandler(myMessageOutput);

строка, которую при обычных условиях выдает в консоль qDebug():

qDebug() << «Это отладочное сообщение»

не попадает в функцию myMessageOutput(), а улетает черт знает куда.

Поэтому не могу перенаправить отладочные сообщения в файл.


3. Так и не смог заставить работать отладку в QtCreator. На брекпоинтах программа не останавливается. Зато QtCreator показывает дизассемблер в момент сегфолта. Толку от него мало, потому что не видно даже стека вызовов. Вместо имен функций по два вопроса "??".


Кароч, все глухо.