Open dranov opened 2 days ago
See also: https://github.com/ufmg-smite/lean-smt/issues/115
$ ldd --version
ldd (Ubuntu GLIBC 2.38-1ubuntu6.3) 2.38
I can build a fresh clone of the lean-smt
repo without issues, so I'm not sure exactly what's going on.
If I add the following to lakefile.lean
:
def libcpp : String :=
if System.Platform.isWindows then "libstdc++-6.dll"
else if System.Platform.isOSX then "libc++.dylib"
else "libstdc++.so.6"
package «smter» where
precompileModules := true
moreLeanArgs := #[s!"--load-dynlib={libcpp}"]
moreGlobalServerArgs := #[s!"--load-dynlib={libcpp}"]
I get linking issues that seem related to https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html, e.g.:
info: stderr:
ld.lld: error: undefined symbol: std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>::c_str() const
The README says:
but doing this in a fresh project (from
lake new
) leads to a linking error onlake build
:What is the correct way to use
lean-smt
in a fresh Lean project? What should go inlakefile.lean
?