2009-10-22 74 views
0

我有一個運行在OSX雪豹上的php腳本。當我在命令行中運行它,它拋出osx php腳本引發分段錯誤

'分段錯誤'

。如果我把exit()放在文件末尾,它不會拋出錯誤。爲什麼需要退出?

+2

腳本在做什麼?即使使用代碼也很難調試段錯誤,所以沒有太多困難。 – jergason 2009-10-22 19:13:09

+0

請張貼一些代碼 – Josh 2009-10-22 22:51:20

+0

我們需要一些代碼......或者至少有一些解釋:您的腳本在做什麼,您使用的是什麼擴展,您從哪裏獲取PHP。另外:如果它是控制檯的腳本,你可以嘗試「查找」來追蹤這些問題。 – aurora 2012-09-24 21:15:19

回答

0

當擴展並沒有很好地結合在一起時,我已經有過這樣的segfaults。在一個案例中,它是curl和pgsql,並且交換它們加載的順序使問題消失。 (如果您有conf.d設置,請在php.ini中交換extension.so行或重命名文件(例如z-curl.ini)。)

0

沒有看到代碼就很難回答。嘗試使用除法和調試方法:禁用所有帶有註釋的代碼。看看是否發生問題。如果不是,則啓用代碼的前半部分。如果問題再次出現,請禁用除代碼的第一部分以外的所有內容。繼續劃分並一致,直到找到導致問題的腳本部分。

我的猜測是你沒有關閉一些打開的句柄。但我只是猜測,因爲我看不到代碼。