[SOLVED][C++] Napisałem program - co dalej?

Bash, C, C++, Java, PHP, Ruby, GTK, Qt i wiele innych - wszystko tutaj.
Itoto
Piegowaty Guziec
Piegowaty Guziec
Posty: 26
Rejestracja: 31 mar 2008, 15:23
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: Unity
Architektura: x86_64

[SOLVED][C++] Napisałem program - co dalej?

Post autor: Itoto »

Założyłem ten temat, ponieważ nie mogę doszukać się elementarnych informacji, co dalej zrobić z napisanym programem. Jak przygotować go do instalacji/kompilacji przez innych użytkowników?
Program składa się z pliku programu oraz jednego tekstowego, w którym zapisywane są ustawienia. Programy po instalacji znajdują się w katalogu usr/bin, a konfiguracyjne w odpowiednich katalogach w folderze domowym. Jak zrobić, aby pliki konfiguracyjne mojego programu również znajdowały się w odpowiednim folderze w katalogu domowym?
Awatar użytkownika
kabanek
Zakręcona Traszka
Zakręcona Traszka
Posty: 592
Rejestracja: 23 cze 2009, 20:34
Płeć: Mężczyzna
Wersja Ubuntu: 13.10
Środowisko graficzne: Xfce
Architektura: x86_64
Kontakt:

Odp: [C++] Napisałem program - co dalej?

Post autor: kabanek »

możesz zrobić np pakiet deb
albo udostępnić np tutaj wraz ze źródłami (jeśli chcesz): http://sourceforge.net/
Itoto
Piegowaty Guziec
Piegowaty Guziec
Posty: 26
Rejestracja: 31 mar 2008, 15:23
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: Unity
Architektura: x86_64

Odp: [C++] Napisałem program - co dalej?

Post autor: Itoto »

Tak, wiem, ale nic nie zrobią z jednym plikiem.
Jak przygotować go do instalacji/kompilacji przez innych użytkowników?
O to mi chodzi.
Awatar użytkownika
kabanek
Zakręcona Traszka
Zakręcona Traszka
Posty: 592
Rejestracja: 23 cze 2009, 20:34
Płeć: Mężczyzna
Wersja Ubuntu: 13.10
Środowisko graficzne: Xfce
Architektura: x86_64
Kontakt:

Odp: [C++] Napisałem program - co dalej?

Post autor: kabanek »

no to ponownie odeślę Cię np http://sourceforge.net/ - tutaj możesz spokojnie wrzucić swój program oraz masz możliwość stworzenia swojej strony www w obrębie konta i tam możesz zamieszczać co tylko chcesz :D czyli np co ten program robi, jak go używać/kompilować itp

jeśli chodzi o kompilację to możesz stworzyć prosty Makefile (http://pl.wikibooks.org/wiki/C/Wi%C4%99 ... mpilowaniu)
clansman5
Sędziwy Jeż
Sędziwy Jeż
Posty: 77
Rejestracja: 06 sty 2009, 10:59
Płeć: Mężczyzna
Wersja Ubuntu: 9.10
Środowisko graficzne: GNOME
Architektura: x86

Odp: [C++] Napisałem program - co dalej?

Post autor: clansman5 »

Jezeli napisales ten program w jednym pliku to solidnie przemysl czy rzeczywiscie chcesz go gdziekolwiek udostepniac. Calkowity brak podzialu na jakiekolwiek odrebne jednostki kompilacyjne swiadczy tylko o jego prostocie, i byc moze bardzo niskiej jakosci.

A tak na marginesie, co to za program i co robi ? Wiesz, kalkulatorkow wszelakiej masci mamy juz chyba pod dostatkiem.
Itoto
Piegowaty Guziec
Piegowaty Guziec
Posty: 26
Rejestracja: 31 mar 2008, 15:23
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: Unity
Architektura: x86_64

Odp: [C++] Napisałem program - co dalej?

Post autor: Itoto »

Dzięki, kabanek.
Jest to program do szybkiej zmiany gammy, wykorzystujący skróty klawiszowe. Nie spotkałem takiego programu na Linuksie, a jest mi bardzo potrzebny. Chętnie go udostępnię, jeśli spotka się z jakimś zainteresowaniem :).

A co z tymi plikami konfiguracyjnymi. Są jakieś specjalne komendy do utworzenia takich folderów dla aplikacji, czy muszę to zrobić przez program, podając ścieżkę np. $HOME/.gamma/?
Awatar użytkownika
pixelenter
Serdeczny Borsuk
Serdeczny Borsuk
Posty: 194
Rejestracja: 31 gru 2009, 15:41
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: GNOME
Architektura: x86_64

Odp: [C++] Napisałem program - co dalej?

Post autor: pixelenter »

A poco jakieś specjalne komendy? mkdir $HOME/.gamma i gotowe
http://uwolnijlaptopa.pl
http://counter.li.org/cgi-bin/certificate.cgi/528644
mikolajs
Wytworny Kaczor
Wytworny Kaczor
Posty: 352
Rejestracja: 15 paź 2008, 18:30
Płeć: Mężczyzna
Wersja Ubuntu: 9.04
Środowisko graficzne: KDE Plasma

Odp: [C++] Napisałem program - co dalej?

Post autor: mikolajs »

Jeżeli to prosty projekt to możesz sam napisać Makeflie jak pisał kabanek, ale na przyszłość warto zainteresować się cmake. Tworzysz prosty skrypt konfiguracyjny i generuje Ci sam Makefile. Można tym samym skryptem kompilować na innych platformach.
Itoto
Piegowaty Guziec
Piegowaty Guziec
Posty: 26
Rejestracja: 31 mar 2008, 15:23
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: Unity
Architektura: x86_64

Odp: [C++] Napisałem program - co dalej?

Post autor: Itoto »

Mam funkcję, która ma za zadanie odczytanie danych z pliku .gamma

Kod: Zaznacz cały

fstream plik;
plik.open("$HOME/.gamma",ios::in);
string dane;
getline(plik,dane);
return(dane);
I tu jest problem, ponieważ $HOME/.gamma nie działa. Nie mogę uzyskać dostępu do tego pliku. Działa dopiero jak podam pełną ścieżkę /home/itoto/.gamma, ale na każdym komputerze nazwa użytkownika jest inna.
Awatar użytkownika
kabanek
Zakręcona Traszka
Zakręcona Traszka
Posty: 592
Rejestracja: 23 cze 2009, 20:34
Płeć: Mężczyzna
Wersja Ubuntu: 13.10
Środowisko graficzne: Xfce
Architektura: x86_64
Kontakt:

Odp: [C++] Napisałem program - co dalej?

Post autor: kabanek »

to taki prosty program napisany "na kolanie" :-)

Kod: Zaznacz cały

#include <fstream>
#include <iostream>
#include <stdlib.h>

using namespace std;

string funkcja()
{
  fstream plik;
  string home = getenv ("HOME");
  home += "/.gamma";
  plik.open(home.c_str(),ios::in);
  string dane;
  getline(plik,dane);
  return(dane);
}

int main()
{
  cout<<"Funkcja zwróciła: "<<funkcja()<<endl;
  return 0;
}
potrzebne info znalazłem tutaj: http://www.linuxquestions.org/questions ... -c-433483/
Itoto
Piegowaty Guziec
Piegowaty Guziec
Posty: 26
Rejestracja: 31 mar 2008, 15:23
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: Unity
Architektura: x86_64

Odp: [C++] Napisałem program - co dalej?

Post autor: Itoto »

Dziękuję :) Naprawdę mi pomogłeś.
Awatar użytkownika
el.pescado
Zakręcona Traszka
Zakręcona Traszka
Posty: 734
Rejestracja: 26 maja 2005, 11:43
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: GNOME
Architektura: x86
Kontakt:

Odp: [SOLVED][C++] Napisałem program - co dalej?

Post autor: el.pescado »

Program składa się z pliku programu oraz jednego tekstowego, w którym zapisywane są ustawienia. Programy po instalacji znajdują się w katalogu usr/bin, a konfiguracyjne w odpowiednich katalogach w folderze domowym.
To niekoniecznie najlepsze wyjście. Podczas instalacji trzebaby wrzucać każdemu użytkonikowi pliki do katalogu domowego, systuacja komplikuje się, gdy po zainstalowaniu programu doda się użytkownika.

Prostszym wyjściem jest napisanie programu tak, by mógł pobierać konfigurację z kilku plików. Wtedy można utworzyć plik z konfiguracją "systemową" i umieścić go, powiedzmy, w katalogu /etc, oraz dodatkowy plik "użytkownika", w katalogu domowym, w taki sposób, by ustawienia z $HOME miały większy priorytet niż te z /etc.

EDIT:
PS. Zgodnie z wytycznymi XDG, pliki konfiguracyjne powinny być w $HOME/.config/cośtam, czy też tam gdzie wskazuje $XDG_DATA_HOME, a nie bezpośrednio w $HOME.
Itoto
Piegowaty Guziec
Piegowaty Guziec
Posty: 26
Rejestracja: 31 mar 2008, 15:23
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: Unity
Architektura: x86_64

Odp: [SOLVED][C++] Napisałem program - co dalej?

Post autor: Itoto »

El.pescado, rozwiązałem to tak, że program sprawdza czy pliki konfiguracyjne w $HOME się znajdują, jeśli nie istnieją to je tworzy. Więc jeśli inny użytkownik uruchomi ten program to dla niego utworzą się osobne pliki konfiguracyjne w $HOME.

Nie znałem tych wytycznych. Nakazałem programowi, aby zapisywał swoje pliki konfiguracyjne w $HOME/.gamma.
ODPOWIEDZ

Wróć do „Programowanie”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 15 gości