1

可能重复:
针对 glib 编译时出现 Noobish、链接器错误……?

我有以下 Makefile:

remote: RemoteCMD.o sshlib.o
    g++ -L/usr/include/libssh -lssh RemoteCMD.o sshlib.o -o RemoteCMD

RemoteCMD.o: RemoteCMD.cpp
    g++ -c RemoteCMD.cpp

sshlib.o: sshlib.cpp
    g++ -c sshlib.cpp

sshlib.h 包括 libssh/libssh.h,sshlib.cpp 包括 sshlib.h。当我得到:

g++ -L/usr/include/libssh -lssh RemoteCMD.o sshlib.o -o RemoteCMD
sshlib.o: In function `ssh::connect(char*, char*)':
sshlib.cpp:(.text+0x1c): undefined reference to `ssh_new'

我还仔细检查了 libssh.a 的位置:

$> whereis libssh.a
libssh: /usr/include/libssh

我也试过-llibsshand -llibssh.a。似乎这个人也有一个非常相似的未回答问题。

4

0 回答 0