Автор FAQ
 Аватар для RNT
3150 / 370 / 3
Регистрация: 08.08.2009
Сообщений: 1,126

Как делаются проги в Линуксе ?

19.09.2009, 20:51. Показов 13608. Ответов 28
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Я программировал в Виндовсе в С++ Buildere . Недавно поставил Debian Gnome , и сейчас решил написать простейшую программу на С++ или Си. Но возникло несколько вопросов.
1) В Виндовсе я компилил прогу и запускал двойным щелчком . А как это делается в Линуксе ?
2) Известно , что программы идут в виде пакетов для определенного дистрибутива Линукса , и пакет для одного дистрибутива не подойдет к другому . Это значит что мне надо учитывать особенности моего дистрибутива при создании программы ?
3) Как сделать простейшую консольную прогу типа Hello World на С++ или Си в Линуксе ? Попробовал как написано на этом сайте . В консоли написал gcc test.cpp , получил gcc: error trying to exec 'cc1plus': execvp: No such file or directory.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
19.09.2009, 20:51
Ответы с готовыми решениями:

Как отследить из проги на Си завершение другой проги
Есть две программы, одна написана не мной и исходников нет (main), вторую я пытаюсь написать сам для реализации ряда дополнительных...

Как делаются такие в ВК?
Подскажите пожалуйста как сделать так как на картинке?

Как делаются форумы
Здрасте всем! Хочу научиться делать форумы. В данный момент интересует техника добавления сообщения. Нарисовал я окошко: <form...

28
 Аватар для RazorQ
591 / 357 / 16
Регистрация: 06.02.2009
Сообщений: 1,386
19.09.2009, 21:15
1) В Виндовсе я компилил прогу и запускал двойным щелчком . А как это делается в Линуксе ?
Запускаешь терминал. Переходишь к своему рабочему каталогу. Дальше выполняешь команду
Bash
1
gcc <твои файлы>
В результате получишь файл a.out
А вот так
Bash
1
gcc -o <имя программы без расширения> <твои файлы>
Получишь программу с заданным именем. Есть одна особенность запуска программ. Для того чтобы запустить программу, которая не установлена нужно выполнить
PureBasic
1
./&lt;имя программы>
Добавлено через 52 секунды
2) Известно , что программы идут в виде пакетов для определенного дистрибутива Линукса , и пакет для одного дистрибутива не подойдет к другому . Это значит что мне надо учитывать особенности моего дистрибутива при создании программы ?
Не задумывайся об этом. Лучше распространяй исходники и всем будет хорошо.
2
 Аватар для Gravity
577 / 571 / 65
Регистрация: 29.01.2009
Сообщений: 1,274
19.09.2009, 21:16
Цитата Сообщение от RNT Посмотреть сообщение
gcc test.cpp
gcc это для c-файлов, для cpp обычно юзают g++.
1
 Аватар для RazorQ
591 / 357 / 16
Регистрация: 06.02.2009
Сообщений: 1,386
19.09.2009, 21:16
3) Как сделать простейшую консольную прогу типа Hello World на С++ или Си в Линуксе ? Попробовал как написано на этом сайте . В консоли написал gcc test.cpp , получил
gcc по умолчанию компилит Сишные файлы. Чтобы не заморачиваться с инклудами используй g++. Работает точно так же.
0
Автор FAQ
 Аватар для RNT
3150 / 370 / 3
Регистрация: 08.08.2009
Сообщений: 1,126
19.09.2009, 21:29  [ТС]
команды g++ не существует
Bash
1
2
3
4
5
6
7
8
debian:/home/rnt# cd Desktop
debian:/home/rnt/Desktop# g++ test.cpp
bash: g++: command not found
debian:/home/rnt/Desktop# g++ --help
bash: g++: command not found
debian:/home/rnt/Desktop# g++
bash: g++: command not found
debian:/home/rnt/Desktop#
Цитата Сообщение от RazorQ Посмотреть сообщение
gcc -o <имя программы без расширения> <твои файлы>
Bash
1
2
debian:/home/rnt/Desktop# gcc -o test test.cpp
gcc: error trying to exec 'cc1plus': execvp: No such file or directory
0
 Аватар для Gravity
577 / 571 / 65
Регистрация: 29.01.2009
Сообщений: 1,274
19.09.2009, 21:30
Цитата Сообщение от RNT Посмотреть сообщение
команды g++ не существует
Установи gcc-c++
1
Человек
 Аватар для mustardandrew
97 / 82 / 7
Регистрация: 16.06.2009
Сообщений: 229
19.09.2009, 21:46
У меня вопрос по поводу окон.
Как под Linux писать программы с окнамы?
0
Автор FAQ
 Аватар для RNT
3150 / 370 / 3
Регистрация: 08.08.2009
Сообщений: 1,126
19.09.2009, 22:18  [ТС]
юзай Qt , GTK

Добавлено через 30 минут
Установил g++ , ввел g++ test.cpp , потом ввел ./a.out и заработало ! Для начала неплохо. Спасибо !

Не по теме:

Я ввел aptitude --help . Появился длинный список , в конце которого
This aptitude does not have Super Cow Powers.
У aptitude нет суперсилы коров ?!?! =-O
Что за глюк !?

1
Автор FAQ
 Аватар для RNT
3150 / 370 / 3
Регистрация: 08.08.2009
Сообщений: 1,126
20.09.2009, 13:16  [ТС]
Попробовал скомпилить программу решения квадратного уравнения, которую когда-то сделал в Виндовсе , в Dev-C++ . Попробовал , вышла куча ошибок. Тогда я упростил исходник :

C++
1
2
3
4
5
6
7
#include <stdio.h>
#include <iostream.h>
int main()
{
    cout <<"Anything" ;
    return 0;
}
При компиляции выдает следующее:
Bash
1
2
3
fsqrt.cpp:2:22: error: iostream.h: No such file or directory
fsqrt.cpp: In function ‘int main()’:
fsqrt.cpp:5: error: ‘cout’ was not declared in this scope
Что я сделал не так ? Пробовал заменять #include <iostream.h> на #include "iostream.h" и на #include <iostream> , все равно компилятор ругается.
0
 Аватар для Gravity
577 / 571 / 65
Регистрация: 29.01.2009
Сообщений: 1,274
20.09.2009, 13:18
В GCC новый стандарт.
C++
1
2
3
4
5
6
#include <iostream>
int main()
{
        std::cout <<"Anything" ;
        return 0;
}
1
Автор FAQ
 Аватар для RNT
3150 / 370 / 3
Регистрация: 08.08.2009
Сообщений: 1,126
20.09.2009, 13:29  [ТС]
Спасибо ! Так работает . Но почему #include <iostream> надо писать без .h , а #include <stdio.h> с .h ?

C++
1
2
3
4
5
6
7
8
#include <stdio.h>
#include <iostream>
using namespace std;
int main()
{
        cout <<"abracadabra" ;
        return 0;
}
0
 Аватар для RazorQ
591 / 357 / 16
Регистрация: 06.02.2009
Сообщений: 1,386
20.09.2009, 13:57
RNT, потому что stdio.h - сишная библиотека, а iostream - была введена в Си++, где хедеры могут иметь расширение .h .hpp или вообще не иметь его.
1
Автор FAQ
 Аватар для RNT
3150 / 370 / 3
Регистрация: 08.08.2009
Сообщений: 1,126
20.09.2009, 14:31  [ТС]
Как сделать так , чтобы программу можно было запускать щелчком по иконке ?
0
 Аватар для RazorQ
591 / 357 / 16
Регистрация: 06.02.2009
Сообщений: 1,386
20.09.2009, 14:34
Консольную запускать двойным нельзя.
0
Автор FAQ
 Аватар для RNT
3150 / 370 / 3
Регистрация: 08.08.2009
Сообщений: 1,126
20.09.2009, 14:38  [ТС]
Цитата Сообщение от RazorQ Посмотреть сообщение
Консольную запускать двойным нельзя.
Почему нельзя ? GUI прога от консольной отличается только интерфейсом.
0
 Аватар для Mecid
684 / 233 / 16
Регистрация: 15.10.2007
Сообщений: 1,246
20.09.2009, 14:45
через коммандную строку работайте
0
Автор FAQ
 Аватар для RNT
3150 / 370 / 3
Регистрация: 08.08.2009
Сообщений: 1,126
20.09.2009, 14:51  [ТС]
Ну раз нельзя значит нельзя. А как сделать чтобы прогу можно было запустить просто введя ее имя находясь в любой папке ? Тоесть не так ./fsqrt.out, а так fsqrt
0
 Аватар для Gravity
577 / 571 / 65
Регистрация: 29.01.2009
Сообщений: 1,274
20.09.2009, 14:55
Никак. Разве что закинуть ее в /usr/bin или другую папку с общесистемными бинарниками, но это не кошерно.
1
Автор FAQ
 Аватар для RNT
3150 / 370 / 3
Регистрация: 08.08.2009
Сообщений: 1,126
20.09.2009, 15:12  [ТС]
Цитата Сообщение от Gravity Посмотреть сообщение
Разве что закинуть ее в /usr/bin или другую папку с общесистемными бинарниками, но это не кошерно.
Работает.

Цитата Сообщение от Gravity Посмотреть сообщение
Никак
Как никак ? Получилось же ! Gravity, вы меня путаете
0
 Аватар для Gravity
577 / 571 / 65
Регистрация: 29.01.2009
Сообщений: 1,274
20.09.2009, 15:16
Цитата Сообщение от RNT Посмотреть сообщение
Gravity, вы меня путаете

То, что я предложил, это вобще не очень правильно. В том смысле, что тестировать свои программы надо в своем каталоге, а не ложить их в общий, дабы чего-нибудь не кирдыхнуть.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
20.09.2009, 15:16
Помогаю со студенческими работами здесь

Как делаются модули и компоненты?
РЕбят а может ктонибудь мне написать как для идиота как делаются модули и компоненты плз))))

Как делаются пиксельные игры?
Я не до конца понимаю как это, если пиксельарты очень маленькие, а если их увеличивать или еще что то такое, то могут пропорции сбится и...

Как делаются ассемблерные вставки?
Я слышал, что в С++ можно вставлять вставки на асм, как это делается? Спасибо.

как правильно делаются потоки
Доброго времени суток форумчане !!!! Пишу программку , вот стал вопрос о том , что мне нужно сделать так , что бы 2 куска программы...

Как делаются развлекательные порталы?
Всем доброго времени суток! Заранее хочу попросить прощения за, возможно, банальный вопрос, ответ на который всем очевиден, но мне не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

Новые блоги и статьи
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
Контроль уникальности заводского номера - вариант №2
Maks 24.03.2026
В отличие от предыдущего варианта добавлено прерывание циклов, также добавлены новые переменные для сохранения контекста ошибки перед прерыванием цикла: Процедура ПередЗаписью(Отказ, РежимЗаписи,. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
Контроль уникальности заводского номера - вариант №1
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере документа выдачи шин для спецтехники с табличной частью в КА2. Данные берутся из регистра сведений, по которому настроено. . .
Хочу заставить корпорации вкладываться в здоровье сотрудников: делаю мат модель здравосохранения
anaschu 22.03.2026
e7EYtONaj8Y Z4Tv2zpXVVo https:/ / github. com/ shumilovas/ med2. git
Программный отбор элементов справочника по группе
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа в КА2. В качестве фильтра для отбора справочника служит группа номенклатуры. Отбор по наименованию. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru