在Mac OS上运行x11

时间:2017-05-22 23:52:01

标签: c++ x11

我已正确安装XQuarts.app,但存在链接阶段问题。
这是简单的代码。

#include <X11/Xlib.h>
#include <X11/Xutil.h>
#include <X11/Xresource.h>

int main() {
    Display* dis = XOpenDisplay(NULL);
    return 0;
}

当我从XQuartz.app编译时,就像这样

  

g ++ -c main.cpp -I / opt / X11 / include

然而它输出:

  

架构x86_64的未定义符号:     &#34; _XOpenDisplay&#34;,引自:         _main在main.o中   ld:找不到架构x86_64的符号   clang:错误:链接器命令失败,退出代码为1(使用-v查看调用)   make:*** [默认]错误1

我的mac版本:

  

约塞米蒂10.10.2

我google了很多但是找不到任何有用的帮助。提前谢谢。

1 个答案:

答案 0 :(得分:0)

您没有链接到libX11。将以下标志添加到链接器命令:

EXEC ('BULK INSERT #TMPP FROM ''' + @PATH +
        ''' WITH (FIELDTERMINATOR = ''|'', FIRSTROW = 1, ROWTERMINATOR = ''\n'', KEEPNULLS, CODEPAGE = 1252);');

并不重要,但值得注意:您不需要使用xterm(XQuartz中的终端)来构建或运行X11应用程序。