簡體   English   中英

xterm:不能執行VPVP:沒有文件或目錄

[英]xterm: Can't execvp: No file or directory

我正在用Linux編寫C程序。

我創建了一個流程並將其分叉以創建一個孩子。 我想在這個孩子中運行另一個程序,所以我正在使用execlp 但是,該程序必須在獨立的窗口中運行。

if ( (execlp("xterm","xterm","-e","./Child1", "127.0.0.1", (char *) 0)) < 0)  {
  printf("Failed to Start the Echo Client. Exiting application.");
  return 1;
}

Child1.c是一個簡單程序,與我的當前文件位於同一目錄中。

執行時,代碼運行良好,並且出現xterm窗口,但出現錯誤"xterm: Can't execvp: No file or directory"

你能給我建議一個解決方案嗎?

您的系統可能未安裝xterm (或用戶的PATH錯誤)。 您可以測試/usr/bin/xterm的存在(例如access syscall),或使用其他方法。 例如,許多Debian或Ubuntu發行版都有x-terminal-emulator (通常是指向某些精確程序的符號鏈接),您可以使用它代替xterm

如果xterm啟動,則您的程序./Child1不存在,您應該在access之前測試它的存在(使用access )。 如果您只有源代碼./Child1.c ,則應該在之前進行編譯(也許通過運行system("gcc -Wall Child1.c -o Child1") ,然后測試其是否已成功編譯,即測試該system傳回0,表示Child1檔案存在且可以執行)。

您應該花一些時間閱讀xterm(1)手冊頁。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM