4.4.2-3 unusable for 64bit development

Bug #568028 reported by Steffen Neumann
86
This bug affects 17 people
Affects Status Importance Assigned to Milestone
gcc-mingw32 (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

Binary package hint: gcc-mingw32

Hi,

the current version is unusable for 64bit development,
the debian version 4.4.2-5 has some missing files.

Yours,
Steffen

Revision history for this message
NY00123 (ny00) wrote :

I confirm. Using the Debian version, a short test program (a simple main function doing nothing) could actually be compiled. In contrary to the current Ubuntu package, it has got 64-bit libgcc and other missing files, although a 64-bit g++ compiler isn't there.

Revision history for this message
Pali (pali) wrote :

Hello,

I repack debian version of gcc-mingw32 to my PPA https://launchpad.net/~pali.rohar/+archive/ppa
I enabled support for amd64-mingw32msvc-g++ C++ compiler too (which is not in debian)

Revision history for this message
Gene Cumm (gene-cumm) wrote :

Copying my comments from bug # 640181.

gcc-mingw32 contains /usr/lib/gcc/i586-mingw32msvc/4.4.2/libgcc.a for the creation of 32-bit Windows (i586) code but the same does not exist (along with a bunch of other lib*.a files) for the amd64 target.

gcc-mingw32 for Maverick (10.10) on amd64 and i386 contains /usr/lib/gcc/amd64-mingw32msvc/4.4.4/libgcc.a as of 2010-09-19. Is there any way the changes needed could be incorporated into gcc-mingw32 for Lucid (10.04)?

Revision history for this message
Nathan Osman (george-edison55) wrote :

I just discovered this when I tried to compile a C++ application with g++ - only to discover that g++ was missing. This is very serious and prevents any kind of development targetting Win64.

Revision history for this message
Nathan Osman (george-edison55) wrote :

For those interested (and using the amd64 architecture), you can pick up one of the missing files here (g++): http://files.quickmediasolutions.com/amd64-mingw32msvc-g++.tar.bz2

Revision history for this message
mapron (mapron) wrote :

in sid all ok, so i just get package from there.
http://packages.debian.org/en/sid/i386/gcc-mingw32/

Revision history for this message
mapron (mapron) wrote :

my fail.. please, ignore my comment - in debian the're missed too

Revision history for this message
Matpen (matpen) wrote :

After installing the mingw-w64 package on maverick amd64

matteo@ubuntubox:/tmp/qt-win-64$ amd64-mingw32msvc-g++ main.cpp -o test.exe
amd64-mingw32msvc-g++: command not found
matteo@ubuntubox:/tmp/qt-win-64$ amd64-mingw32msvc-gcc main.cpp -o test.exe
amd64-mingw32msvc-gcc: main.cpp: C++ compiler not installed on this system

while trying to use pali's ppa, I found out that the link is broken. I also tryed ppa:mingw-packages/ppa, but the packages there are still affected by the same bug.

Could someone explain a solution in detail (if there is one)?
Thank you!

Revision history for this message
Pali (pali) wrote :

I moved all win32 cross compiler to new ppa:
https://launchpad.net/~mingw-packages/+archive/ppa

Official mingw-w64 ppa:
https://launchpad.net/~mingw-w64/+archive/ppa

Cross compiler(s) are in packages:
i686-w64-mingw32-toolchain
x86-64-w64-mingw32-toolchain

and programs are:
$ i686-w64-mingw32-gcc
$ i686-w64-mingw32-g++
$ x86_64-w64-mingw32-gcc
$ x86_64-w64-mingw32-g++

Revision history for this message
Matpen (matpen) wrote :

It did not work:

sudo add-apt repository ppa:<ppa-name>
sudo apt-get update
sudo apt-get install i686-w64-mingw32-toolchain x86-64-w64-mingw32-toolchain gcc-mingw32 w64-toolchain mingw-w64

where <ppa-name> is one of (I tryed them all): pali/pali, pali/ppa, mingw-w64/ppa, mingw-packages/ppa

some packages are not found, for the others no newer version is available (I am on maverick 64bit). I even tryed to apt-get purge mingw-w64 gcc-mingw32, but the installed version is always the same.

the needed programs are, after all this, still missing on my system: i686-w64-mingw32-gcc, i686-w64-mingw32-g++, x86_64-64-mingw32-gcc, x86_64-w64-mingw32-g++, amd64-mingw32msvc-g++

Only one test worked:
wget https://launchpad.net/~pali/+archive/pali/+files/gcc-mingw32_4.4.2-6ubuntu0%7Elucid%7Epalippa5_amd64.deb
sudo apt-get install libmpfr1ldbl
sudo dpkg -i gcc-mingw32_4.4.2-6ubuntu0~lucid~palippa5_amd64.deb

The amd64-mingw32msvc-g++ compiler seems to work after that. This does not look like a clean solution, though.
I could really use a step-by-step explanation at this point...

Revision history for this message
Pali (pali) wrote :

Packges i686-w64-mingw32-toolchain and x86-64-w64-mingw32-toolchain are replecament for all mingw32 and mingw-w64 package. You need to purge all mingw packages before installing these news.

Here are working deb packages (it is not only for karmic):
http://ppa.launchpad.net/mingw-packages/ppa/ubuntu/pool/main/w/w64-toolchain/

In my PPA pali/pali I have old version.

Revision history for this message
Matpen (matpen) wrote :

ok, great! those two seem to work.

One last question: is there a way to grab them via apt? As said before, the following does not work:
sudo add-apt repository ppa:mingw-packages/ppa
sudo apt-get update
sudo apt-get install i686-w64-mingw32-toolchain x86-64-w64-mingw32-toolchain

Many thanks for your help!!

Revision history for this message
Pali (pali) wrote :

In ppa mingw-packages are packages builded only for karmic.

Revision history for this message
Matpen (matpen) wrote :

Thank you again!

I summarized the whole install process on ubuntuforums, in reply to others who were looking for the same answers:
http://ubuntuforums.org/showthread.php?p=10561430#post10561430

Changed in gcc-mingw32 (Ubuntu):
status: New → Confirmed
Revision history for this message
Stephen Kitt (steve-sk2) wrote :

The gcc-mingw-w64 package, now available in Oneiric, supports 32- and 64-bit Windows development.

Revision history for this message
Stephen Kitt (steve-sk2) wrote :

gcc-mingw-w64 now replaces gcc-mingw32, please use that instead.

Changed in gcc-mingw32 (Ubuntu):
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.