AMIOX? Δημοσ. 17 Οκτωβρίου 2012 Δημοσ. 17 Οκτωβρίου 2012 Γεια σας Θέλω να χρησιμοποιησω την NCurses σε προγράμματα C++ στα windows.π.χ. να εκτελέσω το παρακάτω απο το Code blocks ή κατευθείαν στο cmd. > #include <ncurses.h> int main(int argc, char **argv) { int X = 10; int Y = 10; int ch; initscr(); noecho(); keypad(stdscr,TRUE); move(Y, X); printw("M"); refresh(); do { ch = getch(); move(Y, X); printw(" "); switch(ch) { case KEY_UP: Y--; break; case KEY_DOWN: Y++; break; case KEY_LEFT: X--; break; case KEY_RIGHT: X++; break; } move(Y, X); printw("M"); refresh(); } while (ch!=27); endwin(); return 0; } Τα error είναι: .cpp|1|error: ncurses.h: No such file or directory| .cpp||In function 'int main(int, char**)':| .cpp|8|error: 'initscr' was not declared in this scope| .cpp|9|error: 'noecho' was not declared in this scope| .cpp|10|error: 'stdscr' was not declared in this scope| .cpp|10|error: 'TRUE' was not declared in this scope| .cpp|10|error: 'keypad' was not declared in this scope| .cpp|11|error: 'move' was not declared in this scope| .cpp|12|error: 'printw' was not declared in this scope| .cpp|13|error: 'refresh' was not declared in this scope| .cpp|16|error: 'getch' was not declared in this scope| .cpp|21|error: 'KEY_UP' was not declared in this scope| .cpp|22|error: 'KEY_DOWN' was not declared in this scope| .cpp|23|error: 'KEY_LEFT' was not declared in this scope| .cpp|24|error: 'KEY_RIGHT' was not declared in this scope| .cpp|31|error: 'endwin' was not declared in this scope| ||=== Build finished: 15 errors, 0 warnings ===| δεν βρίσκει την NCurses δηλαδή. Παρακαλω οτι ξέρετε για αυτην την βιβλιοθηκη θα βοηθήσει.
migf1 Δημοσ. 17 Οκτωβρίου 2012 Δημοσ. 17 Οκτωβρίου 2012 Κατέβασε την PDCurses: http://pdcurses.sourceforge.net/ που είναι συμβατή σε πολύ μεγάλο ποσοστό με την ncurses (και την curses). Κατόπιν άλλαξε τα pre-processor directives σου, σε... > #include <curses.h> // αντί για <ncurses.h> με την προϋπόθεση πως την έχεις βάλει στους default φακέλους του mingw (το Code::Blocks έρχεται με σετταρισμένο το mingw gcc toolchain, έχει ξεχωριστό download): http://comptb.cects....curses-to-mingw (το πακέτο της PDCurses περιέχει pre-compiled mingw binaries)
migf1 Δημοσ. 18 Οκτωβρίου 2012 Δημοσ. 18 Οκτωβρίου 2012 (επεξεργασμένο) δοκίμασε cygwin Δεν νομίζω πως είναι καλή ιδέα να στήσει ολόκληρο Posix layer πάνω στο Win32 APi (και με ασύμβατα μάλιστα εκτελέσιμα έξω από το Cygwin) όταν το μόνο που θέλει (ρώτησε) είναι πως να τρέξει ncurses στα Windows. Μου κάνει κάτι σαν να ζητάει κάποιος ας πούμε λεβγιέ ταχυτήτων από τριαξονική νταλίκα και να του προτείνεις να αγοράσει τριαξονική νταλίκα Επεξ/σία 18 Οκτωβρίου 2012 από migf1
ipduh Δημοσ. 18 Οκτωβρίου 2012 Δημοσ. 18 Οκτωβρίου 2012 Δεν νομίζω πως είναι καλή ιδέα να στήσει ολόκληρο Posix layer πάνω στο Win32 APi (και με ασύμβατα μάλιστα εκτελέσιμα έξω από το Cygwin) όταν το μόνο που θέλει (ρώτησε) είναι πως να τρέξει ncurses στα Windows. Μου κάνει κάτι σαν να ζητάει κάποιος ας πούμε λεβγιέ ταχυτήτων από τριαξονική νταλίκα και να του προτείνεις να αγοράσει τριαξονική νταλίκα εντάξει , το 'πα επειδη ανέφερε `κατευθείαν στο cmd` , και για να ξέρει οτι υπάρχει ... στα σίγουρα δεν το συστήνω σε κάποιον που θέλει να γράψει Native Windows κώδικα αλλά εγω αυτό χρησιμοποιώ , σ'αυτό κάνω compile και όλα .... αλλά δεν με νοιάζουν και τόσο τα windows --αναγκαίο κακό ...
kavi Δημοσ. 20 Οκτωβρίου 2012 Δημοσ. 20 Οκτωβρίου 2012 Άλλος ένας χρόνιος χρήστης του Cygwin εδώ, από την εποχή των beta 17, 18 κτλ. Το μόνο ουσιαστικό overhead είναι ότι πρέπει μαζί με τα εκτελέσιμά σου να διαθέτεις και το cygwin1.dll. Δεν είναι κάτι τραγικό. Φυσικά για native compilation, προτείνεται mingw/msys.
migf1 Δημοσ. 20 Οκτωβρίου 2012 Δημοσ. 20 Οκτωβρίου 2012 Κι εγώ το 'χω ρε παιδιά το Cygwin, όπως και το mingw, καθώς επίσης και κανονικό Ubuntu σε ένα παλιό laptop. Αυτό όμως δεν σημαίνει πως όταν με ρωτάνε για ncurses στα Windows πρέπει να τους λέω να εγκαταστήσουν το Cygwin. Αν ήταν έτσι, γιατί ας πούμε δεν του προτείνετε να εγκαταστήσει κανονικό Linux σε VM? Πολύ καλύτερο από το Cygwin
ParhsG Δημοσ. 20 Οκτωβρίου 2012 Δημοσ. 20 Οκτωβρίου 2012 Το προβλημα ειναι πως τα windose δεν υποστηριζουν τα διαφορα escape code για τα χρωματα και πρεπει να πας μεσω windose api για να βαλεις χρωμα κτλ στη console.Υπάρχει μια βιβλιοθηκη που δουλευε και στα δυο αλλα δε τη θυμαμαι.
migf1 Δημοσ. 20 Οκτωβρίου 2012 Δημοσ. 20 Οκτωβρίου 2012 Δεν υφίσταται πρόβλημα με τα χρώματα. Η PDCurses είναι cross-platform. ΥΓ. Αποκλειστικά για χρώματα, έχω φτιάξει κι εγώ ένα cross-platform mini-interface, αποκλειστικά γραμμένο στον C/C++ pre-processor: http://www.insomnia....erminal-output/ Δίνω το νήμα του φόρουμ, αντί για το site μου, γιατί στο νήμα έχω μεταγενέστερη έκδοση (1.04, με πολύ περισσότερα πράγματα)... με την ελπίδα πως κάποιος/κάποιοι θα την κάνουν λίγο beta-testing για εντοπισμό bugs... και μετά αν είναι, θα ενημερώσω και το site (τώρα έχει παλαιότερη έκδοση: 1.03).
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα