当尝试第二个示例https://octave.org/doc/v5.1.0/Standalone-Programs.html#Standalone-Programs时,出现以下错误:

embedded.cc:(.text+0x132): undefined reference to `octave::feval(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, octave_value_list const&, int)'
mkoctfile的-d选项提供以下两个g++命令,其中第一个可以正常使用。
g++ -std=gnu++11 -c  -fPIC -I/grid/common/pkgsData/octave-v5.1.0/Linux/RHEL7.0-2017-x86_64/include/octave-5.1.0/octave/.. -I/grid/common/pkgsData/octave-v5.1.0/Linux/RHEL7.0-2017-x86_64/include/octave-5.1.0/octave -I/grid/common/pkgsData/octave-v5.1.0/Linux/RHEL7.0-2017-x86_64/include  -pthread -fopenmp -fPIC    embedded.cc -o /tmp/oct-EYDDih.o
g++ -std=gnu++11  -I/grid/common/pkgsData/octave-v5.1.0/Linux/RHEL7.0-2017-x86_64/include/octave-5.1.0/octave/.. -I/grid/common/pkgsData/octave-v5.1.0/Linux/RHEL7.0-2017-x86_64/include/octave-5.1.0/octave -I/grid/common/pkgsData/octave-v5.1.0/Linux/RHEL7.0-2017-x86_64/include  -pthread -fopenmp -fPIC -rdynamic  -fPIC   -o embedded  /tmp/oct-EYDDih.o    -L/grid/common/pkgsData/octave-v5.1.0/Linux/RHEL7.0-2017-x86_64/lib -L/grid/common/pkgsData/octave-v5.1.0/Linux/RHEL7.0-2017-x86_64/lib/octave/5.1.0 -loctinterp -loctave
知道如何解决这个问题吗?

最佳答案

我发现此问题的根本原因是,加载了一个EDA工具(Cadence Xcelium)模块,该模块使g++指向其私有(private)版本,当我用/ bin / g++替换g++时,它可以在我的环境中运行。

09-05 23:49