)这是一件大事。我能够在Project Explorer中获得一个Binaries文件夹,因此能够在构建项目后运行该项目,方法是使用一个不包含点['.]]的项目名称。这是我从这里的另一个答案中学到的,这个答案是在我上一条消息发布几小时后编辑的。这一要求很容易被忽略,因此这是一个常见的要求,特别是当您有Eclipse经验但只使用其他语言时,因为其他语言插件(如PyDev或Java)的教程经常让您创建名称中带有点的项目。如果您已经在其他语言中养成了这种习惯,那么在使用CDT for C/C++时就要打破这种习惯。然而,需要预先警告的是,这一次只需右键单击并重命名现有项目名称而不使用点是不够的。最简单的方法是删除旧项目并创建一个名称不带点的新项目

)这是一件大事。我能够在Project Explorer中获得一个Binaries文件夹,因此能够在构建项目后运行该项目,方法是使用一个不包含点['.]]的项目名称。这是我从这里的另一个答案中学到的,这个答案是在我上一条消息发布几小时后编辑的。这一要求很容易被忽略,因此这是一个常见的要求,特别是当您有Eclipse经验但只使用其他语言时,因为其他语言插件(如PyDev或Java)的教程经常让您创建名称中带有点的项目。如果您已经在其他语言中养成了这种习惯,那么在使用CDT for C/C++时就要打破这种习惯。然而,需要预先警告的是,这一次只需右键单击并重命名现有项目名称而不使用点是不够的。最简单的方法是删除旧项目并创建一个名称不带点的新项目,c++,eclipse,macos,eclipse-cdt,osx-lion,C++,Eclipse,Macos,Eclipse Cdt,Osx Lion,3) 有许多网站提醒您要确保使用-arch i386编译器开关,或者将/usr/bin/gcc和/usr/bin/g++的链接更改为指向gcc-4.0和g++-4.0,而不是gcc-4.2和g++-4.2。我创建了一个bash脚本来简化来回切换,并研究了这是否是必要的。不是,至少不是我的Macbook。根据我在一个网站上从Mach-O开发者那里读到的内容,我怀疑Mach-064的当前版本是双向的。这是一个很好的过渡到 4) 在项目属性而不是首选项中,转到C/C++构建->设置,并在二进制解析器下

3) 有许多网站提醒您要确保使用-arch i386编译器开关,或者将/usr/bin/gcc和/usr/bin/g++的链接更改为指向gcc-4.0和g++-4.0,而不是gcc-4.2和g++-4.2。我创建了一个bash脚本来简化来回切换,并研究了这是否是必要的。不是,至少不是我的Macbook。根据我在一个网站上从Mach-O开发者那里读到的内容,我怀疑Mach-064的当前版本是双向的。这是一个很好的过渡到

4) 在项目属性而不是首选项中,转到C/C++构建->设置,并在二进制解析器下确保选中Mach-O64解析器。确保选中此选项,而不是不推荐使用的Mach-O解析器

5) 此时,在构建项目后,在project Explorer中应该可以看到以下几点:

6) 现在项目文件夹下应该有一个Binaries文件夹


7) 在Binaries文件夹中现在应该是您的可执行文件。如果像我一样,您的Mac实际上是32位的,那么它旁边应该有[x86_64/le]。现在不是讨论你的Mac电脑是32位还是64位这个令人困惑的话题的最佳时机。如果你不知道,很多人也不知道,因为苹果确实让人困惑,那么看看这个可以下载的小应用,它会告诉你真相。它是免费的,但“价格”是你必须滚动页面顶部的广告,以反映程序员的政治倾向。

我也遇到了同样的问题,然后我找到了解决方案。 让我简单解释一下

< LI>创建您的C++项目,
  • 查看项目属性(⌘一) ,
  • 在二进制属性下选择Mach-O解析器
  • 写下你的密码
  • 不要忘记构建您的项目(⌘B) 跑步前
  • 在mac上:

  • 确保已安装xcode。通过编写“INFOG++”来测试它。您必须看到有关编译器的正确信息

  • 构建您的项目

  • 转到项目的文件夹。您应该在Debug或Realize文件夹中看到一个可执行文件,具体取决于您的建筑配置。如果您在可执行文件上单击鼠标右键,您应该会在终端上看到结果

  • 返回ECLIPSE,从运行/运行配置。。。然后浏览到您拥有可执行文件的文件夹-您已经找到了一个-您还可以在该窗口中根据需要更改生成配置。并为每次运行自动生成

  • 再运行一次,它应该会工作


  • 祝你好运

    无论在您的工作区中采用何种方法来解决此问题,此问题似乎已成为我创建的项目的固有问题。无论是使用参数还是确保用于链接的gcc版本都不起作用。我确实找到了一个直观的解决方案。这里是:“…二进制不可用…”错误。 执行以下操作:(请记住,以下步骤是在您采取上述任何一种方法之后进行的,并且这些方法都没有解决问题

    1.)删除所有内容-项目和文件。
    2.)创建新的项目和源文件

    我有类似的问题,但代码不同。在File.h文件中,确保

    virtual ~Destructor () {}; //Don't forget Curly braces {}
    
    上面的语句显示了已初始化()并用大括号{}定义的析构函数。在我的代码中,我忘了定义析构函数。
    希望这有帮助

    我也遇到了同样的问题,所以我拨弄了一下,发现如果我单击“运行”按钮右侧的“配置文件”按钮(绿色播放图标,下面有一个小时钟),我的程序将在下次单击“运行”按钮时运行

    我实际上不知道它做了什么,但它允许我运行代码


    如果有人知道这有什么帮助,以及这是否是一个实际的解决方案,请毫不犹豫地重新发布

    如果可以成功构建,但尝试运行时出现错误:

    可能的解决方案是向二进制输出文件添加具有完整路径的新配置

    Run->Run Configuration…->Main->C++应用程序):


    我正在使用Eclipse Oxygen,以下解决了我的问题:

    右键单击项目并转到属性。导航到C/C++构建>工具链编辑器并在当前工具链中选择MacOSX GCC,然后应用并关闭


    使用CMD+B构建项目,然后运行它。

    是否存在编译错误?是否检查文件系统中是否创建了实际的二进制文件(可执行文件)?如果没有编译错误,生成将成功完成。我不相信二进制文件正在被创建……你能发布你在“控制台”窗口中获得的编译输出消息吗?*****为项目HeloWord ** ***构建所有的构建文件:…/MIN .CPP调用:GCC C++编译器G++I/Deave/SDK/MaCOSX0.6SDK/Urr/包含-O0-G3-WALLAR-C-FETER长度=0-拱门i386-MMD-MP-MF“main.d”-MT“main.d”-o“main.o”“../main.cpp”完工建筑:../main.cpp建筑
    virtual ~Destructor () {}; //Don't forget Curly braces {}