2017-04-12 31 views
1

在我的程序中,我使用了多个模块文件。为了保持主文件夹的清洁,我将它们全部放在单独的文件夹中,并对我的shell脚本进行了必要的更改。一切正常,现在我可以编译和运行程序。不幸的是,Sublime Text 3没有看到位于主文件夹中的.mod文件。在这样的台词:如何使崇高的文本在不同的文件夹中看到.mod文件?

use mymodule 

它说:

Fatal Error: Can't open module file ‘mymodule.mod’ for reading at (1): No such file or directory

我怎样才能解决这个问题?

+0

你的编译器是什么?你如何从编辑器中调用它? –

+0

@ VladimirF,我在我的问题中添加了有关Fortran构建系统的信息。编译器 - gfortran。从“shell_cmd”中指定的编辑器调用。 – Georgy

+0

看起来你需要告诉构建系统哪个文件依赖哪个。但我不知道如何为Sublime做到这一点。 –

回答

1

在崇高的文本去Preferences - >Package Settings - >SublimeLinter - >Settings - User。在块"gfortranfixedform""gfortranmodern"(取决于你使用的是什么形式),添加一个参数:"args": ["-Ipath/to/modfiles"],其中path/to/modfiles是一个包含你的。

0

也许你在配置行改成这样:

"shell_cmd": "gfortran '${file}' -Ipath/to/module -o '${file_path}/${file_base_name}'" 

其中path /到/模块是与你的mod文件的目录。 (只是一个建议,不知道崇高编辑任何内容。)

+0

你的想法有一些改变对于构建单个模块文件工作正常,但不幸的是,它不能解决我的问题。通过您的建议,我可以构建包含我的模块的.f90文件,并在正确的单独文件夹中获取所需的生成.mod文件。所以,Sublime在建筑时能够完美地看到一切。但由于某种原因,所有其他时间它只在当前文件夹中查找依赖关系,它在那里找不到它们,它给我带来恼人的错误:“没有这样的文件”。问题是如何使Sublime在其他文件夹中查找依赖关系。 – Georgy

+0

这个错误不影响运行程序,但它不会让Sublime显示任何其他错误或警告,因为该错误总是第一个错误或警告。 – Georgy

+0

也许你还加上'-I.'(dot = current directory) –

相关问题