xrist0f0r0s Δημοσ. 3 Ιουλίου 2010 Μέλος Δημοσ. 3 Ιουλίου 2010 εκτος του αρχικου θεματος μας ποια ειναι η διαφορα οταν γραφεις σε καποια γλωσσα και το project απεφθηνεται σε χρηστες των win,linux,mac τα win χρησιμοποιουν .exe, .msi τα linux .deb.rpm.tar.gz (ειναι συμπιεσμενο) ποια οι διαφορες τους ως προς να γραψεις των ειδιο κωδικα στα διαφορα λειτουργικα και πως να το κανεις compile να το κανεις τρεχουμενο .deb .exe ....
m1cRo Δημοσ. 4 Ιουλίου 2010 Δημοσ. 4 Ιουλίου 2010 φίλε μου το gedit είναι σε Linux!!! ενώ το Notepad++ που ανέφερες υποψιάζομαι πως είναι για windows αν δεν κάνω λαθος..μάλλον μπρέρδεψες κατι...και segmentation fault απο την στιγμή που βγάζει ανέβασε σε παρακαλώ μια εικόνα να δώ τι ακριβώς εννοείς...δεν νομίζω να έχω μυωπία!!! Α, και μην μπερδέυεις τα IDE etc...στο gedit υπάρχουν αυτόματα... επίσης όταν λέω στοίχηση NewProject εννοώ οτι γράφεις μια γραμμή>enter>tab etc αλλα η στοίχηση δεν γίνεται ομοιόμορφα...ακόμη με τα space γίνεται ένα μπέρδεμα καα την άποψή μου...δεν ξέρω αν κατάλαβες τι λέω αλλα για μένα τουλάχιστον δεν είναι καθόλου βολικό... Ρε παιδιά, εντελώς φιλικά, πως μπορούν τα windows με κάποιο πρόγραμμα να συγκριθούν στο θέμα προγραμματισμού με τα προγράμματα στο Linux(κατα ένα μέρος γι αυτό είναι φτιαγμένα)? Δεν ξέρω μάλλον τελικά έχεις μυωπία. Πάρε ένα IDE VS express ασπουμε. Κανε ένα παράδειγμα με seg fault, και τρέξτο. Όχι απλά θα σου βγάλει ότι έγινε αυτό το λάθος αλλα θα σε πάει και στην γραμμή που έγινε για να το δεις. Βεβαια εξαρτάται από το λάθος αυτό το πράγμα. Νομίζω ότι είναι πιο καλο από ένα segmentation fault μήνυμα. Και μην προτείνεται την dev-c++. Αν θες κάτι για windows το καλύτερο compiler για windows φτιάχνει η εταιρία που φτιάχνει το windows απλά. ---------- Προσθήκη στις 01:16 ---------- Προηγούμενο μήνυμα στις 01:12 ---------- εκτος του αρχικου θεματος μας ποια ειναι η διαφορα οταν γραφεις σε καποια γλωσσα και το project απεφθηνεται σε χρηστες των win,linux,mac τα win χρησιμοποιουν .exe, .msi τα linux .deb.rpm.tar.gz (ειναι συμπιεσμενο) ποια οι διαφορες τους ως προς να γραψεις των ειδιο κωδικα στα διαφορα λειτουργικα και πως να το κανεις compile να το κανεις τρεχουμενο .deb .exe .... Το windows έχει PE φιλε format για τα εκτελέσιμα του, σε αντίθεση με linux που έχει το ELF. Η διαφορα όμως δεν βρίσκετε μονο στο format του φιλε. Το λειτουργικό παρέχει και κάποια API που είναι χαρακτηριστικά του συγκεκριμένου λειτουργικού συστήματος. Έτσι τα API στο linux είναι διαφορετικά από αυτά στο windows. Πρακτικά μπορείς να γραφεις crossplatform κώδικα αλλα πρέπει να χρησιμοποιείς τα macros η κάποιο framework που να σου παρέχει αυτήν την δυνατότητα - δες QT.
MitsakosGR Δημοσ. 4 Ιουλίου 2010 Δημοσ. 4 Ιουλίου 2010 εκτος του αρχικου θεματος μας ποια ειναι η διαφορα οταν γραφεις σε καποια γλωσσα και το project απεφθηνεται σε χρηστες των win,linux,mac τα win χρησιμοποιουν .exe, .msi τα linux .deb.rpm.tar.gz (ειναι συμπιεσμενο) ποια οι διαφορες τους ως προς να γραψεις των ειδιο κωδικα στα διαφορα λειτουργικα και πως να το κανεις compile να το κανεις τρεχουμενο .deb .exe .... Αν γράφεις προγράμματα για να τρέχουν στην κονσόλα συνήθως δεν υπάρχει καμία διαφορά. Οι διαφορές εκεί είναι πολύ μικρές και ειδικά για αρχάριους προγραμματιστές δεν υπάρχει καμία διαφορά. Η διαφορά έρχεται σε GUI, system I/O (χρήση συσκευών συστήματος) και γενικότερα σε εντολές που "μιλάνε" στο λειτουργικό σύστημα και όχι σε στάνταρ βιβλιοθήκες. Αλλά και πάλι χρησιμοποιώντας βιβλιοθήκες που υποστηρίζονται σε διάφορα λειτουργικά συστήματα (πχ QT, wxWidget για GUI) ο κώδικας που γράφεις είναι ο ίδιος και η βιβλιοθήκες αναλαμβάνουν τα υπόλοιπα. Όσον αφορά το πώς παράγονται τα εκτελέσιμα αρχεία τότε ανάλογα που το κάνεις build βγαίνει και το αντίστοιχο αρχείο. Δηλαδή αν τον ίδιο κώδικα τον κάνεις build σε g++ σε εκδόσεις για Linux και Win τότε στα Win θα παραχθεί αρχείο .exe ενώ στο Linux εκτελέσιμο του Linux (δεν γνωρίζω την κατάληξή του). επίσης όταν λέω στοίχηση NewProject εννοώ οτι γράφεις μια γραμμή>enter>tab etc αλλα η στοίχηση δεν γίνεται ομοιόμορφα...ακόμη με τα space γίνεται ένα μπέρδεμα καα την άποψή μου...δεν ξέρω αν κατάλαβες τι λέω αλλα για μένα τουλάχιστον δεν είναι καθόλου βολικό... Ρε παιδιά, εντελώς φιλικά, πως μπορούν τα windows με κάποιο πρόγραμμα να συγκριθούν στο θέμα προγραμματισμού με τα προγράμματα στο Linux(κατα ένα μέρος γι αυτό είναι φτιαγμένα)? Δεν γνωρίζω από πότε έχεις να χρησιμοποιήσεις IDE σε windows αλλά από αυτά που λες υποθέτω πάρα πολύ. Τα IDE που υπάρχουν παρέχουν απίστευτες δυνατότητες και τεράστια ευκολία στον προγραμματισμό. Αυτό που λες για λάθος στοίχιση, λάθη με τα κενά κτλ δεν το έχω συναντήσει ποτέ μου. Γενικότερα όμως προγραμματίζεις στην πλατφόρμα στην οποία απαιτεί η δουλειά σου. Αν σε βάλουν να κάνεις πρόγραμμα αποκλειστικά για Windows, προσωπικά τουλάχιστον, το θεωρώ χαζό να πας σε Cross Platform επιλογές αντί του να χρησιμοποιήσεις το .NET το οποίο λειτουργεί πολύ πιο γρήγορα και είναι σίγουρα συμβατό στα Windows. Αντίστοιχα και με το Linux. Αν θέλεις να γράψεις κώδικα για το Linux δεν θα το κάνεις με εντολές .NET και να πάρεις βιβλιοθήκες για αυτό. Θα το κάνεις σε βιβλιοθήκες του Linux. Αν θες κάτι για windows το καλύτερο compiler για windows φτιάχνει η εταιρία που φτιάχνει το windows απλά. Το καλύτερο και πιο γρήγορο compiler για όλες τις χρήσεις το φτιάχνει η Intel (έτσι φαίνεται από μετρήσεις τουλάχιστον). H Microsoft πλέον δεν βγάζει καθαρούς compiler που να μετατρέπει κώδικα σε γλώσσα μηχανής. Βγάζει κάτι ενδιάμεσο που μετατρέπει τον κώδικα σε εντολές .NET και μετά το λειτουργικό και η .NET μηχανή αναλαμβάνουν την παραγωγή εκτελέσιμου αρχείου και την εκτέλεσή του. Είναι κάπως σαν την Java δηλαδή (απλά πολύ πιο γρήγορα ) και αυτό γιατί όπως δείχνει θέλουν να κάνουν το .NET cross-platform. Έτσι λειτουργεί το .NET
Evgenios1 Δημοσ. 4 Ιουλίου 2010 Δημοσ. 4 Ιουλίου 2010 @linuxs Ρε παιδιά, εντελώς φιλικά, πως μπορούν τα windows με κάποιο πρόγραμμα να συγκριθούν στο θέμα προγραμματισμού με τα προγράμματα στο Linux(κατα ένα μέρος γι αυτό είναι φτιαγμένα)? Τι θες να πεις; Το καλύτερο και πιο γρήγορο compiler για όλες τις χρήσεις το φτιάχνει η Intel (έτσι φαίνεται από μετρήσεις τουλάχιστον). H Microsoft πλέον δεν βγάζει καθαρούς compiler που να μετατρέπει κώδικα σε γλώσσα μηχανής. Βγάζει κάτι ενδιάμεσο που μετατρέπει τον κώδικα σε εντολές .NET και μετά το λειτουργικό και η .NET μηχανή αναλαμβάνουν την παραγωγή εκτελέσιμου αρχείου και την εκτέλεσή του. Είναι κάπως σαν την Java δηλαδή (απλά πολύ πιο γρήγορα ) και αυτό γιατί όπως δείχνει θέλουν να κάνουν το .NET cross-platform. Δεν βλεπω πουθενα σημαδια απο CIL >; Listing generated by Microsoft (R) Optimizing Compiler Version 16.00.30319.01 TITLE e:\Users\papi\documents\visual studio 2010\Projects\te\te\te.cpp .686P .XMM include listing.inc .model flat INCLUDELIB MSVCRTD INCLUDELIB OLDNAMES PUBLIC ??_C@_05CJBACGMB@hello?$AA@ ; `string' PUBLIC _wmain EXTRN __imp__printf:PROC EXTRN __RTC_CheckEsp:PROC EXTRN __RTC_Shutdown:PROC EXTRN __RTC_InitBase:PROC ; COMDAT ??_C@_05CJBACGMB@hello?$AA@ ; File e:\users\papi\documents\visual studio 2010\projects\te\te\te.cpp CONST SEGMENT ??_C@_05CJBACGMB@hello?$AA@ DB 'hello', 00H ; `string' CONST ENDS ; COMDAT rtc$TMZ rtc$TMZ SEGMENT __RTC_Shutdown.rtc$TMZ DD FLAT:__RTC_Shutdown rtc$TMZ ENDS ; COMDAT rtc$IMZ rtc$IMZ SEGMENT __RTC_InitBase.rtc$IMZ DD FLAT:__RTC_InitBase ; Function compile flags: /Odtp /RTCsu /ZI rtc$IMZ ENDS ; COMDAT _wmain _TEXT SEGMENT _argc$ = 8 ; size = 4 _argv$ = 12 ; size = 4 _wmain PROC ; COMDAT ; 8 : { push ebp mov ebp, esp sub esp, 192 ; 000000c0H push ebx push esi push edi lea edi, DWORD PTR [ebp-192] mov ecx, 48 ; 00000030H mov eax, -858993460 ; ccccccccH rep stosd ; 9 : printf("hello"); mov esi, esp push OFFSET ??_C@_05CJBACGMB@hello?$AA@ call DWORD PTR __imp__printf add esp, 4 cmp esi, esp call __RTC_CheckEsp ; 10 : return 0; xor eax, eax ; 11 : } pop edi pop esi pop ebx add esp, 192 ; 000000c0H cmp ebp, esp call __RTC_CheckEsp mov esp, ebp pop ebp ret 0 _wmain ENDP _TEXT ENDS END
thanos713 Δημοσ. 4 Ιουλίου 2010 Δημοσ. 4 Ιουλίου 2010 Τι έγινε ρε? Γίναμε όλοι linux-αδες και λέμε ότι μας κατέβει? Το VS 2010 το έχεις δει καθόλου? Άμα το δεις έλα μετά να ξανακάνουμε την συζήτηση...
kagelos Δημοσ. 4 Ιουλίου 2010 Δημοσ. 4 Ιουλίου 2010 Το καλύτερο και πιο γρήγορο compiler για όλες τις χρήσεις το φτιάχνει η Intel (έτσι φαίνεται από μετρήσεις τουλάχιστον). H Microsoft πλέον δεν βγάζει καθαρούς compiler που να μετατρέπει κώδικα σε γλώσσα μηχανής. Βγάζει κάτι ενδιάμεσο που μετατρέπει τον κώδικα σε εντολές .NET και μετά το λειτουργικό και η .NET μηχανή αναλαμβάνουν την παραγωγή εκτελέσιμου αρχείου και την εκτέλεσή του. Είναι κάπως σαν την Java δηλαδή (απλά πολύ πιο γρήγορα ) και αυτό γιατί όπως δείχνει θέλουν να κάνουν το .NET cross-platform. Καλά τι λες;;; Η Visual C++ της Microsoft φυσικά και βγάζει γλώσσα μηχανής και όχι CIL! Απλά παράλληλα η MS βγάζει και τον compiler για τις .Net γλώσσες, όπου μεταξύ άλλων, υπάρχει και C++.Net (και βγάζει CIL). Επίσης ποιος λέει ότι οι compilers της Intel είναι οι πιο γρήγοροι και καλύτεροι;;; Γράψε ένα πρόγραμμα με Intel compiler, τρέξε benchmark σε AMD CPU και μετά δοκίμασε το ίδιο πρόγραμμα σε κάποιον άλλο compiler και πάλι σε AMD CPU και τα λέμε.
thanos713 Δημοσ. 4 Ιουλίου 2010 Δημοσ. 4 Ιουλίου 2010 Bloodshed Dev-C++ is a full-featured Integrated Development Environment (IDE) for the C and C++ programming languages. It uses the MinGW port of the GCC (GNU Compiler Collection) as its compiler. Ο MinGW είναι compiler, το Dev-C++ είναι IDE...
thanos713 Δημοσ. 4 Ιουλίου 2010 Δημοσ. 4 Ιουλίου 2010 Bloodshed Dev-C++ is a full-featured Integrated Development Environment (IDE) for the C and C++ programming languages. It uses the MinGW port of the GCC (GNU Compiler Collection) as its compiler. Ο MinGW είναι compiler, το Dev-C++ είναι IDE...
PCharon Δημοσ. 4 Ιουλίου 2010 Δημοσ. 4 Ιουλίου 2010 Δεν γνωρίζω το επίπεδό σου απο θέμα προγραμματισμού... Πρώτον και κυριότερον τα "Segmentation fault" εαν τα γνωρίζεις δεν τα βγάζει με μήνυμα!! Κολάει το pc... Δεύτερον έχει ένα θέμα με την στοίχηση κτλ φίλε μου το gedit είναι σε Linux!!! ενώ το Notepad++ που ανέφερες υποψιάζομαι πως είναι για windows αν δεν κάνω λαθος..μάλλον μπρέρδεψες κατι...και segmentation fault απο την στιγμή που βγάζει ανέβασε σε παρακαλώ μια εικόνα να δώ τι ακριβώς εννοείς...δεν νομίζω να έχω μυωπία!!! Α, και μην μπερδέυεις τα IDE etc...στο gedit υπάρχουν αυτόματα... επίσης όταν λέω στοίχηση NewProject εννοώ οτι γράφεις μια γραμμή>enter>tab etc αλλα η στοίχηση δεν γίνεται ομοιόμορφα...ακόμη με τα space γίνεται ένα μπέρδεμα καα την άποψή μου...δεν ξέρω αν κατάλαβες τι λέω αλλα για μένα τουλάχιστον δεν είναι καθόλου βολικό... Ρε παιδιά, εντελώς φιλικά, πως μπορούν τα windows με κάποιο πρόγραμμα να συγκριθούν στο θέμα προγραμματισμού με τα προγράμματα στο Linux(κατα ένα μέρος γι αυτό είναι φτιαγμένα)? Βρε αστέρι μου, θα μας κουζουλάνεις τελείως; Υπάρχουν μπόλικοι και άριστοι source code editors για τα Windows, όπως UltraEdit/Notepad++/EmEditor που σου πετάνε τα μάτια έξω εν σχέση με αυτό που λες, 100 φορές πλουσιότεροι σε features. Εμπορικά μεν προγράμματα, αλλά χαμηλού κόστους και αξίζουν τον κόπο γι αυτά που προσφέρουν. Σχετικά με το "στοίχιση" μάλλον είναι ώρα να μάθεις τί είναι τα monospaced fonts. Σχετικά με τα σφάλματα, μια χαρά τα βλέπεις και στα Windows ανάλογα τί εργαλεία χρησιμοποιείς κι εξάλλου υπάρχει και το "exception handling" αν το έχεις ακουστά κι αυτό. Μη μας αυτώνεις τώρα, μια χαρά είναι και τα Windows και το Linux και όλα, παντού κάνεις τη δουλειά σου και τίποτα δεν είναι "φτιαγμένο για προγραμματισμό", κάθε κατεργάρης στον πάγκο του είναι.
PCharon Δημοσ. 4 Ιουλίου 2010 Δημοσ. 4 Ιουλίου 2010 Δεν γνωρίζω το επίπεδό σου απο θέμα προγραμματισμού... Πρώτον και κυριότερον τα "Segmentation fault" εαν τα γνωρίζεις δεν τα βγάζει με μήνυμα!! Κολάει το pc... Δεύτερον έχει ένα θέμα με την στοίχηση κτλ φίλε μου το gedit είναι σε Linux!!! ενώ το Notepad++ που ανέφερες υποψιάζομαι πως είναι για windows αν δεν κάνω λαθος..μάλλον μπρέρδεψες κατι...και segmentation fault απο την στιγμή που βγάζει ανέβασε σε παρακαλώ μια εικόνα να δώ τι ακριβώς εννοείς...δεν νομίζω να έχω μυωπία!!! Α, και μην μπερδέυεις τα IDE etc...στο gedit υπάρχουν αυτόματα... επίσης όταν λέω στοίχηση NewProject εννοώ οτι γράφεις μια γραμμή>enter>tab etc αλλα η στοίχηση δεν γίνεται ομοιόμορφα...ακόμη με τα space γίνεται ένα μπέρδεμα καα την άποψή μου...δεν ξέρω αν κατάλαβες τι λέω αλλα για μένα τουλάχιστον δεν είναι καθόλου βολικό... Ρε παιδιά, εντελώς φιλικά, πως μπορούν τα windows με κάποιο πρόγραμμα να συγκριθούν στο θέμα προγραμματισμού με τα προγράμματα στο Linux(κατα ένα μέρος γι αυτό είναι φτιαγμένα)? Βρε αστέρι μου, θα μας κουζουλάνεις τελείως; Υπάρχουν μπόλικοι και άριστοι source code editors για τα Windows, όπως UltraEdit/Notepad++/EmEditor που σου πετάνε τα μάτια έξω εν σχέση με αυτό που λες, 100 φορές πλουσιότεροι σε features. Εμπορικά μεν προγράμματα, αλλά χαμηλού κόστους και αξίζουν τον κόπο γι αυτά που προσφέρουν. Σχετικά με το "στοίχιση" μάλλον είναι ώρα να μάθεις τί είναι τα monospaced fonts. Σχετικά με τα σφάλματα, μια χαρά τα βλέπεις και στα Windows ανάλογα τί εργαλεία χρησιμοποιείς κι εξάλλου υπάρχει και το "exception handling" αν το έχεις ακουστά κι αυτό. Μη μας αυτώνεις τώρα, μια χαρά είναι και τα Windows και το Linux και όλα, παντού κάνεις τη δουλειά σου και τίποτα δεν είναι "φτιαγμένο για προγραμματισμό", κάθε κατεργάρης στον πάγκο του είναι.
NewProject Δημοσ. 4 Ιουλίου 2010 Δημοσ. 4 Ιουλίου 2010 Bloodshed Dev-C++ is a full-featured Integrated Development Environment (IDE) for the C and C++ programming languages. It uses the MinGW port of the GCC (GNU Compiler Collection) as its compiler. Ο MinGW είναι compiler, το Dev-C++ είναι IDE... αυτο λεω και εγω ... αλλο IDE και αλλο compiler ... μπορεις να εχεις το Dev και να χρησιμοποιεις για παραδειγμα ms c compiler αλλα μπορεις και στο visual studio να βαλεις mignw , intel η οτι αλλο γουσταρεις ........ φιλικα και απο μενα linuxus μιας και ανταλλαζουμε αποψεις και γνωσεις
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.