【问题标题】:File IO using QTCreator IDE on Linux在 Linux 上使用 QTCreator IDE 进行文件 IO
【发布时间】:2015-03-07 08:21:56
【问题描述】:

我刚开始在 Linux 上使用 QTCreator IDE,我喜欢它的一切,除了遇到文件 IO 问题。这不涉及 QT 库,只涉及 IDE 和 C++。问题是我必须指定文件的完整路径名 - 像这样:

Shader shader ("/home/user/Documents/OpenGL/SandboxProject/vertexShader.glsl")

相比之下,在 CodeBlocks 上我可以只做当前目录:

Shader shader ("./vertexShader.glsl")

我需要在 IDE 中进行一些配置吗?我注意到当我在终端输入 which qtcreator 时,它在 /usr/bin/ 中,而我的 CodeBlocks 二进制文件在 /usr/local/bin/

【问题讨论】:

  • 一般来说,依赖于你进程的当前工作目录是错误的。当您的用户启动您的应用程序时,工作目录可以是anything,除非它是一个控制台应用程序。您需要引用应用程序目录中的文件,并且需要将其与项目文件中的可执行文件一起部署。 This answer 为 OS X 详细说明,你会为 Windows 做类似的事情。

标签: c++ linux qt io


【解决方案1】:

转到Projects -> 选择您的项目选项卡-> 选择Run 选项卡-> 检查Run 部分并根据需要设置Working directory

如果您正在开发一个跨平台的 Qt 应用程序,我建议使用 Qt Resource System,它将资源文件编译到您的二进制文件中。

【讨论】:

  • 哦,这比我想象的要容易得多。谢谢!
猜你喜欢
  • 2014-07-12
  • 2016-01-21
  • 2011-10-15
  • 1970-01-01
  • 2018-01-25
  • 1970-01-01
  • 2015-06-16
  • 2011-09-05
  • 2019-01-22
相关资源
最近更新 更多