Bug 57060

Summary: Не импортируются модули cgo (например net/http) на Workstation (и везде, кроме Server, при отсутствии gcc)
Product: Sisyphus Reporter: Artem Varaksa <varaksaaa>
Component: golangAssignee: Alexey Shabalin <shaba>
Status: NEW --- QA Contact: qa-sisyphus
Severity: normal    
Priority: P5 CC: shaba
Version: unstable   
Hardware: x86_64   
OS: Linux   

Description Artem Varaksa 2025-11-28 13:52:03 MSK
Главная проблема:

> * ALT Workstation      11.1   x86_64 : не работает по умолчанию (не установлен /usr/bin/x86_64-alt-linux-gcc)


Нежелательное поведение - нужно, чтобы нельзя было установить golang без установки /usr/bin/x86_64-alt-linux-gcc:

> * ALT Workstation K    11.1.1 x86_64 : работает, если не удалять зависимость/пакет /usr/bin/x86_64-alt-linux-gcc
> * ALT Education (XFCE) 11.0   x86_64 : работает, если не удалять зависимость/пакет /usr/bin/x86_64-alt-linux-gcc
> * ALT Education (KDE)  11.0   x86_64 : работает, если не удалять зависимость/пакет /usr/bin/x86_64-alt-linux-gcc


Поведение, которое нужно дополнительно исследовать:

> * ALT Server           11.0   x86_64 : работает, даже если удалить зависимость/пакет /usr/bin/x86_64-alt-linux-gcc


Шаги
====

0. На системах кроме ALT Workstation: # apt-get remove /usr/bin/x86_64-alt-linux-gcc

1. # apt-get install -y golang golangci-lint

2. $ name=golang-cgo-test && \
    url="git.example.org/$name" && \
    mkdir -p ~/$name && \
    cd ~/$name && \
    go mod init "$url" && \
    { cat > main.go << EOF; }
package main
import "net/http"
EOF
    
3. $ go run .


Фактический результат
=====================

3. $ go run .

> # runtime/cgo
> /usr/bin/x86_64-alt-linux-gcc: No such file or director


Ожидаемый результат
===================

3. go run .

> # git.example.org/golang-cgo-test
> ./main.go:2:8: "net/http" imported and not used


Дополнительно
=============

$ golangci-lint run

> main.go:2:8: could not import net/http (/usr/lib/golang/src/net/http/client.go:14:2: could not import crypto/tls (/usr/lib/golang/src/crypto/tls/cache.go:8:2: could not import crypto/x509 (/usr/lib/golang/src/crypto/x509/parser.go:22:2: could not import net (/usr/lib/golang/src/net/cgo_linux.go:12:8: could not import C (cgo preprocessing failed))))) (typecheck)
> import "net/http"
>        ^
> 1 issues:
> * typecheck: 1


Воспроизводимость
=================

Воспроизводится на виртуальных машинах:

[p11] ALT Workstation 11.0 x86_64
golang-1.24.10-alt1

[p11+400906.6] ALT Workstation 11.0 x86_64
golang-1.25.4-alt1

[sisyphus] ALT Workstation 11.0 x86_64
golang-1.25.4-alt1