Форум программистов, компьютерный форум, киберфорум
C/С++ под Linux
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.64/64: Рейтинг темы: голосов - 64, средняя оценка - 4.64
Автор FAQ
 Аватар для RNT
3150 / 370 / 3
Регистрация: 08.08.2009
Сообщений: 1,126

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

19.09.2009, 20:51. Показов 13612. Ответов 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
Ответ Создать тему
Новые блоги и статьи
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru