【问题标题】:Problems with Nsight and librariesNsight 和库的问题
【发布时间】:2015-07-14 21:47:42
【问题描述】:

警告:新手问题! 我在 Nsight IDE 中创建一个新的空项目,然后创建一个文件“hello.cpp”:

#include <iostream>
using namespace std;

int main ()
{
  cout << "Hello World!";
  return 0;
}

调试器输出:

In function `_start':
(.text+0x20): undefined reference to `main'
collect2: ld returned 1 exit status
make: *** [new] Error 1

它没有找到 cout,即使我看到它在那里(事实上我看到了 它已包含在 Nsight 窗口的右上角)。 除了这个简单的问题外,我在 Nsight 中的许多库都有问题,Code::Blocks 中的相同代码没有任何问题! Nsight 的工作方式是否不同?谢谢!

【问题讨论】:

    标签: iostream nsight


    【解决方案1】:

    我发现 Nsight Eclipse 对文件的扩展名非常特别。

    在我的安装中,我必须在头文件中明确写下“.h”,例如 #include &lt;iostream.h&gt;,否则它们将无法识别。

    我发现的另一个问题是源文件本身的扩展名。 Nsight 不喜欢您有 .c 扩展名,因为某些标头中包含的某些实例未找到。每当我将扩展名更改为 .cu、.cpp 或 .cc 时,实例都会与相应的标头链接。

    我建议您将标题扩展名添加为“.h”。让我们知道它是否有效。

    【讨论】:

    • 感谢您的回复mrei。实际上,如果我切换到 我看不到任何改进,但标记未解决包含:.
    • 你是对的!我刚试过,iostream 不喜欢'.h'。我要请教一些专家,请稍等。
    猜你喜欢
    • 2013-11-13
    • 2011-09-03
    • 2021-02-02
    • 2014-12-10
    • 2020-12-29
    • 2011-08-11
    • 1970-01-01
    • 1970-01-01
    • 2014-09-23
    相关资源
    最近更新 更多