История изменений
Исправление 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 показывает дизассемблер в момент сегфолта. Толку от него мало, потому что не видно даже стека вызовов. Вместо имен функций по два вопроса "??".
Кароч, все глухо.