Не могу найти скрипт компоновщика при кросс-компиляции для Win32 из LinuxLinux

Ответить
Гость
 Не могу найти скрипт компоновщика при кросс-компиляции для Win32 из Linux

Сообщение Гость »


Невозможно скомпилировать простой hello.c для Win32, пожалуйста, помогите. Компиляция для 64-разрядной версии Windows работает нормально.
Неправильные варианты? -m32 должно быть достаточно? Я тоже попробовал марш. Стоит ли мне попробовать использовать ldconfig или сменить sysroot на ld? Указание -T i386pe.x для ld также не сработало. Я думаю, что у меня установлены все пакеты. Почему же ld не находит скрипт? Или я что-то еще упускаю?

Код: Выделить всё

$ x86_64-w64-mingw32-gcc hello.c -m32
/usr/bin/x86_64-w64-mingw32-ld: cannot open linker script file ldscripts/i386pe.x: No such file or directory
collect2: error: ld returned 1 exit status

Код: Выделить всё

$ locate i386pe.x|ag x$
/snap/gnome-3-38-2004/143/usr/lib/x86_64-linux-gnu/ldscripts/i386pe.x
/snap/gnome-42-2204/120/usr/lib/x86_64-linux-gnu/ldscripts/i386pe.x
/snap/gnome-42-2204/141/usr/lib/x86_64-linux-gnu/ldscripts/i386pe.x
/usr/lib/x86_64-linux-gnu/ldscripts/i386pe.x

Код: Выделить всё

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 22.04.4 LTS
Release:        22.04
Codename:       jammy

Код: Выделить всё

$ sudo apt list --installed | grep mingw

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

binutils-mingw-w64-i686/jammy,now 2.38-3ubuntu1+9build1 amd64 [installed]
binutils-mingw-w64-x86-64/jammy,now 2.38-3ubuntu1+9build1 amd64 [installed,automatic]
g++-mingw-w64-i686-posix/jammy,now 10.3.0-14ubuntu1+24.3 amd64 [installed,automatic]
g++-mingw-w64-i686-win32/jammy,now 10.3.0-14ubuntu1+24.3 amd64 [installed,automatic]
g++-mingw-w64-i686/jammy,jammy,now 10.3.0-14ubuntu1+24.3 all [installed,automatic]
g++-mingw-w64-x86-64-posix/jammy,now 10.3.0-14ubuntu1+24.3 amd64 [installed,automatic]
g++-mingw-w64-x86-64-win32/jammy,now 10.3.0-14ubuntu1+24.3 amd64 [installed,automatic]
g++-mingw-w64-x86-64/jammy,jammy,now 10.3.0-14ubuntu1+24.3 all [installed,automatic]
g++-mingw-w64/jammy,jammy,now 10.3.0-14ubuntu1+24.3 all [installed,automatic]
gcc-mingw-w64-base/jammy,now 10.3.0-14ubuntu1+24.3 amd64 [installed,automatic]
gcc-mingw-w64-i686-posix-runtime/jammy,now 10.3.0-14ubuntu1+24.3 amd64 [installed,automatic]
gcc-mingw-w64-i686-posix/jammy,now 10.3.0-14ubuntu1+24.3 amd64 [installed,automatic]
gcc-mingw-w64-i686-win32-runtime/jammy,now 10.3.0-14ubuntu1+24.3 amd64 [installed,automatic]
gcc-mingw-w64-i686-win32/jammy,now 10.3.0-14ubuntu1+24.3 amd64 [installed]
gcc-mingw-w64-i686/jammy,jammy,now 10.3.0-14ubuntu1+24.3 all [installed]
gcc-mingw-w64-x86-64-posix-runtime/jammy,now 10.3.0-14ubuntu1+24.3 amd64 [installed,automatic]
gcc-mingw-w64-x86-64-posix/jammy,now 10.3.0-14ubuntu1+24.3 amd64 [installed,automatic]
gcc-mingw-w64-x86-64-win32-runtime/jammy,now 10.3.0-14ubuntu1+24.3 amd64 [installed,automatic]
gcc-mingw-w64-x86-64-win32/jammy,now 10.3.0-14ubuntu1+24.3 amd64 [installed,automatic]
gcc-mingw-w64-x86-64/jammy,jammy,now 10.3.0-14ubuntu1+24.3 all [installed,automatic]
gcc-mingw-w64/jammy,jammy,now 10.3.0-14ubuntu1+24.3 all [installed,automatic]
libz-mingw-w64/jammy,jammy,now 1.2.11+dfsg-4 all [installed,auto-removable]
mingw-w64-common/jammy,jammy,now 8.0.0-1 all [installed,automatic]
mingw-w64-i686-dev/jammy,jammy,now 8.0.0-1 all [installed]
mingw-w64-x86-64-dev/jammy,jammy,now 8.0.0-1 all [installed,automatic]
mingw-w64/jammy,jammy,now 8.0.0-1 all [installed]


Источник: https://stackoverflow.com/questions/781 ... from-linux
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Linux»