vala i uruchomienie skompilowanego programu

Potrzebujesz pomocy z C, C++, perl, python, itp.
szybki
Posty: 98
Rejestracja: 13 września 2014, 13:06

vala i uruchomienie skompilowanego programu

Post autor: szybki »

mam kilka własnych programów napisanych w vali, kompilowałem je dawno temu jeszcze na wheezy. Teraz na debianie jessie nie moge ich uruchomić, mogę skompilować "hello world" i uruchomić bez problemu np. ./hello ale jak chce uruchomić z konsoli ./staryprogram to dostaję komunikat

bash: ./oldapp: Nie ma takiego pliku ani katalogu
Ktoś wie może co powinienem zrobić? Zmieniłem prawa dla uruchamianego pliku na 777 razem z -x ale to nie pomogło i szczerze mówiąc jestem w kropce.
Awatar użytkownika
marcin1982
Moderator
Posty: 1731
Rejestracja: 05 maja 2011, 12:59
Lokalizacja: Zagłębie Dąbrowskie

Post autor: marcin1982 »

A jak tak uruchomisz to co się pokaże?

Kod: Zaznacz cały

bash -v -exec /ścieżka/do/pliku/wykonywalnego
szybki
Posty: 98
Rejestracja: 13 września 2014, 13:06

Post autor: szybki »

Dziwna rzecz.
bash -v -exec hello
hello
+ hello
bash: hello: nie znaleziono polecenia
Awatar użytkownika
LordRuthwen
Moderator
Posty: 2324
Rejestracja: 18 września 2009, 21:45
Lokalizacja: klikash?

Post autor: LordRuthwen »

Pytanko: a nie masz czasem tych starych programów na innej partycji niż tego nowego?
Pytam, bo: entries/418-Problemy-z-wykonywaniem-skr ... tycji-home
Ponadto po bash -v -exec podajesz ścieżkę bezwzględną do pliku, więc daj tam jeszcze ./ jeśli uruchamiasz to w jego lokalizacji.
szybki
Posty: 98
Rejestracja: 13 września 2014, 13:06

Post autor: szybki »

To jest program skompilowany na innym komputerze, przeniesiony na flash i zgrany na nowy.
bash -v -exec ./hello
./hello
+ ./hello
bash: ./hello: Nie ma takiego pliku ani katalogu
edycja: z początku myślałem że to jakiś problem z tym że program był kompilowany na 32bitowym a chce go odpalić na 64, ale... skompilowałem też zwykłe "hello world" jeszcze raz i też się nie odpala na innym sprzęcie
mariaczi
Member
Posty: 1343
Rejestracja: 08 lutego 2008, 12:58
Lokalizacja: localhost@śląskie

Post autor: mariaczi »

Jakiś prosty skrypt bash możesz uruchomić z tej samej lokalizacji co masz te skompilowane pliki? Uruchamia się poprawnie? Nie masz czasem SELinuxa albo ACLa zainstalowanego w systemie?
szybki
Posty: 98
Rejestracja: 13 września 2014, 13:06

Post autor: szybki »

Tak, skrypty bash działają bez problemu, podobnie jak programy skompilowane w C. Problemem jest tylko pogram napisany w vali. A system, to praktycznie czysty debian jessie.
mariaczi
Member
Posty: 1343
Rejestracja: 08 lutego 2008, 12:58
Lokalizacja: localhost@śląskie

Post autor: mariaczi »

Czy zatem to co masz napisane w vali i skompilowane nie wymaga jakiś bibliotek w systemie, na którym jest uruchamiane - dopytuje, bo nie znam vali, a być może tak właśnie jest. Spróbuj uruchomić ten swój skompilowany program z stracem a mam nadzieję, że coś się rozjaśni.
szybki
Posty: 98
Rejestracja: 13 września 2014, 13:06

Post autor: szybki »

Hmm nie, ponieważ nie uruchamiają sie nawet proste rzeczy np.

Kod: Zaznacz cały

void main () {print ("Hello World\n");}
, zwyczajnie zainstalowałem tylko valac, aby móc kompilować też. A sama vala korzysta z GObject
mariaczi
Member
Posty: 1343
Rejestracja: 08 lutego 2008, 12:58
Lokalizacja: localhost@śląskie

Post autor: mariaczi »

Sprawdź proszę ze wspomnianym strace.
Pakiet valac zależy od libvala a w nim są biblioteki "so". Możliwe, że nie są wymagane przy uruchamianiu skompilowanego kodu... strace powinien to rozjaśnić.
ODPOWIEDZ