|
Community Links |
Interessengemeinschaften |
Benutzerliste |
Foren durchsuchen |
Stichwortsuche |
Erweiterte Suche |
Uns unterstützen |
Shoppen bei Amazon |
Spende per Patreon |
Spende per PayPal |
Spende per Steady |
alle Möglichkeiten |
Gehe zu... |
![]() |
|
Themen-Optionen
![]() |
Ansicht
![]() |
![]() |
#1 (im Thread / einzeln) |
Admiral Member
Registriert: 2002-05-28
Ort: bei Darmstadt
Beiträge: 3.593
|
Softwareentwicklung unter Linux
Hallo,
ich plane ein C++ Projekt, das ich z.Z unter Windows entwickele, auf Linux (Ubuntu LTS) zu portieren. Das Projekt besteht z.Z. aus einer statisch Lib, einer Dll und eines Programmes zum Testen der Dll-Funktionen. Entwickelt wird unter Windows mit Visual Studio und Einsatz diverser Libs (Boost, RealSense SDK, OpenCV und PCL). Primär geht es mir erst mal um die z.Z bevorzugte Vorgehensweise bei der Entwicklung unter Linux, kann mir jemand ein gutes Buch/ Online Tutorial empfehlen? Welche Tools sind z.Z am besten für die C++ Entwicklung unter Linux geeignet? Unter Windows habe ich die Libs wie z.B PCL oder OpenCV aus Sourcen kompiliert und dort wurde CMake eingesetzt. Ist das der bevorzugter Weg unter Linux z.Z? Oder doch eher eine Entwicklungsumgebung wie z.B QT Creator oder KDevelop? GUI ist erstmal nicht so wichtig, gesteuert wird das Programm aus der Konsole, später soll das Programm dann eventuell auf einen externen Rechner laufen und über Sockets gesteuert werden.
don't worry be happy ...
Mein Rechenknecht Ant (Ryzen 7 5800X3D • GIGABYTE B550 AORUS Elite V2 • Noctua NH-U12S SE-AM4 • Corsair Vengeance LPX schwarz 32GB (2x16GB), DDR4-3600 CL16 • ASRock Radeon RX 7900 GRE Steel Legend 16GB OC • Acer XF270HUA + ASUS TUF Gaming VG259Q) mit Nobara Linux 40 - Mein Schleppi nBee - Mein Linux DeskMini |
![]() ![]() |
![]() ![]() |
![]() |
#2 (im Thread / einzeln) |
Admiral Member
Registriert: 2019-09-28
Beiträge: 2.029
|
Re: Softwareentwicklung unter Linux
![]() Unter Windows habe ich die Libs wie z.B PCL oder OpenCV aus Sourcen kompiliert und dort wurde CMake eingesetzt. Ist das der bevorzugter Weg unter Linux z.Z? Nur nicht vergessen die -dev Pakete (enthalten die Header) zu installieren. Oder doch eher eine Entwicklungsumgebung wie z.B QT Creator oder KDevelop? (ok, einfach und die beiden Editoren in einem Satz ist wieder eine ganz eigene Geschichte.) Von den Entwicklungsumgebungen ist Eclipse glaube ich die populärste, aber am Ende hat da eben jeder seine eigenen Vorlieben. Ist vermutlich am sinnvollsten selbst die entsprechenden Tools mal zu installieren und zu begutachten. Sind ja zum Glück alle kostenlos und schnell über den Paketmanager installiert/deinstalliert. |
![]() |
![]() ![]() |
![]() |
#3 (im Thread / einzeln) |
Platinum Member
Registriert: 2004-05-06
Beiträge: 1.445
|
Re: Softwareentwicklung unter Linux
![]() Welche Tools sind z.Z am besten für die C++ Entwicklung unter Linux geeignet? ![]() Bietet aber halt den Komfort und die Zuverlässigkeit, den man von einer IDE von Jetbrains so gewohnt ist. just my 2 cent
bortaS bIr jablu' DI' reH QaQqu' nay' (altes Klingonisches Sprichwort)
|
![]() |
![]() ![]() |
![]() |
#4 (im Thread / einzeln) |
Gast
Gast
Beiträge: n/a
|
Re: Softwareentwicklung unter Linux
Grundsätzlich würde ich hier Build Systems und IDEs trennen. Welche IDE du verwendest ist nebensächlich. Da du nun Windows und Linux nutzt, würde ich ein Build System nehmen, welches für cross-platform compilation gut geeignet ist und dann kannst du deinen Workflow gleich unter Windows (und zukünftige Projekte) wiederverwenden.
CMake wäre hierfür ein Ansatz (es gibt aber natürlich jede Menge Alternativen zu CMake). Damit kannst du relativ leicht dein Linux Projekt auch für Visual Studio unter Windows zum laufen bringen. Das größte Problem wird sein, die Dependencies und Libraries auch für beide Platformen automatisch aufzusetzen. Wir haben unseren CMake-Workflow so optimiert, dass der Source Code der Dependencies automatisch runtergeladen und für die jeweilige Platform kompiliert wird. Dauert zwar eine Zeit das mit CMake richtig aufzusetzen, aber dafür kannst du dann auf jeder Platform einfach über ein einziges CMake Command alles kompilieren und für deine jeweilige IDE konfigurieren. Als konstenlose IDE auf jeder Platform würde sich Visual Studio Code anbieten. Persönlich verwende ich auch CLion sehr gerne, da es auch auf den CMake-Workflow ausgerichtet ist, aber wie bereits erwähnt kostet das Ding doch einiges. |
![]() ![]() |
![]() |
#5 (im Thread / einzeln) |
Gast
Gast
Beiträge: n/a
|
Re: Softwareentwicklung unter Linux
Als Lösung für dein Dependency/Library Problem könntest du dir auch den Conan package manager ansehen:
https://conan.io/ |
![]() ![]() |
![]() |
#6 (im Thread / einzeln) |
Avantgarde Member
Registriert: 2015-01-19
Beiträge: 6.424
|
Re: Softwareentwicklung unter Linux
CMake ist ein vorgelagertes build system, das hat ja mit der IDE erstmal nichts zu tun. Du kannst dir damit halt fuer unterschiedliche Build-Systeme die weiteren Projektdateien/Skripte raus lassen. Also pflegst du z.B. fuer dein Projekt CMake und kannst dann damit im Build Prozess auf Windows vsbuild Kram und fuer Linux Makefiles raus lassen. Grundsaetzlich ist sowas fuer cross-plattform Entwicklung schon sinnvoll. Eine IDE wie QtCreator unterstuetzt neben CMake auch andere, ob und welche IDE man benutzt ist letztlich eine Geschmacksfrage.
Ich selbst mag CMake nicht, finde es uebermaessig kompliziert und benutze fuer neue Projekte lieber Meson mit Ninja. Da brauche ich mich aber auch nicht um Windows builds zu kuemmern. |
![]() |
![]() ![]() |
![]() |
Lesezeichen |
Ansicht |
![]() |
![]() |
![]() |
|
|