将Lazarus应用程序从Windows移植到Linux

时间:2015-11-16 22:38:09

标签: linux windows lazarus

我开发了一个小型开源应用程序来帮助我完成博士论文。该应用程序在Windows上正常运行。当我尝试在Linux上运行时,一切都运行良好,但当我关闭应用程序时,我收到了这条消息:

Project SmCube raised exception class ´External: SIGSEGV´. 

我试图运行一些示例应用程序(默认情况下随Lazarus一起提供)并且运行正常。

我试图追查问题。在“Application.Terminate”命令之后,调试停留在此例程上:

{------------------------------------------------------------------------------
  Method: TGtk2WidgetSet.AppWaitMessage
  Params:  None
  Returns: Nothing

  Passes execution control to the GTK engine till something happens
   ------------------------------------------------------------------------------}
procedure TGtk2WidgetSet.AppWaitMessage;
begin
  WaitingForMessages:=true;
  if not FGtkTerminated then
  begin
    {$IFDEF USE_GTK_MAIN_OLD_ITERATION}
    gtk_main_iteration_do(True);
    {$ELSE}
DEBUG STOPS HERE --> g_main_context_iteration(g_main_context_default, True);
    {$ENDIF}
  end;
  WaitingForMessages:=false;
end; 

请有人帮我发现发生了什么事吗? 最好的问候

1 个答案:

答案 0 :(得分:-1)

我也没有看到足够的信息来提供任何有价值的答案。

但我建议尝试使用qt widgetset而不是gtk widgetset编译lazarus应用程序,看看它是否仍然存在。