我已經開始研究數百萬行FORTRAN規模的代碼(DALTON量子化學代碼)。我想通過Eclipse進行調試,所以一直在IDE中設置它。Eclipse中的Fortran:LARGE程序將運行,但在調試時拋出java.lang.NullPointerException
所有運行良好,代碼似乎正確導入,Eclipse將通過Cmake爲其生成的生成文件來構建它(使用調試設置)。該程序在Eclipse中將預期結果打印到控制檯也可以正常運行。但是,當我來試着調試它時,我得到了一個java.lang.NullPointerException錯誤,我在如何解決這個問題時遇到了一些問題。
在項目瀏覽器中可以看到一些線索不正確的東西。 Eclipse似乎無法處理「dalton.exe」可執行文件,就像處理通過製作(同一個編譯器,gfortran)我製作的一個簡單的helloworld程序來生成的可執行文件一樣,它測試Eclipse是否按預期調試Fortran文件。它似乎將可執行文件視爲文本文件。
我無法直接發佈圖片作爲新用戶,因此我將不得不提供指向託管版本的鏈接。 (我會閒逛和回答任何問題,我發現我可以改變這:))
任何幫助,非常感謝。
截圖:http://i.imgur.com/efmpV0l.png
編輯:
我已經看過了工作空間中的.metadata/.LOG,我不能讓太多我怕錯誤。它記錄了以下內容:
!SESSION 2013-11-20 13:46:52.774 -----------------------------------------------
eclipse.buildId=4.3.0.M20130911-1000
java.version=1.7.0_45
java.vendor=Oracle Corporation
BootLoader constants: OS=macosx, ARCH=x86_64, WS=cocoa, NL=en_US
Framework arguments: -product org.eclipse.epp.package.parallel.product
Command-line arguments: -os macosx -ws cocoa -arch x86_64 -product org.eclipse.epp.package.parallel.product
!ENTRY org.eclipse.core.net 1 0 2013-11-20 13:47:30.190
!MESSAGE System property http.nonProxyHosts has been set to local|*.local|169.254/16|*.169.254/16 by an external source. This value will be overwritten using the values from the preferences
!ENTRY org.eclipse.debug.ui 4 0 2013-11-20 13:48:54.496
!MESSAGE Tab group extension: org.eclipse.cdt.launch.applicationProfileLaunchTabGroup for type org.eclipse.cdt.launch.applicationLaunchType for the [profile] mode has been replaced by extension: org.eclipse.cdt.launch.applicationProfileLaunchTabGroup
!ENTRY org.eclipse.core.jobs 4 2 2013-11-20 13:49:02.238
!MESSAGE An internal error occurred during: "Launching DALTON-Debug_build Configuration".
!STACK 0
java.lang.NullPointerException
at org.eclipse.cdt.debug.internal.core.model.CDebugTarget.getSourceLookupPath(CDebugTarget.java:1889)
at org.eclipse.cdt.debug.internal.core.model.CDebugTarget.getSourceLookupPath(CDebugTarget.java:1910)
at org.eclipse.cdt.debug.internal.core.model.CDebugTarget.getSourceLookupPath(CDebugTarget.java:1910)
at org.eclipse.cdt.debug.internal.core.model.CDebugTarget.setSourceLookupPath(CDebugTarget.java:1863)
at org.eclipse.cdt.debug.internal.core.model.CDebugTarget.initializeSourceLookupPath(CDebugTarget.java:385)
at org.eclipse.cdt.debug.internal.core.model.CDebugTarget.initialize(CDebugTarget.java:286)
at org.eclipse.cdt.debug.internal.core.model.CDebugTarget.<init>(CDebugTarget.java:279)
at org.eclipse.cdt.debug.core.CDIDebugModel$1.run(CDIDebugModel.java:127)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2345)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2327)
at org.eclipse.cdt.debug.core.CDIDebugModel.newDebugTarget(CDIDebugModel.java:132)
at org.eclipse.cdt.launch.internal.LocalCDILaunchDelegate.launchLocalDebugSession(LocalCDILaunchDelegate.java:162)
at org.eclipse.cdt.launch.internal.LocalCDILaunchDelegate.launchDebugger(LocalCDILaunchDelegate.java:113)
at org.eclipse.cdt.launch.internal.LocalCDILaunchDelegate.launch(LocalCDILaunchDelegate.java:74)
at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:858)
at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:707)
at org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(DebugUIPlugin.java:1018)
at org.eclipse.debug.internal.ui.DebugUIPlugin$8.run(DebugUIPlugin.java:1222)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)
EDIT2:
一些進展也許是:
我現在推出的Eclipse使用sudo。我切換到調試窗口,並轉到控制檯中的「可執行文件」選項卡。在那裏我右鍵單擊表格並將dalton.x作爲可執行文件導入。值得注意的是,源代碼被成功找到並且可執行文件導入正常。
用這個運行一個調試版本會出現一個新的錯誤: 無法設置程序參數,環境或工作目錄。 無法設置工作目錄:「/ Users/james/QC_Codes/Dalton/build」:沒有這樣的文件或目錄。 無法設置工作目錄:「/ Users/james/QC_Codes/Dalton/build」:沒有這樣的文件或目錄。 無法設置工作目錄:「/ Users/james/QC_Codes/Dalton/build」:沒有這樣的文件或目錄。
我有雙重檢查。這些目錄存在,應該可以訪問。
再次,任何意見是非常感謝。
我實驗開始...
嘗試查看工作區.metadata目錄中的.log文件以獲取有關內部錯誤的更多詳細信息(或查看錯誤日誌視圖)。 –
可以肯定的是,我已經看過並閱讀過,但無法做大部分工作,並在編輯過程中在上述問題中發佈了日誌數據。 – JamesFurness