Mirek Choma

Mirek Choma Managing Director at
Cloudical Polska Sp
z o.o.

Temat: Kompilacja do systemów x64

Mam napisany program, chciałbym go skompilować do wersji na systemy 64 bitowe, czy ktoś wie jak to zrobić?
Tomasz Kaczanowski

Tomasz Kaczanowski Ot, programista

Temat: Kompilacja do systemów x64

Mirek Choma:
Mam napisany program, chciałbym go skompilować do wersji na systemy 64 bitowe, czy ktoś wie jak to zrobić?

Użyć odpowiedniego kompilatora?
Mirek Choma

Mirek Choma Managing Director at
Cloudical Polska Sp
z o.o.

Temat: Kompilacja do systemów x64

To nie wystarczy, bo nawet odpowiedni kompilator nie pomaga bo program nie działa. Czytałem ze potrzebuje dopisać do programu odpowiednie wywołanie x64 aby program zadziałał pod sytemem 64 bitowym.

Temat: Kompilacja do systemów x64

Po forum wnioskuję, iż program napisany jest w C, i jeżeli tak jest i program jest napisany prawidłowo, nie powinno być żadnych problemów z kompilacją pod 64 bitami :-P
Głównym problemem, który zapewne tutaj występuje (zgaduję), to założenie, że sizeof(int) == sizeof(int *) == 4, a tak w architekturze amd64 nie jest (sizeof(int) == 4, ale już sizeof(int *) = 8). No i należy pamiętać, iż program będzie współpracował poprawnie jedynie z bibliotekami 64-bitowymi.
Tomasz Kaczanowski

Tomasz Kaczanowski Ot, programista

Temat: Kompilacja do systemów x64

Paweł Smoliński:
Po forum wnioskuję, iż program napisany jest w C, i jeżeli tak jest i program jest napisany prawidłowo, nie powinno być żadnych problemów z kompilacją pod 64 bitami :-P
Głównym problemem, który zapewne tutaj występuje (zgaduję), to założenie, że sizeof(int) == sizeof(int *) == 4, a tak w architekturze amd64 nie jest (sizeof(int) == 4, ale już sizeof(int *) = 8). No i należy pamiętać, iż program będzie współpracował poprawnie jedynie z bibliotekami 64-bitowymi.

Cóż, jak się programuje to chyba warto wiedzieć, że w C/C++ wielkość niektórych zmiennych jest gwarantowana tylko tak, że:
sizeof(char)
Tomasz Kaczanowski

Tomasz Kaczanowski Ot, programista

Temat: Kompilacja do systemów x64

Mirek Choma:
To nie wystarczy, bo nawet odpowiedni kompilator nie pomaga bo program nie działa. Czytałem ze potrzebuje dopisać do programu odpowiednie wywołanie x64 aby program zadziałał pod sytemem 64 bitowym.


Jeżeli coś trzeba dopisać, to co najwyżej, któryś z kompilatorów może wymagać, ale to musisz przeczytać w dokumentacji do kompilatora, którego używasz.

konto usunięte

Temat: Kompilacja do systemów x64

A jaki to kompilator i z jakimi opcjami jest kod kompilowany dowiemy się?

konto usunięte

Temat: Kompilacja do systemów x64

Mirek Choma:
Mam napisany program, chciałbym go skompilować do wersji na systemy 64 bitowe, czy ktoś wie jak to zrobić?

(Zakładam, że masz jakiś błąd w trakcie wykonywania tej czynności)

Podstawowa zasada, jeśli chcesz uzyskać pomoc to opisanie dokładnie sytuacji, w tym:
- opis maszyny (AMD czy Intel, 64 bity czy 32, machina wirtualna czy nie, ilość RAM-u)
- środowisko w którym pracujesz (język programowania, kompilator, system operacyjny, biblioteki)
- KOMUNIKAT BŁĘDU
- czy sytuacja jest powtarzalnaPiotr Likus edytował(a) ten post dnia 22.03.09 o godzinie 12:19
Grzegorz Łyczba

Grzegorz Łyczba Programista UNIX,
DreamLab Onet.pl

Temat: Kompilacja do systemów x64

Hmm prosta odpowiedź - jeżeli to gcc to -m64...

-m32
-m64 Generate code for a 32-bit or 64-bit environment. The 32-bit environment sets
int, long and pointer to 32 bits and generates code that runs on any i386 system.
The 64-bit environment sets int to 32 bits and long and pointer to 64 bits and
generates code for AMD’s x86-64 architecture.

konto usunięte

Temat: Kompilacja do systemów x64

Trzeba pamiętać o tym, że aby skompilować system pod 64 bity, trzeba mieć też 64 bitowe biblioteki w systemie.



Wyślij zaproszenie do