Непонятный "вылет" программы., а должна была быть кросплатформенной... |
Здравствуйте, гость ( Вход | Регистрация )
Непонятный "вылет" программы., а должна была быть кросплатформенной... |
NordWest |
21.4.2009, 19:05
Сообщение
#1
|
Студент Группа: Участник Сообщений: 86 Регистрация: 26.11.2008 Пользователь №: 433 Спасибо сказали: 1 раз(а) Репутация: 0 |
Пишем программу в Qt. Начинали под винду, теперь есть непреодолимое желание использовать её ещё и под Линуксом, там более кросплатформ и всё такое... Но программа сопротивляется.
Вылетает она из библиотеки, которая позволяет работать со специальными графическими файлами. При открытии такого файла, т.е. при вызове метода fits_open_file() из этой библиотеки, программа вылетает, и если в релизе она это делает молча, то в дебуг-варианте в консоль выдается следующее: CODE Scope for 7037: Symbol fptr is a variable with multiple locations, length 4. Symbol imgtype is a variable with multiple locations, length 4. Symbol status is a variable with multiple locations, length 4. Symbol tstatus is a variable with multiple locations, length 4. Symbol lngscale is a variable with multiple locations, length 4. Symbol bscale is a variable with multiple locations, length 8. Symbol bzero is a variable with multiple locations, length 8. Symbol min_val is a variable in register st3, length 8. Symbol max_val is a variable in register st1, length 8. (gdb) Program terminated with signal SIGSEGV, Segmentation fault. The program no longer exists. (gdb) Это как же понимать? Области переменных смешались? |
|
|
ЙаМайскЫйПчОЛ |
22.4.2009, 8:09
Сообщение
#2
|
Участник Группа: Участник Сообщений: 154 Регистрация: 10.7.2008 Из: СПб Пользователь №: 232 Спасибо сказали: 7 раз(а) Репутация: 5 |
НУ ладно давай разбераться по пункта.
Я на 87% уверен что проблемма в первом аргументе либо в его типе либо в объявлении функции Эта уверенность инстинктивная + основное что мне приходилось править при переводе приложения на линь - это ссылки и указатели. В Твоем случае я вижу что мы имеем дело с FITS немного погуглив
обрати внимание на первую строчку кода и вызов ffmahd ИМХО такое объявление отличается от твоего на одну * контрол-ц контрол-в из MSDN и готовых сырцов часто приводит к непониманию сделай ТАК!
в объявлении функции и будет тебу счастие а примеров подобного рода куча http://astro.phys.au.dk/ai43/toar/io/MOMF/...itsio/putcoll.c Сообщение отредактировал ЙаМайскЫйПчОЛ - 22.4.2009, 8:21 |
|
|
Текстовая версия | Сейчас: 1.12.2024, 12:57 |