У меня есть проект C, и я совершенно новый с C и средой linux.Ошибка сегментации при разных ОС
Я работаю над распределением Linux с помощью следующей системной информации
Linux BT 3.2.6 # 1 SMP Пт 17 февраля 10:34:20 EST 2012 x86_64 GNU/Linux
После компиляции с gcc, на указанной ОС, я получил ожидаемые результаты.
Перед отправкой моего проекта профессора, я думал о попытке скомпилировать и выполнить программу на другой дистрибутив Linux с следующей информацией системы
Linux feistyFawn 2.6.20-15-родовой # 2 SMP ВС Apr 15 07:36:31 UTC 2007 i686 GNU/Linux
И я получаю ошибку сегментации под этим. Чтобы проиллюстрировать выходную консоль. Вот изображения.
Работы
Сбой
Я не уверен, что теперь делать.
Код
Вызов этой функции приводит к ошибке сегментации на другой ОС.
fileInEvenements(listEvents, 'A', time, queueId);
Что это такое - файл в событии A в структуру очереди, listEvents.
И его определение
void fileInEvenements(eventStructure *listEvents, char eventType, int time_exec, int id_queue)
{
Event *newEvent = malloc(sizeof(*newEvent));
if (newEvent == NULL || listEvents == NULL){
exit(EXIT_FAILURE);
}
newEvent->type = eventType;
newEvent->execution_time = time_exec;
newEvent->id = id_queue;
if (listEvents->firstEvent != NULL)
{
// the list contains at least one event, go to the end of list
Event *evCurrent = listEvents->firstEvent;
while (evCurrent->next != NULL)
{
evCurrent = evCurrent->next;
}
evCurrent->next = newEvent;
}
else // the list contains no event, new event becomes first event
{
listEvents->firstEvent = newEvent;
}
}
Пожалуйста, покажите код, который приводит к этой ошибке. –
Ваш код (вероятно) неправильный на обоих компьютерах. Вам не повезло, когда он не потерпел крушение на одном из них. –
Компиляция с флагов отладки и анализ с помощью gdb – 2013-04-20 19:06:12