当前位置: 首页 > 工具软件 > MOOSE > 使用案例 >

make clean解决:【moose 编译出现错误后,即使利用git版本回退,后续编译无法继续】

郭炳
2023-12-01

问题:

1. 新增moose模块后出现编译错误:

Linking Executable /home/lee/projects/babbler/babbler-opt...
/home/lee/miniconda3/envs/moose/bin/../lib/gcc/x86_64-conda-linux-gnu/9.3.0/../../../../x86
_64-conda-linux-gnu/bin/ld: /home/lee/projects/moose/modules/heat_conduction/lib/libheat_co
nduction-opt.so: undefined reference to `Factory::create(std::__cxx11::basic_string<char, s
td::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std:
:char_traits<char>, std::allocator<char> > const&, InputParameters&, unsigned int, bool)'
/home/lee/miniconda3/envs/moose/bin/../lib/gcc/x86_64-conda-linux-gnu/9.3.0/../../../../x86
_64-conda-linux-gnu/bin/ld: /home/lee/projects/moose/modules/heat_conduction/lib/libheat_co
nduction-opt.so: undefined reference to `non-virtual thunk to SideIntegralPostprocessor::ge
tValue()'
/home/lee/miniconda3/envs/moose/bin/../lib/gcc/x86_64-conda-linux-gnu/9.3.0/../../../../x86
_64-conda-linux-gnu/bin/ld: /home/lee/projects/moose/modules/heat_conduction/lib/libheat_co
nduction-opt.so: undefined reference to `non-virtual thunk to GeneralUserObject::getSupplie
dItems[abi:cxx11]()'
/home/lee/miniconda3/envs/moose/bin/../lib/gcc/x86_64-conda-linux-gnu/9.3.0/../../../../x86
_64-conda-linux-gnu/bin/ld: /home/lee/projects/moose/modules/heat_conduction/lib/libheat_co
nduction-opt.so: undefined reference to `MeshGenerator::getMesh(std::__cxx11::basic_string<
char, std::char_traits<char>, std::allocator<char> > const&)'
/home/lee/miniconda3/envs/moose/bin/../lib/gcc/x86_64-conda-linux-gnu/9.3.0/../../../../x86
_64-conda-linux-gnu/bin/ld: /home/lee/projects/moose/modules/heat_conduction/lib/libheat_co
nduction-opt.so: undefined reference to `non-virtual thunk to GeneralUserObject::getRequest
edItems[abi:cxx11]()'
collect2: error: ld returned 1 exit status
make: *** [/home/lee/projects/moose/framework/app.mk:407:/home/lee/projects/babbler/babble
r-opt] 错误 1

2. Makefile禁用该模块,且清空新增文件后,也出现相同的错误,无法复原。

解决方案

make clean

清除已编译的错误文件,重新编译即可!

 类似资料: