首页 > 解决方案 > Chilkat 示例,linkSample.cpp 程序,无法编译

问题描述

我已经下载了 Chilkat 库的“用于 Qt、CodeBlocks、MinGW、TDM-GCC 和 MinGW-w64 的 Chilkat C/C++ 库下载”版本,以便在 ftp c++​​ 代码之上运行。

#include <stdio.h>
#include "include/CkZip.h"
#include "include/CkFtp2.h"
#include "include/CkMailMan.h"
#include "include/CkXml.h"
#include "include/CkPrivateKey.h"
#include "include/CkRsa.h"
#include "include/CkHttp.h"
#include "include/CkMime.h"
#include "include/CkMht.h"
#include "include/CkSsh.h"
#include "include/CkSFtp.h"
void DoNothing(void)
{
// Instantiate the objects...
CkZip zip;
CkMailMan mailman;
CkFtp2 ftp2;
CkXml xml;
CkPrivateKey privKey;
CkRsa rsa;
CkHttp http;
CkMime mime;
CkMht mht;
CkSsh ssh;
CkSFtp sftp;

printf("Zip version: %s\n",zip.version());
}
int main(int argc, const char* argv[])
{
DoNothing();
return 0;
}

我已阅读自述文件并尝试运行示例 C++ 示例 linkSample.cpp。出于这个原因,我已经阅读了位于 Chilkat for Mingw 文件夹中的 linkSample.sh 文件。我曾在 Windows 中工作并加载了 mingw 并将 g++ 的路径添加到了 cmd 中。当我直接将 .sh 文件夹命令运行到 cmd 时,我收到以下错误!

C:\Users\emma\Desktop\chilkat-9.5.0-x86_64-8.1.0-posix-seh-rt_v6-rev0>g++ -Wl,--enable-auto-import linkSample.cpp -o"linkSample.exe" -L. -lchilkat-9.5.0 -L/c/MinGW/lib -lcrypt32 -lws2_32 -ldnsapi

C:\Users\emma\AppData\Local\Temp\cciL4ofa.o:linkSample.cpp:(.text+0x10): undefined reference to `CkZip::CkZip()'
C:\Users\emma\AppData\Local\Temp\cciL4ofa.o:linkSample.cpp:(.text+0x1d): undefined reference to `CkMailMan::CkMailMan()'
C:\Users\emma\AppData\Local\Temp\cciL4ofa.o:linkSample.cpp:(.text+0x2a): undefined reference to `CkFtp2::CkFtp2()'

你能指导我编译和运行示例 chilkat cpp 程序吗?

谢谢

标签: c++chilkat

解决方案


我已将工作区更改为 linux 并下载了 Chilkat “C/C++ Libraries for Linux”并将 linkSample.cpp 代码复制到其中并运行以下代码:

g++ linkSample.cpp -Llib -lchilkat-9.5.0 -o linkSample -ldl

并且 bin 文件已经出现,没有错误消息。但是,当我尝试运行可执行 bin 文件时,会出现以下错误消息:

./linkSample: error while loading shared libraries: libchilkat-9.5.0.so: cannot open shared object file: No such file or directory

我想将我的工作区保留在 Windows 中,但我刚刚尝试查看 linux 中发生了什么,最后它无法正常工作。

你有什么建议吗?

谢谢


推荐阅读