编译程序时出现错误消息
Posted
技术标签:
【中文标题】编译程序时出现错误消息【英文标题】:Error message while compiling a program 【发布时间】:2017-11-23 11:39:10 【问题描述】:我是 C++ 和 Linux 的新手。我正在使用的这段代码需要我安装我所做的 HElib(同态加密库和其他库 - GMP、NTL)。我想在 HElib 中编译具有头文件 (FHE.h
) 的代码 (main.cpp
)。我的问题是如何将FHE.h
(在HElib
文件夹中)和main.cpp
(在另一个文件夹中)链接在一起,以便我可以编译它们。我尝试了一些命令
g++ -I/Home/HElib/src/FHE.h main.cpp -o main
错误信息
main.cpp:1:17: fatal error: FHE.h: No such file or directory
compilation terminated.
另一个命令行
g++ -I/Home/HElib/Src/FHE.h -I/Home/SimpleFHESum-master/SimpleFHESum-master/main.cpp -o main]
错误信息
g++: fatal error: no input files
compilation terminated.
出了什么问题,我该如何解决?
【问题讨论】:
你应该检查 g++ 的文档,g++ help
,你应该用你的输入文件编译g++ hello.cpp -o hello
在the manual中读取3.15 Options for Directory Search
【参考方案1】:
-I
标志将以下目录添加到编译器的包含路径。这使您可以编写例如#include "FHE.h"
即使该文件与您尝试编译的源文件不在同一个文件夹中。
您是否尝试过从 -I 指令中删除“FHE.h”部分?
g++ -I/Home/HElib/src ...
【讨论】:
以上是关于编译程序时出现错误消息的主要内容,如果未能解决你的问题,请参考以下文章
错误 LNK2019:使用类编译程序时出现无法解析的外部符号错误消息