Score:0

จะสร้าง .desktop เป็นโปรแกรม C ได้อย่างไร?

ธง kr

ดังนั้นฉันจึงพยายามเรียกใช้โปรแกรมเทอร์มินัล C เพียงแค่ดับเบิลคลิก ฉันพยายามทำผ่านไฟล์ .desktop

  • ไฟล์เดสก์ท็อปได้รับอนุญาตให้ดำเนินการเป็นไฟล์และอยู่ในเดสก์ท็อปของฉัน
  • โปรแกรมชื่อ teste รอให้ผู้ใช้ป้อนข้อมูลและอยู่ใน /home/vithor/
  • ฉันใช้ PopOs (เป็น "ubuntu distro");
  • ฉันอนุญาตให้เรียกใช้งานได้แล้วในการกำหนดค่า nautilus;
[รายการเดสก์ท็อป]
เวอร์ชัน=1.0
Name=ชื่อโปรแกรม
Comment=นี่คือความคิดเห็นของฉัน
Exec=/home/vithor/teste
Icon=/home/vithor/Pictures/Icons/books.png
เทอร์มินัล=จริง
Type=ใบสมัคร
หมวดหมู่ = ยูทิลิตี้;
~                    

แต่มันไม่ทำงาน ฉันทำอะไรผิด? หรือฉันมีทางเลือกอื่นในการเรียกใช้โปรแกรม C เพียงแค่คลิกที่มัน?

us flag
ลบ ; หลังจากยูทิลิตี้ นอกจากนี้ยังไม่รองรับ Pop OS ที่นี่
us flag
*แต่ใช้งานไม่ได้* -- พฤติกรรมปัจจุบันเป็นอย่างไร ไฟล์เดสก์ท็อปแสดงไอคอนหรือไม่
Score:1
ธง us

ฉันสมมติว่าชื่อของโปรแกรมคือ อัณฑะและจะอยู่ที่โฟลเดอร์เริ่มต้นของคุณ

  1. ลบ #!/usr/bin/env ทุบตี จากบรรทัดแรก บรรทัดแรกควรเป็น [รายการเดสก์ท็อป]

  2. เปลี่ยน ผู้บริหาร เข้าสู่

    Exec=/home/vithor/teste
    
  3. เปลี่ยนบรรทัดสุดท้ายเป็น หมวดหมู่=ยูทิลิตี้

  4. ทำเครื่องหมายไฟล์ .desktop ว่าเรียกใช้งานได้ด้วยคำสั่ง chmod +x /path/to/file.desktop.

ตอนนี้ควรใช้งานได้เมื่อคุณดับเบิลคลิก

อย่างไรก็ตาม หากโปรแกรม C ควรจะพิมพ์ในเทอร์มินัลและไม่ทำอะไรเลย มันจะพิมพ์ผลลัพธ์และปิดเทอร์มินัลอย่างรวดเร็ว และคุณจะไม่เห็นอะไรเลย ในกรณีเช่นนี้ ให้เปลี่ยนแหล่งที่มาเพื่อรอให้คุณป้อนอักขระบางตัวก่อนที่จะปิด

รหัสตัวอย่าง:

#รวม <stdio.h>

โมฆะ main(){
// รหัสของคุณที่นี่

int a;
printf("ใส่อักขระที่ต้องการยกเลิก: ");
scanf("%d",&a);
}

ตอนนี้รวบรวมรหัสด้วย

เส้นทาง gcc/to/source.c -o ทดสอบ
WinEunuuchs2Unix avatar
in flag
ตัวอย่างที่ดีของโปรแกรม C อย่างไรก็ตาม ไม่ควรมีคำสั่ง `gcc` หรือ `make` หรือ `lint` ที่ไหนสักแห่งใช่ไหม
us flag
@ WinEunuuchs2Unix แน่นอนเราต้องการ gcc เพื่อรวบรวมสิ่งนี้ ฉันถือว่า OP รู้วิธีคอมไพล์ เนื่องจากคำถามเกี่ยวกับวิธีรันไบนารี `teste` ด้วยไฟล์ .desktop
WinEunuuchs2Unix avatar
in flag
ไม่ต้องสงสัยเลยว่า OP และคุณรู้จัก `gcc` พวกเราบางคนไม่ได้เป็นทั้งหมด :)
us flag
@ wineunuuchs2unix โอเค ฉันจะอัปเดตคำตอบ
Vithor avatar
kr flag
ขอขอบคุณสำหรับความช่วยเหลือของคุณ! แต่ฉันลองแล้วไม่ได้ผล :( ฉันจะแก้ไขคำถามและเพิ่มข้อมูลเพิ่มเติม!
Score:0
ธง nl

ใช้ไฟล์ .desktop นี้:

[รายการเดสก์ท็อป]
เวอร์ชัน=1.0
Name=ชื่อโปรแกรม
Comment=นี่คือความคิดเห็นของฉัน
Exec=x-terminal-emulator -e /bin/bash -c '/home/vithor/teste ; เสียงก้อง "" ; echo "กด Enter เพื่อปิด....." ; อ่าน'
Icon=/home/vithor/Pictures/Icons/books.png
เทอร์มินัล=จริง
Type=ใบสมัคร
หมวดหมู่ = ยูทิลิตี้;

มันเปิดเทอร์มินัล รันโปรแกรมของคุณ และหลังจากโปรแกรมของคุณเสร็จสิ้น มันจะรอจนกว่าคุณจะกด Enter เพื่อปิด

BTW ฉันได้ทดสอบสิ่งนี้แล้วและใช้งานได้จริง

หากวิธีนี้ใช้ได้ผลสำหรับคุณ โปรดคลิกที่ไอคอนเครื่องหมายถูกทางด้านซ้ายของคำตอบนี้เพื่อยอมรับคำตอบนี้

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา