< 返回版块

Do7and 发表于 2024-04-05 18:08

跑别人的项目遇到的

$ cargo run -- awesome
   Compiling mdict-cli-rs v0.1.0 (C:\Do7and\DevEnv\mdict\mdict-cli-rs)
error: linking with `link.exe` failed: exit code: 1120
  |
  = note: "C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC\\Tools\\MSVC\\14.37.32822\\bin\\HostX64\\x64\\link.exe" "/NOLOGO" "C:\\Users\\...好多行
...
 "/NATVIS:C:\\Users\\Do7and\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\etc\\libcore.natvis" "/NATVIS:C:\\Users\\Do7and\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\etc\\libstd.natvis"
  = note: libminilzo-107ea18547650774.rlib(minilzo-107ea18547650774.minilzo.4be8970391162c02-cgu.0.rcgu.o) : error LNK2019: unresolved external symbol __imp_lzo1x_1_compress referenced in function _ZN7minilzo8compress17h6c4b06b83d14d78cE
          libminilzo-107ea18547650774.rlib(minilzo-107ea18547650774.minilzo.4be8970391162c02-cgu.0.rcgu.o) : error LNK2019: unresolved external symbol __imp_lzo1x_decompress_safe referenced in function _ZN7minilzo10decompress17h31867d39ce3d3d87E
          C:\Do7and\DevEnv\mdict\mdict-cli-rs\target\debug\deps\mdict_cli_rs.exe : fatal error LNK1120: 2 unresolved externals


error: could not compile `mdict-cli-rs` (bin "mdict-cli-rs") due to 1 previous error


跑另一个项目也遇到一样的问题,怀疑是rust toolchain有问题,但是重装了下rust还是不行,搜这个报错大多讲的是用VC++的,没啥进展,有没有大佬知道这是咋回事的

评论区

写评论
asuper 2024-04-07 10:11

直接放lzo2.lib的话,注意一下版本是否一致。 另外我遇到过rust版本更新后,导致工程内存在新旧版本的编译文件同时存在导致的link问题,cargo clean可以解决

作者 Do7and 2024-04-06 08:58

hello world试过了是ok的,我按你说的排查一下

--
👇
RedPanda: 我倒是遇见过类似的情况,忘记是编译哪个例子了。我记得当时是某个库引用了github上的源码来着,但由于网络问题,这个源码下载不完全,就会报类似的错误。我估计题主编译hello world应该是不会报错的吧?我猜要么就是某个库的源码没下载完全,要么就是某个链接库没在环境里设置好路径?

作者 Do7and 2024-04-06 08:57

是的是的,前面就是lzo2.lib缺失,但是找一个lzo2.lib放进toolchain的目录里报错就会变成这个

--
👇
vSylva: 该是缺少了lzo的lib

= note: LINK : fatal error LNK1181: 无法打开输入文件“lzo2.lib”

vSylva 2024-04-06 01:07

该是缺少了lzo的lib

= note: LINK : fatal error LNK1181: 无法打开输入文件“lzo2.lib”

RedPanda 2024-04-05 21:00

我倒是遇见过类似的情况,忘记是编译哪个例子了。我记得当时是某个库引用了github上的源码来着,但由于网络问题,这个源码下载不完全,就会报类似的错误。我估计题主编译hello world应该是不会报错的吧?我猜要么就是某个库的源码没下载完全,要么就是某个链接库没在环境里设置好路径?

1 共 5 条评论, 1 页