常见问题之Golang——cgo: C compiler “gcc“ not found: exec: “gcc“: executable file not found in %PATH%错误...

常见问题之Golang——cgo: C compiler "gcc" not found: exec: "gcc": executable file not found in %PATH%错误

背景

本系列文章均为学习过程中记录的笔记,欢迎和我一起来学习Go语言。

全文使用环境如下:

  • 操作系统:windows10
  • 使用工具:Goland开发工具
  • golang版本:1.17

简介

本文主要是对我日常在使用golang时遇到的一些问题与解决方式进行的汇总,在此提供给大家便于排查一些遇到的问题,其中有更好的解决方案可在评论区留言。

正文

错误

cgo: C compiler "gcc" not found: exec: "gcc": executable file not found in %PATH%

Compilation finished with exit code 2

造成原因分析:

缺少gcc编译器,需要进行安装

解决方案:

1、进行下载基础程序并进行安装

image-20211029171100410

这里我们直接使用在线安装即可,通常你能打开这个下载页,基本上在线安装也没有啥问题,怕出问题你就打开科学上网就行。

image-20211029170802222

注意:这里需要根据系统是64还是32位进行选择,一般我们的系统都是64位的,改为x86_64即可。

image-20211029170904753

选择好一个要安装的位置,就等着它装完吧

image-20211029171008251

2、安装完成后,将该程序的命令程序可以在cmd中调用起来

打开系统环境变量,在系统path变量上面追加一下刚才安装的bin文件夹,如下图所示:

image-20211029171954076

3、打开cmd,进行输入gcc -v 查看是否能有效加载起来刚才配置

C:\Users\cnhuashao>gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=D:/Program\ Files/mingw-w64/x86_64-8.1.0-posix-seh-rt_v6-rev0/mingw64/bin/../libexec/gcc/x86_64-w64-mingw32/8.1.0/lto-wrapper.exe
Target: x86_64-w64-mingw32
Configured with: ../../../src/gcc-8.1.0/configure --host=x86_64-w64-mingw32 --build=x86_64-w64-mingw32 --target=x86_64-w64-mingw32 --prefix=/mingw64 --with-sysroot=/c/mingw810/x86_64-810-posix-seh-rt_v6-rev0/mingw64 --enable-shared --enable-static --disable-multilib --enable-languages=c,c++,fortran,lto --enable-libstdcxx-time=yes --enable-threads=posix --enable-libgomp --enable-libatomic --enable-lto --enable-graphite --enable-checking=release --enable-fully-dynamic-string --enable-version-specific-runtime-libs --disable-libstdcxx-pch --disable-libstdcxx-debug --enable-bootstrap --disable-rpath --disable-win32-registry --disable-nls --disable-werror --disable-symvers --with-gnu-as --with-gnu-ld --with-arch=nocona --with-tune=core2 --with-libiconv --with-system-zlib --with-gmp=/c/mingw810/prerequisites/x86_64-w64-mingw32-static --with-mpfr=/c/mingw810/prerequisites/x86_64-w64-mingw32-static --with-mpc=/c/mingw810/prerequisites/x86_64-w64-mingw32-static --with-isl=/c/mingw810/prerequisites/x86_64-w64-mingw32-static --with-pkgversion='x86_64-posix-seh-rev0, Built by MinGW-W64 project' --with-bugurl=https://sourceforge.net/projects/mingw-w64 CFLAGS='-O2 -pipe -fno-ident -I/c/mingw810/x86_64-810-posix-seh-rt_v6-rev0/mingw64/opt/include -I/c/mingw810/prerequisites/x86_64-zlib-static/include -I/c/mingw810/prerequisites/x86_64-w64-mingw32-static/include' CXXFLAGS='-O2 -pipe -fno-ident -I/c/mingw810/x86_64-810-posix-seh-rt_v6-rev0/mingw64/opt/include -I/c/mingw810/prerequisites/x86_64-zlib-static/include -I/c/mingw810/prerequisites/x86_64-w64-mingw32-static/include' CPPFLAGS=' -I/c/mingw810/x86_64-810-posix-seh-rt_v6-rev0/mingw64/opt/include -I/c/mingw810/prerequisites/x86_64-zlib-static/include -I/c/mingw810/prerequisites/x86_64-w64-mingw32-static/include' LDFLAGS='-pipe -fno-ident -L/c/mingw810/x86_64-810-posix-seh-rt_v6-rev0/mingw64/opt/lib -L/c/mingw810/prerequisites/x86_64-zlib-static/lib -L/c/mingw810/prerequisites/x86_64-w64-mingw32-static/lib '
Thread model: posix
gcc version 8.1.0 (x86_64-posix-seh-rev0, Built by MinGW-W64 project)

4、重启一下之前报错的程序或Goland,再次进行启动程序尝试,恢复正常。

本文声明:

88x31.png

知识共享许可协议
本作品由 cn華少 采用 知识共享署名-非商业性使用 4.0 国际许可协议 进行许可。

<think>好的,我现在需要帮助用户解决“bash: seqkit: command not found”的问题。根据用户提供的引用资料,特别是引用[3]和之前的对话内容,用户可能已经尝试过一些安装方法,但可能遇到了路径配置的问题。 首先,用户之前的问题是关于检测FASTA文件中的特殊字符,而我的回答中提到了使用Seqkit工具。现在用户遇到的问题是找不到seqkit命令,说明安装或环境变量配置可能有问题。 接下来,我需要参考用户提供的引用。引用[3]提到了安装csvtk的方法,包括下载压缩包、解压、复制到~/bin或/usr/local/bin,以及使用conda安装。这些步骤同样适用于安装Seqkit,因为两者都是命令行工具。用户可能尝试过类似的方法但未成功,或者路径没有正确配置。 另外,引用[4]和[5]讨论了环境变量的问题,例如PATH设置不正确导致命令找不到。这可能也是用户当前问题的原因。例如,如果用户将Seqkit安装到了~/bin目录,但该目录没有添加到PATH中,或者安装到了系统路径但没有权限。 我需要考虑不同的安装方法,包括直接下载二进制文件、使用conda安装、以及源码编译。同时,要确保安装后的路径正确添加到PATH环境变量中,可能需要检查用户的.bashrc或.bash_profile文件,或者建议用户使用sudo复制到系统目录。 还要注意用户是否有足够的权限进行安装,例如是否需要使用sudo。此外,用户可能尝试过某些步骤但遇到了问题,比如conda安装时依赖项耗时较长,或者下载的版本与系统架构不匹配(如64位与32位)。 最后,需要验证安装是否成功,建议用户运行seqkit version来检查。如果仍然有问题,可能需要进一步排查路径配置或文件权限。</think>### 分步解决方案:解决 "seqkit: command not found" 错误 --- #### **1. 安装 Seqkit(3种推荐方式)** ##### **1.1 直接下载二进制文件(最快)** ```bash # 进入下载目录(推荐用户目录) cd ~/Downloads # 下载最新版(当前最新v2.3.0,适配Linux 64位系统) wget https://github.com/shenwei356/seqkit/releases/download/v2.3.0/seqkit_linux_amd64.tar.gz # 解压并安装 tar -zxvf seqkit_linux_amd64.tar.gz chmod +x seqkit # 添加执行权限 # 选择安装路径: # 方案A:个人使用(无需root权限) mkdir -p ~/bin && mv seqkit ~/bin echo 'export PATH="$HOME/bin:$PATH"' >> ~/.bashrc # 方案B:系统级安装(需sudo权限) sudo mv seqkit /usr/local/bin/ ``` **验证安装**:`seqkit version` 应输出类似 `seqkit v2.3.0`[^3] --- ##### **1.2 Conda 安装(推荐已配置生物信息学环境)** ```bash # 创建独立环境(可选) conda create -n bioinfo conda activate bioinfo # 安装 Seqkit(通过bioconda频道) conda install -c bioconda seqkit ``` **注意**:若遇到依赖冲突,可尝试 `mamba install seqkit`(需先安装mamba)[^3] --- ##### **1.3 源码编译(需Go语言环境)** ```bash # 安装Go编译器 sudo apt-get install golang # Ubuntu/Debian # 编译 Seqkit git clone https://github.com/shenwei356/seqkit.git cd seqkit make ``` **输出文件**:`bin/seqkit` --- #### **2. 配置环境变量(关键步骤)** 若安装后仍报错,需检查路径配置: ```bash # 检查当前PATH echo $PATH # 手动添加路径(临时生效) export PATH="$HOME/bin:/usr/local/bin:$PATH" # 永久生效配置(选择对应方案) # 若使用方案A: echo 'export PATH="$HOME/bin:$PATH"' >> ~/.bashrc # 若使用方案B: echo 'export PATH="/usr/local/bin:$PATH"' >> ~/.bashrc # 使配置生效 source ~/.bashrc ``` **典型错误**:若出现`Permission denied`,需用`sudo chmod +x /安装路径/seqkit`[^4] --- #### **3. 验证与故障排除** | 问题现象 | 解决方案 | |---------------------------|-----------------------------------| | `command not found` 依旧 | 执行 `which seqkit` 检查路径是否正确 | | 版本显示异常 | 检查是否与其他软件重名(`alias seqkit=/正确路径`) | | 动态库缺失(如libgsl.so) | 安装依赖库:`sudo apt-get install libgsl-dev`[^1] | --- ### 扩展应用场景 1. **批量处理FASTA文件**: ```bash seqkit stats *.fa # 统计所有.fa文件的序列信息 ``` 2. **快速序列格式转换**: ```bash seqkit fx2tab input.fa | cut -f2 > sequences.txt ``` --- ### 相关问题 1. 如何用Seqkit快速提取FASTA文件中的特定序列? 2. 生物信息学工具安装时出现动态库依赖错误如何解决? 3. Conda环境与系统环境变量冲突时如何处理?
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CN華少

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值