私は次の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
私も試し-llibssh
てみまし-llibssh.a
た。この男も非常によく似た未回答の質問をしているようです。