【问题标题】:Compiling Multi2Sim with g++ compiler使用 g++ 编译器编译 Multi2Sim
【发布时间】:2014-10-29 15:16:31
【问题描述】:

我是 Multi2Sim 的新手。 我看到整个项目都是基于纯C的。 我想添加一些带有 C++ 库函数的文件。每当我想用这些 C++ 文件制作 Multi2Sim 时,都会出错。

我尝试在配置语句中使用 CXX=g++ 选项,希望 multi2sim 将使用 g++ 编译。但是我得到了同样的致命错误,说“iostream:找不到这样的文件”。

似乎 multi2sim 总是使用 C 编译器 gcc 而不是 g++ 编译。

有什么方法可以强制 Multi2Sim 使用 g++ 编译器进行编译?

【问题讨论】:

  • 将 C 代码编译为 C++ 代码是导致精神病的主要原因。
  • 我正在将另一个项目与使用 C++ 构建的 M2S 集成。我必须使用 g++ 一起编译它们。

标签: c++ gcc g++ simulation


【解决方案1】:

您可以获得干净的结帐并更改线路:

AC_PROG_CC([gcc])

在执行任何其他操作之前在 configure.ac 中。

但我并不是说它会很有趣。这是一个非常庞大的项目,要像这样乱来。

也许暂时不用 C++ 会带来不错的改变。

更新:我试过这个,但由于我不理解的原因,它没有用。但就在make 之前,我跑了:

sed -i 's/gcc/g++/g' Makefile

这似乎有一些效果。

但我注意到那个项目中无论如何都有 C++ 源代码,所以没有必要像这样搞砸。只需调用您的文件 something.cc 并将其添加到 Makefile.am,然后重新运行整个 autotools 引导程序。

【讨论】:

  • 我找不到任何行 AC_PROG_CC([gcc])。在配置文件中,我只能看到 AC_PROG_CC 和 AC_PROG_CXX。
  • 我检查了下载的。这不包括该设置。很抱歉。
  • 这需要更新的 gcc 编译器。我有 4.6.3。我想使用作为 4.2 版发布的稳定版。有没有办法用 g++ 编译那个版本?
  • 你可以从 svn 中检出旧版本的项目,或者你可以更新你的编译器。我认为原则上没有太大变化。及时前进通常会更好。只是为了好玩,您可以从源代码构建 gcc。
  • 我尝试使用 m2s 站点中提到的这个命令检查读写版本:svn co svn+ssh://svnuser@multi2sim.org/multi2sim/trunk multi2sim 但这给了我权限被拒绝错误。之后我下载了只读版本。当我配置这个版本时,它给出了找不到 Makefile.in 的错误。知道有什么问题吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-03-02
  • 1970-01-01
  • 1970-01-01
  • 2016-10-29
  • 1970-01-01
  • 2012-02-12
  • 2016-01-12
相关资源
最近更新 更多