Apple Mach-O(ID)链接器错误,ncurses 我对C++编程很陌生,我现在陷入了一个非常被问到的问题:Xcode的“苹果马赫o链接器(ID)错误”。 据我所知,问题来自包含所有getch属性的标准ncurses库。我之所以发布这篇文章,是因为我无法真正找到解决方案,而且与其他链接器错误相比,错误似乎有点不同。 我正在使用一台带有Xcode 8的OSX计算机,简单的命令行脚本作为Xcode项目。 这是“问题”选项卡中的外观: 无论如何,如果有人真的有时间做这些事情,这就是我当前的代码:

Apple Mach-O(ID)链接器错误,ncurses 我对C++编程很陌生,我现在陷入了一个非常被问到的问题:Xcode的“苹果马赫o链接器(ID)错误”。 据我所知,问题来自包含所有getch属性的标准ncurses库。我之所以发布这篇文章,是因为我无法真正找到解决方案,而且与其他链接器错误相比,错误似乎有点不同。 我正在使用一台带有Xcode 8的OSX计算机,简单的命令行脚本作为Xcode项目。 这是“问题”选项卡中的外观: 无论如何,如果有人真的有时间做这些事情,这就是我当前的代码:,c++,macos,compiler-errors,command-line-tool,C++,Macos,Compiler Errors,Command Line Tool,整数 int x, y; int ch; x = width / 2; y = height / 2; 地图 我确实删掉了很多其他的代码,但我相信其他的东西一点都不重要。所以,如果你想知道更多关于它的事情,告诉我,我会编辑它。 谢谢 从屏幕截图上看,您似乎没有链接libncurses。在生成设置中将“-lncurses”添加到“其他链接器标志”(在导航器中单击项目,在编辑器中选择“生成设置”选项卡),或者更好地将libncurses添加为链接库(在导航器中单击项目文件,选择“构建阶段”选项卡,

整数

int x, y;
int ch;
x = width / 2;
y = height / 2;
地图

我确实删掉了很多其他的代码,但我相信其他的东西一点都不重要。所以,如果你想知道更多关于它的事情,告诉我,我会编辑它。
谢谢

从屏幕截图上看,您似乎没有链接libncurses。在生成设置中将“-lncurses”添加到“其他链接器标志”(在导航器中单击项目,在编辑器中选择“生成设置”选项卡),或者更好地将libncurses添加为链接库(在导航器中单击项目文件,选择“构建阶段”选项卡,展开“链接二进制文件与库”,单击加号并键入“ncurses”,选择“libncurses.a”或者“libncurses.tbd”)。

您的Makefile看起来怎么样?或者调用编译器的配置如何?哇,这可能真的可以工作!但由于某种原因,在第一次无效后,我得到了一个“预期语句”错误。有什么想法吗?
system("clear");

for (int i = 0; i < width+2; i++) //upper row
    cout << "#";
cout << endl;

for (int i = 0; i < height; i++) //mid rows upways
{
    for (int j = 0; j < width; j++) //mid rows sideways
    {
        if (j == 0)
            cout << "#";
        if (i == y && j == x)
            cout << "O";
        else
            cout << " ";
        if (j == width - 1)
            cout << "#";
    }
    cout << endl;
}

for (int j = 0; j < height+2; j++)  //bottom row
    cout << "#";
cout << endl;
if (ch == 0 || ch == 224)
{
    switch (getch ())
    {
        case 72:
            x++; //up key
            break;

        case 80:
            //down key
            break;

    }
}