首页 > 解决方案 > Makefile中“-I”的作用是什么?

问题描述

我只需转到下载文件夹并键入:即可安装软件(Ubantu 系统)make

在 Makefile 中有一行:

SW=-I /usr/include/python2.7/ -I ~/.local/lib/python2.7/site-packages/numpy/core/include/numpy/

当我

ls ~/.local/lib/python2.7/site-packages/numpy/core/include/numpy/

我的系统中没有它。

(1)这条线的作用是什么?

(2) 既然我没有第二个文件,我应该修改它吗?

标签: pythonubuntuinstallation

解决方案


  1. 该行的目的是指示编译器在哪里查找头文件的附加目录。检查[GNU.GCC]:目录搜索选项

  2. 如果您需要访问NumPy API,您确实应该将其修改为您的NumPy安装包含目录。如果未安装,请使用python -m pip install numpy(也可在[PyPI]: numpy (1)下载)安装它。
    如果它只是一个剩余的(复制/粘贴),并且编译器没有抱怨找不到(与NumPy相关的).h文件,只需将其删除



脚注

  • #1:您的路径指示Python 2.7。那是不支持的。切换到Python 3,因为某些包可能不再可用(例如, NumPy没有为Python 2.7构建的较新版本)

  • 此外,安装软件的典型命令是make install


推荐阅读