Προς το περιεχόμενο

Linux Mint 19.1 Cinnamon - Εκτέλεση προγραμμάτων με διπλό κλικ πάνω τους


cvb~

Προτεινόμενες αναρτήσεις

Δημοσ. (επεξεργασμένο)

  Καλησπέρα. Το πρόβλημα είναι ότι ενώ κάνω compile κάποια μικρά προγράμματα και μπορώ μετά να τα τρέξω από την κονσόλα με την εντολή ./onoma_programmatos , με διπλό κλικ δεν τρέχουν. Στο προηγούμενο λειτουργικό, το Linux Mint 17.3, μετά τη μεταγλώττιση, έτρεχαν τα προγράμματα κανονικά με διπλό κλικ πάνω τους. Πως μπορώ να τα τρέχω με διπλό κλικ; Ευχαριστώ πολύ.

Επεξ/σία από cvb~
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δυστυχώς αυτό δε λύνει το πρόβλημα. Το ξαναδοκίμασα και τώρα δηλαδή με chmod +x αλλά και πιο πριν με δεξί κλικ στο εκτελέσιμο και ενεργοποίηση του check box στην καρτέλα "Δικαιώματα", στο πεδίο "Εκτέλεση", στο "Να επιτρέπεται η εκτέλεση του αρχείου ως πρόγραμμα". Αυτό που μου βγάζει πάντα σε παράθυρο, όταν πατάω διπλό κλικ στα εκτελέσιμα είναι "Άγνωστος τύπος αρχείου", "The file "onoma_programmatos" has no known programs associated with it. Use the Open With dialog to pick a program to open it with". Επίσης τα εκτελέσιμα έχουν εικονίδιο κειμένου, πράγμα περίεργο. Ένα άλλο πράγμα που δεν καταλαβαίνω είναι πως στο καλό στην προηγούμενη εγκατάσταση με το Linux Mint 17.3 έτρεχαν τα εκτελέσιμα κανονικά μετά την μεταγλώττιση τους απλά μόνο με διπλό κλικ πάνω τους. Αυτό διευκόλυνε πάρα πολύ τη διαδικασία. Οπότε τώρα θα πρέπει μέχρι να βρεθεί κάποια λύση να τα καλώ από την κονσόλα με ./ . Ίσως να 'ναι κάποιο σφάλμα του Linux Mint 19.1 ποιός ξέρει, εκτός αν μου διαφεύγει και τίποτα άλλο.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημοσ. (επεξεργασμένο)

Δυστυχώς ούτε αυτό λειτουργεί. Κάτι πρέπει να έχουν αλλάξει οι κατασκευαστές της διανομής, δεν εξηγείται αλλιώς.

Επεξ/σία από cvb~
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημοσ. (επεξεργασμένο)

φτιαξε ενα launcher, καπως ετσι με επεξεργαστη κειμενου

[Desktop Entry]
Version=1.0
Type=Application
Name=ονομα-προγραμματος
Comment=
Exec=/home/user/ονομα-προγραμματος
Icon=/home/user/ονομα-προγραμματος.png
Path=
Terminal=false
StartupNotify=false
Name[en_US.UTF-8]=ονομα-προγραμματος

αποθηκευση, δεξι κλικ και μαρκαρισμα ως εκτελεσιμο

Επεξ/σία από μπουρτζοβλαχος
  • Like 1
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

1 ώρα πριν, cvb~ είπε

Δυστυχώς ούτε αυτό λειτουργεί. Κάτι πρέπει να έχουν αλλάξει οι κατασκευαστές της διανομής, δεν εξηγείται αλλιώς.

Ναι το δοκίμασα και δεν παίζει.

Αν έχεις πχ το Terminal στο Desktop κάνε drag n drop το πρόγραμμα στο Terminal και θα παίξει(δοκιμασμένο). 

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Αποθήκευσα τις παραπάνω δηλώσεις σε ένα αρχείο με όνομα execution, βάζοντας το όνομα μια μικρής εφαρμογής gtk στη θέση του ονόματος του προγράμματος. Το κανα εκτελέσιμο. Τώρα μου βγάζει ένα παράθυρο που μου λέει να επιλέξω είτε εκτέλεση στο τερματικό είτε εκτέλεση. Δεν γίνεται τίποτα και στις 2 περιπτώσεις.

Όταν τρέχω το execution χειροκίνητα από την κονσόλα μου γράφει:

./execution: line 1: [Desktop: command not found
./execution: line 11: en_US.UTF-8: syntax error: invalid arithmetic operator (error token is ".UTF-8")

Ας σημειωθεί πάλι ότι η εφαρμογή gtk καλείτε από την κονσόλα κανονικά και τρέχει όπως αναμένεται.

Σκεφτόμουνα να ξαναέβαζα το Linux Mint 17.3 αλλά μάλλον δεν αξίζει τον κόπο. Ο Απρίλης που μας πέρασε ήταν ο τελευταίος μήνας που υποστήριζαν την διανομή οι κατασκευαστές της.

coffex έκανα drag n drop το εκτελέσιμο στο εικονίδιο του Terminal, και αυτό που έγινε ήταν να ανοίξει απλά η κονσόλα χωρίς να τρέξει το εκτελέσιμο.

Ευχαριστώ και πάλι για την βοήθεια σας.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημοσ. (επεξεργασμένο)
1 ώρα πριν, coffeex είπε

Στην γραμμή 11 γιατί σου βγάζει λάθος; Μήπως υπάρχει πρόβλημα με το εκτελέσιμο; 

Τα λαθη , εντοπιζονται στον launcher που του προτεινε ο μπουρτζοβλαχος.Γιατι το εκλαμβανει σαν bash script και δεν προκειται να παιξει ποτε σαν τετοιο.Αυτο που εγραψε ο μπουρτζοβλαχος ειναι launcher και λογικα πρεπει να χει καταληξη .desktop ή κατι τετοιο...δεν εχω πολυασχοληθει με αυτα.

@cvb~ Ανεβασε καπου το εκτελεσιμο σου , να το δοκιμασω σε μια εγκατασταση linux mint 19.1 που εχω σε VM...δεν νομιζω να υπαρχει τετοιο προβλημα μεγαλο.

Επεξ/σία από mphxths
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

1 ώρα πριν, cvb~ είπε

Αποθήκευσα τις παραπάνω δηλώσεις σε ένα αρχείο με όνομα execution, βάζοντας το όνομα μια μικρής εφαρμογής gtk στη θέση του ονόματος του προγράμματος. Το κανα εκτελέσιμο. Τώρα μου βγάζει ένα παράθυρο που μου λέει να επιλέξω είτε εκτέλεση στο τερματικό είτε εκτέλεση. Δεν γίνεται τίποτα και στις 2 περιπτώσεις.

Όταν τρέχω το execution χειροκίνητα από την κονσόλα μου γράφει:


./execution: line 1: [Desktop: command not found
./execution: line 11: en_US.UTF-8: syntax error: invalid arithmetic operator (error token is ".UTF-8")

Ας σημειωθεί πάλι ότι η εφαρμογή gtk καλείτε από την κονσόλα κανονικά και τρέχει όπως αναμένεται.

Σκεφτόμουνα να ξαναέβαζα το Linux Mint 17.3 αλλά μάλλον δεν αξίζει τον κόπο. Ο Απρίλης που μας πέρασε ήταν ο τελευταίος μήνας που υποστήριζαν την διανομή οι κατασκευαστές της.

coffex έκανα drag n drop το εκτελέσιμο στο εικονίδιο του Terminal, και αυτό που έγινε ήταν να ανοίξει απλά η κονσόλα χωρίς να τρέξει το εκτελέσιμο.

Ευχαριστώ και πάλι για την βοήθεια σας.

Λοιπόν άνοιξε πρώτα το Terminal και μετά κάνε drag n drop και το μόνο που θα κάνεις για να τρέξει είναι να πατήσεις ENTER μετά.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Όχι το εκτελέσιμο δεν έχει πρόβλημα γιατί μπορώ να το εκκινήσω από την κονσόλα με ./ονομα_εκτελέσιμου. Αντέγραψα τον κώδικα που εδώσε ο φίλος πιο πάνω και όπου έλεγε όνομα-προγράμματος έβαλα 17.2 που είναι το πλήρες όνομα του εκτελέσιμου.

Επίσης εχθές στο irc του Linux Mint μου είπαν κάποια παιδιά να κοιτάξω για τον launcher και τις ρυθμίσεις του nemo, του file manager του Mint, τις κόιταξα στα γρήγορα αλλά δε βρήκα κάποια σχετική ρύθμιση. Εσείς τι διανομές τρέχετε; Τα εκτελέσιμα σας τρέχουν με διπλό κλικ πάνω τους;

Το ξαναδοκίμασα με drag n drop στο Terminal και <ENTER> αλλά δεν τρέχει.

Το εκτελέσιμο βρίσκεται εδώ https://uploadfiles.io/k135gwdw . Δεν είναι τίποτα άλλο παρά ένα μικρό προγραμματάκι που μετράει και σου δείχνει τον αριθμό των φορών που πάτησες το κουμπί. Ας σημειωθεί ότι τρέχω την 64bit έκδοση του Mint (v19.1). Παραθέτω και τον κώδικα για λόγους τυχόν υποψίας κακόβουλου προγράμματος. Σε περίπτωση που θες να μεταγλωττίσεις τον κώδικα πρέπει να 'χεις στο σύστημα σου το πακέτο libgtk2.0-dev (με τις εξαρτήσεις του) που μπορείς να το βρεις με μια αναζήτηση του "libgtk2.0-dev" στο Synaptic (Mint κάτω αριστερά > Διαχείριση συστήματος > Διαχείριση πακέτων Synaptic). Τέλος ο κώδικα μεγλωττίζεται με την εντολή:

gcc 17.2.c $(pkg-config --cflags --libs gtk+-2.0) -o 17.2

Ο κώδικας είναι ο παρακάτω:

#include <gtk/gtk.h>

int count = 0;

void end_program (GtkWidget *wid, gpointer ptr)
{
	gtk_main_quit ();
}

void count_button (GtkWidget *wid, gpointer ptr)
{
	char buffer[30];
	count++;
	sprintf (buffer, "Button pressed %d times", count);
	gtk_label_set_text (GTK_LABEL (ptr), buffer);
}

void main (int argc, char *argv[])
{
	gtk_init (&argc, &argv);
	GtkWidget *win = gtk_window_new (GTK_WINDOW_TOPLEVEL);
	GtkWidget *btn = gtk_button_new_with_label ("Close window");
	g_signal_connect (btn, "clicked", G_CALLBACK (end_program), NULL);
	g_signal_connect (win, "delete_event", G_CALLBACK (end_program), NULL);
	GtkWidget *lbl = gtk_label_new ("My label");
	GtkWidget *btn2 = gtk_button_new_with_label ("Count button");
	g_signal_connect (btn2, "clicked", G_CALLBACK (count_button), lbl);
	GtkWidget *tbl = gtk_table_new (2, 2, TRUE);
	gtk_table_attach_defaults (GTK_TABLE (tbl), lbl, 0, 1, 0, 1);
	gtk_table_attach_defaults (GTK_TABLE (tbl), btn2, 1, 2, 0, 1);
	gtk_table_attach_defaults (GTK_TABLE (tbl), btn, 0, 2, 1, 2);
	gtk_container_add (GTK_CONTAINER (win), tbl);
	gtk_widget_show_all (win);
	gtk_main ();
}

 

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

@cvb~ Λοιπον ακου πως εχουν τα πραγματα

1.Απο τερματικο , απλα το εκανα εκτελεσιμο (chmod +x 17.2) και επαιξε οπως ηταν αναμενομενο.
2.Παμε τωρα στα περι nemo.

Eκει τα πραγματα ηταν διαφορετικα.Αν εκανα διπλο κλικ πανω στο εκτελεσιμο , εβγαζε αυτο το popup.Αν επελεγα την 1η επιλογη (make executable and run) , ετρεχε παλι κανονικα.
Αλλα καθε φορα θα επρεπε να φαω στην μαπα αυτο το popup.

Tι γινεται λοιπον τωρα.Το προβλημα δημιουργειται απο τους compilers (gcc) , που παραγουν εκτελεσιμο με τετοιο τροπο ωστε οι file browsers το θεωρουν "shared library" και δεν ξερουν τι να το κανουν.Στην καλυτερη των περιπτωσεων υποθετουν οτι μπορει να εκτελεστει , και ετσι εχουμε το popup με αυτην την επιλογη που εγραψα παραπανω.

Για να αποφυγουμε λοιπον αυτην την μανουρα κανε τα εξης :

1.ανοιξε nemo , δεξι κλικ στο εκτελεσιμο και ιδιοτητες/properties , δεν ξερω τι γλωσσα εχεις εκει.
2.πηγαινε στο tab "open with"/"ανοιγμα με".Εκει εχει μια λιστα με προγραμματα και κατω απο την λιστα εχει ενα πλαισιο για να γραψεις καποια "custom command".Eκει λοιπον γραψε "bash -c" (χωρις εισαγωγικα εε) και πατα το αριστερο κουμπι που εχει απο κατω που λογικα λεει προσθηκη στην λιστα/add to list.Λογικα θα προσθεσει στην απο πανω λιστα προγραμματων το bash και θα το βαλει και σαν default προγραμμα για αυτο το αρχειο.Σε επομενα αρχεια ισως να χρειαστει να το επιλεξεις εκ νεου , ισως και οχι , θα δεις.

Μετα απο ολα αυτα , κανοντας διπλο κλικ στο αρχειο , το εκτελει απευθειας , χωρις popup και μαλακιες...τουλαχιστον στην δικη μου εγκατασταση...

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

κατεβασα το 17.2

ouGnXqi.png

το κανω αρχικα εκτελεσιμο και φτιαχνω το launcher, απλα την τελευταια γραμμη

Name[en_US.UTF-8]=ονομα-προγραμματος

παρελειψε την καπως ετσι

kzPwVvA.png

αποθηκευση και εκτελεσιμο

yLt3sgI.png

διπλο κλικ και ετοιμο

5KBY5yY.png

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

@μπουρτζοβλαχος Δυστυχως αν compil-αρει πολλα εκτελεσιμα , που υποθετω θα χουν και διαφορετικα ονοματα , ειναι ασυμφορη αυτη η προσεγγιση..να φτιαχνει διαρκως δηλ launchers ή στην καλυτερη να κανει edit και να αλλαζει το ονομα του προγραμματος στον launcher...

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...