c++ - Linux 上 C++ 程序的资源存储位置

标签 c++ linux

This question说在 linux 中存储设置的最佳位置是在 ~/.config/appname

我正在编写的程序需要使用 99MB 的 .dat 文件来识别面部标志,将其嵌入二进制文件似乎不是一个好主意。

在 linux 上是否有一些默认的地方来存储资源?目前它只是在可执行文件旁边的目录中,但这需要程序在当前目录下运行,这是它所在的目录。

在 Linux 上处理此类资源的最佳方法是什么? (这可能是跨平台的,至少是 OSX)

最佳答案

你应该看看 Filesystem Hierarchy Standards .根据数据(它是否会改变,它在所有安装中是否保持不变等),放置它的路径将根据标准发生变化。

一般来说:

  • /usr/lib/program:包括应用程序的目标文件、库和内部二进制文件
  • /usr/share/program: 用于所有只读架构独立数据文件
  • /var/lib/program:保存与应用程序或系统有关的状态信息

这些似乎是不错的起点,您可以查看文档以查看您的应用是否属于这些类别之一。

关于c++ - Linux 上 C++ 程序的资源存储位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34599534/

相关文章:

c++ - 指针内存分配

C++ 纯虚函数的多重继承问题

c++ - 波科 : How to abort a blocking socket operation from another thread

c++ - 使相同的 C++ 类型别名不兼容

c++ - 在 C++ 中更改函数实现

c - CUDA 中的多精度乘法

c - listen() 忽略积压参数?

linux - gpg 过期的软件 IMSI 和软件 Simcards?

linux - 命令在终端而不是脚本中工作

linux - 根据部分文件名将文件归档到文件夹中的 Bash 脚本