C++项目生成失败
C++ project build failed
当我编译我的项目时,我收到了一条错误消息,并且我发现了相同的Q&A像这样,但它对我没有帮助。我不知道我的错误在哪里,也不知道如何修复。我使用Mac OS X,我有一个Xcode,但它不是Xcode项目。
我的错误:
g++ cleanup_agent.cc -o cleanup_agent -lcurl
Undefined symbols for architecture x86_64:
"reader(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >)", referenced from:
_main in cleanup_agent-12c8ac.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [build] Error 1
我的树:
.
├── Makefile
├── bad_words.txt
├── cleanup_agent.cc
├── src
│ ├── reader.cc
│ ├── reader.h
│ └── stdafx.h
└── test
└── unittest.cc
Makefile:
CC = g++
STDIN = cleanup_agent.cc
STDOUT = cleanup_agent
build: $(STDIN)
$(CC) $(STDIN) -o $(STDOUT) -lcurl
cleanup_agent.cc
:
#include "src/stdafx.h"
#include "src/reader.h"
int main() {
vector<string> bad_words;
bad_words = reader("bad_words.txt");
}
reader.h
:
#ifndef CLEANUP_AGENT_SRC_READER_H_
#define CLEANUP_AGENT_SRC_READER_H_
vector<string> reader(string filename);
#endif
reader.cc
:
#include "stdafx.h"
#include "reader.h"
#include <fstream>
vector<string> reader(string filename) {
vector<string> data;
fstream file;
file.open(filename, fstream::in);
if (file.good()) {
string line;
while (getline(file, line)) {
data.push_back(line);
}
} else {
cout << "file not found." << endl;
}
file.close();
return data;
}
您的makefile不稳定。已经有一段时间了,但试试这个:
CC = g++
STDIN = cleanup_agent.cc src/reader.cc
STDOUT = cleanup_agent
.PHONY: build
build: $(STDOUT)
$(STDOUT): $(STDIN)
$(CC) $(STDIN) -o $(STDOUT) -lcurl
相关文章:
- 我必须构建我的项目 2 次,第一次失败,因为它无法打开库
- 我的快速排序在对预排序的项目进行排序时失败,如何改进?
- 在 macOS 上的 CLion 中导入 Bazel 项目失败
- VS 2017 构建工具失败,出现错误 MSB4019:找不到导入的项目"D:Microsoft.Cpp.Default.props"
- MSBuidel - 将资源文件添加到项目后静态库编译失败
- C++单元测试项目 LoadLibrary 失败,出现"序号未找到"错误
- Unity webGL - MacOS 上的构建项目失败
- 链接在XLNT.TEST项目上失败,具有10个未经介绍的外部链接:
- 项目生成失败:"gcroot.h This document is opened by another project"
- Aruco建筑项目失败
- 与iOS项目上的C 库链接失败
- 在项目c++中包含本地路径,但生成失败
- C++项目生成失败
- 通过终端和编译创建项目文件失败,但通过Qt Creator IDE工作正常
- 构建最小的Qt控制台项目失败,出现神秘的链接器错误LNK2001:未解析的外部符号
- Visual Studio 2010 Express创建项目失败
- 代码使用cmake干净地构建,当作为外部项目添加时失败
- 使用GCC编译时,CMake生成的Ninja项目失败
- <int> 具有初始值设定项列表的 QVector 失败,并显示 3 个项目
- 在eclipse ubuntu上构建opencv项目失败