• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Win10 Rust 编译报错: linking with `link.exe` failed: exit code: 1181

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

解决途径:(注意,最好不要用git bash上运行rust命令,我这边用cmd运行成功的【当然中间经过了很多步骤所以也不清楚这个是不是原因之一】)

一:注意安装VS2017(最好不要安装更高版本以防不支持),然后添加link.exe的目录到PATH,如下:

C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.16.27023\bin\Hostx64\x64

二:重启后如果还是不能编译,则更新Windows10系统到最新(重启)再试试;

 

三:如果上面都不行,需要在控制台里用cargo run(或者加verbose),然后会看到有报错提示:

 = note: Non-UTF-8 output: LINK : fatal error LNK1181: \xce\xde\xb7\xa8\xb4\xf2\xbf\xaa\xca\xe4\xc8\xeb\xce\xc4\xbc\xfe\xa1\xb0libpq.lib\xa1\xb1\r\n

这里的是乱码(是GBK的,如果GBK转换无效再试试UTF-8的),可以用Python或者Java来转换:

Python:(内容写自己的)

content = b"LINK : fatal error LNK1181: \xce\xde\xb7\xa8\xb4\xf2\xbf\xaa\xca\xe4\xc8\xeb\xce\xc4\xbc\xfe\xa1\xb0sqlite3.lib\xa1\xb1"
print content.decode("gbk")

Java:

String str = "LINK : fatal error LNK1181: \\xce\\xde\\xb7\\xa8\\xb4\\xf2\\xbf\\xaa\\xca\\xe4\\xc8\\xeb\\xce\\xc4\\xbc\\xfe\\xa1\\xb0sqlite3.lib\\xa1\\xb1";
str = str.replace("\\x", "%");
System.out.println(URLDecoder.decode(str, "gbk"));

我这边的是提示:LNK1181: 无法打开输入文件“libpq.lib”

经过百度得知libpq.lib是Postgres数据库里的东西,于是安装Postgres,但是发现还是报错;

这个时候可以试着重启看看,如果不行则是找到Postgres的这个库文件,然后将其所在目录添加到PATH里,我这边是:E:\Apps\PgDB11\lib;

接着重开terminal(重要,也许还需要重启),并且cargo clean后在cargo run就OK了。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
matlab下使用svmlib工具包发布时间:2022-07-18
下一篇:
Rust-opencv 安装发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap