-bash ./foo: 编译后没有那个文件或目录

-bash ./foo: No such file or directory after compilation

我正在编译一个名为 benchmark_Quickthread_01.cpp:

的程序
#include <quickthread/QuickThread.h>
#include <iostream>
using namespace qt;

int main()
{
  qtInit qtInit( -1 );

  std::cout << "Blub\n" << std::endl;
  return 0;
}

使用编译器选项:

g++ -L /usr/local/lib64/ -static ./benchmark_Quickthread_01.cpp -lQuickThread 
-o qt.exe -pthread -Wl,-Bdynamic -lnuma -ldl -lrt -Wall

编译器没有给出错误。但是,当我尝试 运行 文件时,bash 给我以下错误:

-bash: ./qt.exe: No such file or directory

文件存在,我可以 ls、cat 并检查大小 ('du -h qt.exe' = 272K)

可能导致问题的原因是什么?

-static-Wl,-Bdynamic 有冲突。删除一个或另一个,然后重试。