You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Linux Mint 20.3下使用dfx SDK创建新项目触发段错误求助

排查dfx new时出现Segmentation fault (core dumped)的问题

问题场景

运行Linux Mint 20.3的联想X200 ThinkPad,此前在Win10环境下可正常使用dfx SDK。通过sh -ci "$(curl -fsSL https://smartcontracts.org/install.sh)"完成安装后,dfx文件位于/home/doolb/bin目录,执行export PATH=$PATH:/home/doolb/bin后,dfx --version可正常返回dfx 0.11.1,但执行dfx new DApp创建新项目时出现报错:

Fetching manifest https://sdk.dfinity.org/manifest.json
⠚ Checking for latest dfx version...
Segmentation fault (core dumped)

已完成memtest内存检测、重装系统和dfx,但问题仍存在,怀疑与写入权限相关。


排查步骤

1. 验证写入权限

  • 检查当前用户对/home/doolb/bin目录及当前工作目录的权限:
    ls -ld /home/doolb/bin
    ls -ld $(pwd)
    
    确保当前用户拥有读、写、执行权限(权限位显示为rwx)。
  • 尝试在/tmp目录(默认所有用户可写)创建测试项目:
    cd /tmp
    dfx new test_dapp
    
    若能成功创建,说明原工作目录存在权限问题,需调整目录权限或所属用户组。

2. 跳过版本检查强制指定dfx版本

报错发生在版本检查阶段,可能是该环节的兼容性问题。尝试直接使用本地已安装的0.11.1版本创建项目:

DFX_VERSION=0.11.1 dfx new DApp

3. 重新验证dfx二进制文件完整性

  • 删除现有dfx文件:
    rm /home/doolb/bin/dfx
    
  • 手动下载对应版本的dfx二进制文件:
    curl -o /home/doolb/bin/dfx https://github.com/dfinity/sdk/releases/download/0.11.1/dfx-x86_64-linux
    
  • 添加执行权限:
    chmod +x /home/doolb/bin/dfx
    
  • 再次尝试创建项目:
    dfx new DApp
    

4. 确认系统架构兼容性

联想X200部分型号为32位系统,而dfx 0.11.1仅支持64位环境,这会导致段错误。检查系统架构:

uname -m

若输出为i686(32位),需升级至64位系统,或尝试更早版本的dfx(部分旧版本可能支持32位)。

5. 分析核心转储定位问题

  • 临时启用核心转储:
    ulimit -c unlimited
    
  • 再次执行dfx new DApp,生成核心转储文件core。
  • 使用gdb分析转储文件:
    gdb /home/doolb/bin/dfx core
    
    在gdb中输入bt查看调用栈,可定位段错误发生的具体位置,进一步缩小排查范围。

内容的提问来源于stack exchange,提问作者Doolb

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 08:45:35