Permalänk
Medlem

ubuntu c++ compiller

Hej,

jag tänkte fråga om de är någon som har tips lätt hanterad compiler till ubuntu som även ska gå att compila till .exe filer i?

Visa signatur

Смерть -это решение всех проблем. Нет человека - нет проблемы
Comp1: Ubuntu 16.04 Comp2: Arch Linux
Comp3: Ubuntu Server 16.04 Comp4: Centos 6.5
Comp5: Linux mint 16 Comp6: Raspberry pi (olika OS hela tiden)
Phone: Motorola Google Nexus 6

Permalänk
Medlem

Med .exe-filer, syftar du på att det ska gå att köra på Windows? Annars är det körbara filer (utan ändelse) som gäller, alltså om du vill köra dem på Ubuntu.

Om du ska kompilera till Ubuntu skulle jag rekommendera G++.

Har för mig att det ska gå att kompilera Windows-program med den med.

Permalänk
Medlem

"apt-get install build-essential" ger dig det som behövs för att kompilera via GCC.

Permalänk
Medlem

Finns inte codeblocks till linux?

Permalänk
Medlem
Skrivet av scared:

Finns inte codeblocks till linux?

Visst finns Code::Blocks till Linux, men det är ingen kompilator utan en IDE. Så ditt inlägg var ganska meningslöst.

Linux använder inte .exe som filändelse, det är dock fortfarande exekverbara (binära) filer som används. För att kompilera ett C++-program så får du använda g++.

Visa signatur

Osocial, instängd och förbannad.

Permalänk
Medlem

alså jag har code blocks just nu... men jag vill ha en compiler som kan både göra filer utan ändelser och .exe berode på vad jag programerar programet till för OS... just nu skulle jag håller jag på med ett program som ska användas på en windows burk... där .exe...

detta kanske finns i code blocks men ganska ny i programet så jag vet inte riktigt hur de fungerar håller på att lära mig...

och om de finns till code blocks får ni gärn gör en kortfattad förklaring om hur jag ska ta mig till...

sedan så kör jag orginal inställningar så den ska ha outpot i /bin/debug eller i /bin/release men när jag går in i /bin på disken hittar den inget av dom... och då funderar jag på om de är någon undermapp till något annat och fundera mest på vart den skulle lägga sig då?

Visa signatur

Смерть -это решение всех проблем. Нет человека - нет проблемы
Comp1: Ubuntu 16.04 Comp2: Arch Linux
Comp3: Ubuntu Server 16.04 Comp4: Centos 6.5
Comp5: Linux mint 16 Comp6: Raspberry pi (olika OS hela tiden)
Phone: Motorola Google Nexus 6

Permalänk
Medlem
Skrivet av Mejan:

alså jag har code blocks just nu... men jag vill ha en compiler som kan både göra filer utan ändelser och .exe berode på vad jag programerar programet till för OS... just nu skulle jag håller jag på med ett program som ska användas på en windows burk... där .exe...

detta kanske finns i code blocks men ganska ny i programet så jag vet inte riktigt hur de fungerar håller på att lära mig...

och om de finns till code blocks får ni gärn gör en kortfattad förklaring om hur jag ska ta mig till...

Du har tre alternativ.

  1. Kompilera programmet på en burk med Windows.

  2. Använd en virtuell maskin med Windows på.

  3. Använd WINE (inte säker på att detta funkar).

Visa signatur

Osocial, instängd och förbannad.

Permalänk
Medlem

ok, vart lite besviken där faktist att de inte finns en annan lösning... men tack..

Visa signatur

Смерть -это решение всех проблем. Нет человека - нет проблемы
Comp1: Ubuntu 16.04 Comp2: Arch Linux
Comp3: Ubuntu Server 16.04 Comp4: Centos 6.5
Comp5: Linux mint 16 Comp6: Raspberry pi (olika OS hela tiden)
Phone: Motorola Google Nexus 6

Permalänk
Medlem
Skrivet av Debug:

Du har tre alternativ.

  1. Kompilera programmet på en burk med Windows.

  2. Använd en virtuell maskin med Windows på.

  3. Använd WINE (inte säker på att detta funkar).

Fast riktigt så tråkigt verkar det inte vara. Man kan ju till exempel använda Mingw32.

Permalänk
Medlem

Det du vill göra kallas cross-compilation.

MinGW är vad du behöver, kan kompilera för både 32- och 64-bitars Windows. Använder det själv ganska ofta då jag anser att Linux är ett överlägset OS för systemutveckling jämfört med Windows.

Visa signatur

Assembly är ett högnivåspråk.

Permalänk

g++ för att kompilera till Linux.
i686-w64-mingw32-g++ för att kompilera till Windows.

Permalänk

main.cpp

// c++ code. #include <iostream> int main() { std::cout<<"Hello"<<std::endl; }

Kompilera till Linux

g++ main.cpp -o test Kompilera ./test Exekvera Hello Utskrift från programmet

Kompilera till Windows

i686-w64-mingw32-g++ main.cpp -o test.exe Kompilera wine test.exe Exekvera filen genom Wine (wine behövs för att köra windowsprogram under Linux). Hello Utskrift från programmet

Om man vill slippa att det öppnas ett kommandofönster i Windows så kan man lägga till följande parameter till kompileringsraden:

i686-w64-mingw32-g++ -Wl,-subsystem,windows main.cpp -o test.exe

Permalänk
Medlem
Skrivet av Korkskruv:

main.cpp

// c++ code. #include <iostream> int main() { std::cout<<"Hello"<<std::endl; }

Kompilera till Linux

g++ main.cpp -o test Kompilera ./test Exekvera Hello Utskrift från programmet

Kompilera till Windows

i686-w64-mingw32-g++ main.cpp -o test.exe Kompilera wine test.exe Exekvera filen genom Wine (wine behövs för att köra windowsprogram under Linux). Hello Utskrift från programmet

Om man vill slippa att det öppnas ett kommandofönster i Windows så kan man lägga till följande parameter till kompileringsraden:

i686-w64-mingw32-g++ -Wl,-subsystem,windows main.cpp -o test.exe

jag vet att men köra windows program med wine i linux... men jag hänger inte riktigt med på hur du menar jag ska göra för att kompilera .cpp till .exe med hjälp av wine?

Visa signatur

Смерть -это решение всех проблем. Нет человека - нет проблемы
Comp1: Ubuntu 16.04 Comp2: Arch Linux
Comp3: Ubuntu Server 16.04 Comp4: Centos 6.5
Comp5: Linux mint 16 Comp6: Raspberry pi (olika OS hela tiden)
Phone: Motorola Google Nexus 6

Permalänk
Skrivet av Mejan:

jag vet att men köra windows program med wine i linux... men jag hänger inte riktigt med på hur du menar jag ska göra för att kompilera .cpp till .exe med hjälp av wine?

Wine har inte mycket med saken att göra. Enda är att det behövs för att testköra .exe filen om man sitter på Linux. Kompilatorn kör i första raden och är det enda som krävs för att en körbar fil ska skapas från koden. De andra två raderna är bara för att köra och visa resultatet.

Steg för steg...

  1. Kopiera koden från exemplet till en texteditor och spara till filen main.cpp på ett lämpligt ställe där du hittar den.

  2. Starta ett terminalfönster.

  3. Se till så att terminalfönstret står i samma mapp som cpp-filen.

  4. Kör raden "i686-w64-mingw32-g++ main.cpp -o test.exe" och en windows-exe-fil kommer att skapas, döpt till test.exe.