Error: bad register name `%rax'
Error: bad register name `%rbx'
#include <iostream>
#include <cstdlib>
#include <stdint.h>
void read(void)
{
uint64_t rax = 0, rbx = 0;
__asm__ __volatile__ (
/* read value from rbx into rbx */
"movq %%rbx, %0;\n"
/* read value from rax into rax*/
"movq %%rax, %1;\n"
/* output args */
: "=r" (rbx), "=r" (rax)
: /* no input */
/* clear both rdx and rax */
: "%rbx", "%rax"
);
/* print out registers content */
std::cout << "RAX = " << rax << "\n";
std::cout << "RBX = " << rbx << "\n";
}
int main(int argc, char **argv)
{
read();
return 0;
}
我怀疑你的错误来自“clobber”一行:
: "%rbx", "%rax"
应改为:
: "rbx", "rax"
(哦,别问我为什么!)
从Eclipse运行install时,我们没有问题,因为编译器版本设置为1.8。 在终端上运行mvn安装时,我们得到以下错误。 当使用mvn install-X时,我们看到目标1.5 然而,这里是我的java和javac版本 我似乎从我运行的每个版本中,我们应该有1.8的合规性,但maven目标继续尝试安装1.5的合规性。
从事maven项目。我试图使用maven进行构建,但我遇到了以下错误!我正在使用JDK 8开发eclipse。 无法执行目标org.apache.maven.plugins:maven-compiler-plugin:2.3.2:编译(默认编译) 我也尝试了上面的解决方案,但我仍然得到错误!
我试着运行一个thrift网站上提供的thrift服务器和客户端程序,我得到了以下错误。谁能帮我解决这些错误吗。编码可以在以下位置找到:https://thrift.apache.org/tutorial/java
问题内容: 我有用32位汇编语言编写的程序…现在,我无法在64位OS上对其进行编译。在我们学校,它们是特定的,程序必须以32位版本编写。这是我的程序: 任何的想法?我尝试了很多方法来编译它。编译后输出错误: 输出: 问题答案: 首先将更改为并将符号更改为,然后使用链接目标文件,该文件将自动链接至该文件, 您需要这样做,因为AFAIK如果没有,就无法链接至libc。另外,在汇编时也应使用elf32而
我试图从spark 1.6迁移到2.0,但仅在2.0上编译时出现以下错误: 无法找到存储在数据集中的类型的编码器。导入支持原始类型(Int、String等)和产品类型(case类)spark.implicits._将在未来版本中添加对序列化其他类型的支持。val subGroupCount: Array[Seq[any]]=columns.map(c= 问候
问题内容: 使用 应该以32位版本编译该文件。 不幸的是我得到这个错误: 我该如何解决? 如果我不使用它,则使用64位指令。 问题答案: 要在64位Linux版本上编译32位二进制文件,您必须安装开发包和32位GNU C库 尝试这个 和