我已经下载了模拟库安装文件,并按照安装说明进行操作。
./configure
检查一系列事情后创建make文件的脚本。
make
编译 cpp 文件,之后不同的 .o 和 .lo 文件出现在原始文件夹中。
make install
似乎做了很多,但我似乎注意到的唯一一件事是 /usr/local/include 下出现了一个模拟目录,其中包含所有头文件。
比我尝试编译最简单的主文件可能:(如图书馆网站中提供的:原始示例)
#include <mimetic/mimetic.h>
using namespace mimetic;
int main()
{
MimeEntity me;
return 0;
}
我正在使用以下命令进行编译(在 CentOS 5.7 上,gcc 版本:4.1.2):
g++ mimetic.cpp
我得到的错误:
/tmp/ccWnsteO.o: In function `main':
mimetic.cpp:(.text+0x80): undefined reference to `mimetic::MimeEntity::MimeEntity()'
mimetic.cpp:(.text+0x91): undefined reference to `mimetic::MimeEntity::~MimeEntity()'
collect2: ld returned 1 exit status
据此,我了解到找到了头文件,但缺少源/库本身。
MimeEntity 构造函数声明出现在:/usr/local/include/mimetic/mimeentity.h 当我搜索mimeentity时,我得到以下信息:
/home/mimetic-0.9.7/mimetic/mimeentity.o
/home/mimetic-0.9.7/mimetic/mimeentity.h
/home/mimetic-0.9.7/mimetic/mimeentitylist.h
/home/mimetic-0.9.7/mimetic/mimeentity.cxx
/home/mimetic-0.9.7/mimetic/.libs/mimeentity.o
/home/mimetic-0.9.7/mimetic/mimeentity.lo
/home/mimetic-0.9.7/mimetic/.deps/mimeentity.Plo
/usr/local/include/mimetic/mimeentity.h
/usr/local/include/mimetic/mimeentitylist.h
我尝试使用库的搜索路径,但出现相同的错误
g++ mimetic.cpp -L/home/mimetic-0.9.7/mimetic/
当我尝试使用以下行编译主 mimetic.cpp 文件时,发生了其他奇怪的事情
MimeEntity me;
变成
MimeEntity me();
它编译。