[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: who is building Octave on Windows systems?
From: |
John W. Eaton |
Subject: |
Re: who is building Octave on Windows systems? |
Date: |
Wed, 26 Jan 2011 03:05:59 -0500 |
On 25-Jan-2011, Benjamin Lindner wrote:
| Together with the cross-compilers provided from the mingw-w64 project
| http://sourceforge.net/projects/mingw-w64/ I guess this would enable
| you to cross-build from a linux host.
I tried this but haven't been able to generate a binary even for a
simple "hello world" program that I can run with Wine.
I'm guessing the problem is not with Wine since I was able to download
the Firefox installer for Windows, run it to install Firefox, and then
run Firefox and browse the web.
I'd be grateful if anyone could provide some clues. My system is a
Debian amd64 (x86_64) system and so I downloaded
mingw-w32-1.0-bin_x86_64-linux_20110114.tar.bz2
from the mingw-64 dowload page on sourceforge. As I understand it,
the mingw-w32 part of this filename means that it is supposed to
generate executables for 32-bit Windows, which is what I want since
I'll be using Wine to execute them. The x86_64_linux part means that
the compiler is supposed to run on an x86_64 Linux system.
After unpacking this into ~/mingw and adding ~/mingw/bin to my PATH,
I'm able to run
i686-w64-mingw32-g++ -v foo.cc -o foo.exe
to compile the program
#include <iostream>
int
main (void)
{
std::cerr << "foo-i-hithere" << std::endl;
return 0;
}
This seems to work and gives me a file called foo.exe, which appears
to be a Windows 32-bit binary:
$ file foo.exe
foo.exe: PE32 executable for MS Windows (console) Intel 80386 32-bit
(the copy of Firefox that I installed reports exactly the same thing).
I have Wine installed from the Debian (testing) package. I added
Z:\\home\\jwe\mingw\\bin to my PATH in my ~/.wine/system.reg file so
that it can find the DLLS that are stored in that directory.
However, attempting to run my simple foo.exe program results in the
following, which, although long and apparently detailed, gives me no
clue about what to do to fix the problem.
$ wine foo.exe
fixme:msvcrt:__lconv_init stub
wine: Call from 0x6fc49b69 to unimplemented function
msvcrt.dll.___lc_codepage_func, aborting
wine: Unimplemented function msvcrt.dll.___lc_codepage_func called at address
0x6fc49b69 (thread 0009), starting debugger...
Unhandled exception: unimplemented function msvcrt.dll.___lc_codepage_func
called in 32-bit code (0x7bc45c70).
Register dump:
CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
EIP:7bc45c70 ESP:0061facc EBP:0061fb30 EFLAGS:00000206( - 00 - -IP1)
EAX:6fd08880 EBX:7bc89444 ECX:00000000 EDX:6fcce440
ESI:0061fad8 EDI:6fcafba0
Stack dump:
0x0061facc: 7bc5db54 00110000 00000000 80000100
0x0061fadc: 00000001 00000000 6fc49b69 00000002
0x0061faec: 6fd08d6c 6fd08880 00000000 00000000
0x0061fafc: 7b876424 0061fc18 0061fbac 00000029
0x0061fb0c: 7bc5db54 00000000 7ffd8c00 7bc5101b
0x0061fb1c: 7b876424 00000000 7ffd006d 6fcce440
Backtrace:
=>1 0x7bc45c70 in ntdll (+0x35c70) (0x0061fb30)
2 0x6fc49b69 in libstdc++-6 (+0x9b69) (0x0061fb78)
3 0x6fcaf39a in libstdc++-6 (+0x6f39a) (0x0061fba8)
4 0x6fcaf4b2 in libstdc++-6 (+0x6f4b2) (0x0061fc08)
5 0x6fcb1d09 in libstdc++-6 (+0x71d09) (0x0061fc88)
6 0x6fcafbba in libstdc++-6 (+0x6fbba) (0x0061fca8)
7 0x6fc488d2 in libstdc++-6 (+0x88d2) (0x0061fcd8)
8 0x6fcafb83 in libstdc++-6 (+0x6fb83) (0x0061fcf8)
9 0x6fcb38f4 in libstdc++-6 (+0x738f4) (0x0061fd58)
10 0x6fcb4f54 in libstdc++-6 (+0x74f54) (0x0061fdc8)
11 0x0040180e in foo (+0x180e) (0x0061fde8)
12 0x00401836 in foo (+0x1836) (0x0061fe08)
13 0x00401ff8 in foo (+0x1ff8) (0x0061fe28)
14 0x004017ae in foo (+0x17ae) (0x0061fe48)
15 0x0040142b in foo (+0x142b) (0x0061ff08)
16 0x7b8783a8 in kernel32 (+0x583a8) (0x0061ffe8)
0x7bc45c70: subl $4,%esp
Modules:
Module Address Debug info Name (20 modules)
PE 400000- 41d000 Export foo
PE 6cec0000-6cf32000 Deferred libgcc_s_sjlj-1
PE 6fc40000-7014d000 Export libstdc++-6
ELF 7b800000-7b939000 Export kernel32<elf>
\-PE 7b820000-7b939000 \ kernel32
ELF 7bc00000-7bca5000 Export ntdll<elf>
\-PE 7bc10000-7bca5000 \ ntdll
ELF 7bf00000-7bf03000 Deferred <wine-loader>
ELF 7edbf000-7ee29000 Deferred msvcrt<elf>
\-PE 7edd0000-7ee29000 \ msvcrt
ELF 7ef9e000-7efaa000 Deferred libnss_files.so.2
ELF 7efaa000-7efc1000 Deferred libnsl.so.1
ELF 7efc1000-7efe7000 Deferred libm.so.6
ELF f7501000-f750b000 Deferred libnss_nis.so.2
ELF f750c000-f7510000 Deferred libdl.so.2
ELF f7510000-f7657000 Deferred libc.so.6
ELF f7658000-f7671000 Deferred libpthread.so.0
ELF f7671000-f77a7000 Deferred libwine.so.1
ELF f77a8000-f77b0000 Deferred libnss_compat.so.2
ELF f77c2000-f77e0000 Deferred ld-linux.so.2
Threads:
process tid prio (all id:s are in hex)
00000008 (D) Z:\export\home\jwe\mingw\src\foo.exe
00000009 0 <==
0000000c
00000014 0
00000013 0
00000012 0
0000000e 0
0000000d 0
0000000f
00000015 0
00000011 0
00000010 0
Backtrace:
=>1 0x7bc45c70 in ntdll (+0x35c70) (0x0061fb30)
2 0x6fc49b69 in libstdc++-6 (+0x9b69) (0x0061fb78)
3 0x6fcaf39a in libstdc++-6 (+0x6f39a) (0x0061fba8)
4 0x6fcaf4b2 in libstdc++-6 (+0x6f4b2) (0x0061fc08)
5 0x6fcb1d09 in libstdc++-6 (+0x71d09) (0x0061fc88)
6 0x6fcafbba in libstdc++-6 (+0x6fbba) (0x0061fca8)
7 0x6fc488d2 in libstdc++-6 (+0x88d2) (0x0061fcd8)
8 0x6fcafb83 in libstdc++-6 (+0x6fb83) (0x0061fcf8)
9 0x6fcb38f4 in libstdc++-6 (+0x738f4) (0x0061fd58)
10 0x6fcb4f54 in libstdc++-6 (+0x74f54) (0x0061fdc8)
11 0x0040180e in foo (+0x180e) (0x0061fde8)
12 0x00401836 in foo (+0x1836) (0x0061fe08)
13 0x00401ff8 in foo (+0x1ff8) (0x0061fe28)
14 0x004017ae in foo (+0x17ae) (0x0061fe48)
15 0x0040142b in foo (+0x142b) (0x0061ff08)
16 0x7b8783a8 in kernel32 (+0x583a8) (0x0061ffe8)
wine: Call from 0x6fc49b69 to unimplemented function
msvcrt.dll.___lc_codepage_func, aborting
Yeah, I should ask the mingw-64 community for help, but I thought I
would ask here firstto see if anyone has a clue about this. It would
also be interesting just to know whether anyone else here is using
mingw-64 to cross compile programs for Windows systems.
jwe
Re: who is building Octave on Windows systems?, Benjamin Lindner, 2011/01/25
- Re: who is building Octave on Windows systems?,
John W. Eaton <=