对`forkpty'的未定义引用

Han*_*ank 9 c++ linker

所以我在Ubuntu 10.04中在Eclipse中开发我的项目.我有以下几行代码:

#include <pty.h>

pid_t pid;
int master;

pid = forkpty(&master, NULL, NULL, NULL);
Run Code Online (Sandbox Code Playgroud)

但是当我尝试在Eclipse中构建它时,我收到错误:

undefined reference to 'forkpty'
Run Code Online (Sandbox Code Playgroud)

知道如何解决这个问题吗?

MK.*_*MK. 16

您需要-lutil命令行参数(使用libutil共享库).
对于Eclipse:http: //zetcode.com/articles/eclipsecdevelopment/

选择项目属性.展开"C/C++构建"选项卡.选择设置.从"工具设置"选项卡中,展开"GCC C链接器"选项.点击图书馆.将/usr/lib/libutil.so添加到Libraries窗口.请注意,此路径在您的系统上可能有所不同.


chr*_*ock 6

这是一个链接错误; 你错过了util图书馆.这样做是为了在命令行上构建:

g++ myprogram.cpp -lutil
Run Code Online (Sandbox Code Playgroud)

Eclipse应该具有项目级设置,用于列出要链接的库.