g ++ compiled application doesn't work

I wrote в simulation code with C ++ and compiled it into an executable using g++. However, the output file doesn't do anything when double clicked. I checked "allow file to be used эксперт executable" эксперт well but still, nothing happens. Any чередуйся ways I should try or is something wrong?

EDIT: It is set to run схвати в WINE application even though I deleted WINE using apt-get purge в while ago. Хан it be the problem? Maybe I should try another program to run it with. What should it be actually set схвати default?

EDIT 2: I performed the compiling using:

$ sudo g++ -o main main.cpp

It is в простой command-line app that - не GUI.

2
задан 26 December 2015 в 18:28

2 ответа

Если бы Ваше приложение не имеет никакого GUI (Т.Е. только подключается с консоли к выводу), Вы ничего не видели бы, потому что терминал не открыт при двойном щелчке по исполняемому файлу в файловом менеджере. Однако Ваше приложение должно работать в фоновом режиме.

можно выполнить исполняемый файл от существующей оболочки путем вызова его с ./path/to/executable

, вторая, более сложная опция состояла бы в том, чтобы сделать файл на рабочем столе, чтобы запустить приложение из файла исключая и установить его для проявления терминального вывода.

предположим у меня есть очень простое приложение такой как

#include <iostream>
#include <stdlib.h>
int main() {
    std::cout << "hello bob" << std::endl;
    system("read moo"); // pause for input at the end.
    return 0;
}

, И я компилирую его с g++ foo.cpp который выводами по умолчанию a.out файл.

Тогда просто создают foo.desktop файл, содержащий

[Desktop Entry]
Type=Application
Name=Awesome App
Terminal=true
Exec=/path/to/a.out

, какой мог тогда установить исполняемый файл, тогда дважды щелкните от навигатора файла и посмотрите терминальный вывод. Именно так ярлыки приложения создаются в меню и как они добираются, чтобы иметь дружественное имя и значки.

3
ответ дан 2 December 2019 в 02:20

Попытайтесь выполнить его в терминале. Если это будет программа командной строки, то Вы не будете в состоянии сделать много только путем двойного щелчка по исполняемому файлу в файловом менеджере. Выполните следующее в терминале:

cd /path/to/directory

Замена /path/to/directory с путем к каталогу, где Ваш двоичный файл находится в;

sudo chmod +x binaryName

Для проверки двоичный файл является исполняемым файлом (замените binaryName его именем);

./binaryName

Для выполнения его.

1
ответ дан 2 December 2019 в 02:20

Другие вопросы по тегам:

Похожие вопросы: