首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将ncurses头安装到<前缀>/include,而不是<前缀>/include/ncurses

将ncurses头安装到<前缀>/include,而不是<前缀>/include/ncurses
EN

Stack Overflow用户
提问于 2015-03-22 14:56:39
回答 1查看 1.4K关注 0票数 0

我正在尝试将ncurses安装到一个非系统范围的前缀(用于交叉编译)。

一切正常,我能够将ncurses安装到指定的前缀中,头文件驻留在<prefix>/include/ncurses中。

我正在试图编译的一个程序(特别是GHC)找不到头文件,因为它尝试#include <ncurses.h>,这是不工作的。(include <ncurses/ncurses.h>确实能工作,但GHC没有尝试过这一点。)

因此,我认为直接将头安装到<prefix>/include会有帮助,但我无法做到这一点。将--includedir=<prefix>/include传递给ncurses的配置脚本并没有给出所需的结果,因为已安装的ncurses.h随后尝试使用#include <include/ncurses_dll.h>,但这不起作用。

当然,<prefix>/include在使用的CPP的搜索路径中。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-03-22 18:19:04

通常,用于基于autoconf的配置脚本的--includedir用于告诉makefile在何处安装头文件,而不是在编译期间将它们包含在何处。

相反,您可能希望设置的选项将在CPPFLAGS变量中。例如,由于GHC只希望ncurses头文件位于标准位置,因此可以通过在-I中将这两个目录指定为CPPFLAGS选项来解决这个问题。

以下是一些有助于帮助的讨论:

顺便说一下,那个前缀/lib看起来很奇怪..。

关于--disable-overwrite的评论,Linux和其他一些平台默认启用此功能。OSX就不是这样。在配置结束时,配置脚本运行makefile规则来显示结果配置。如果禁用了覆盖,您将看到如下消息:

代码语言:javascript
复制
** Include-directory is not in a standard location
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29195844

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档