Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Jak w temacie mam dość duży problem z GLFW3 (3.0.3/3.0.4) na moim debianie. Używam wheezy x64, z jądrem 3.14-amd64 z backports. Sterowniki mam zamknięte, ze strony nvidii, i chyba w tym leży problem. Otóż gdy mam sterowniki od nvidii, przy kompilacji glfw3 pojawia się błąd:
make[2]: *** Brak reguł do zrobienia obiektu `/usr/lib/x86_64-linux-gnu/libGL.so', wymaganego przez `examples/boing'. Stop.
Po wielu nieudolnych próbach zrezygnowany wgrałem sterowniki nouveau, usuwając zamknięte, jednak te z kolei nie wyrabiają z gnome i uruchamiają go w trybie classic (moja karta to GeForce GTX 660), natomiast glfw3 kompiluje się jak trzeba. Więc idąc tym tropem wgrałem sobie na drugą partycję jessie, cały uradowany, że wszystko będzie działać (w końcu nowa wersja nouveau itd) uruchamiam nowy system i wita mnie gnome w wersji 3.8. Osobiście uważam, że jest brzydkie i nieintuicyjne jak nie wiem, więc pracować na nim nie mogę. No ale poza tym gnome wszystko działa, kompiluje się jak trzeba i nouveau wyrabia mi z łądowaniem standardowego gnome 3. Nie chcę nic zbytnio ruszać poza systemem pakietów, bo jednak reinstalowałem ten system niezliczoną ilość razy i mam szczerze mówiąc dość, zwłaszcza, że w moim przypadku to windows stoi na maszynie wirtualnej na linuxie, a nie odwrotnie. Dlatego też zwracam się do tego jakże cudownego forum z prośbą o pomoc, jako, że wujek google jak zwykle podał mi odpowiedź, ale nie na to pytanie, które mu zadałem (długa lista "jak wgrać glfw3", ani słowa o tym z czym mam problem). Jeśli ktoś wie, jak wgrać gnome 3.4 na jessie (apt-get -t wheezy -u install gnome zwraca serię błędów "zależność nie może zostać spełniona) lub skompilować (zaznaczam: skompilować, nie wgrać przez apt, w moim projekcie wymagana jest kompilacja) glfw3 na wheezy, to bardzo prosiłbym go o pomoc :)
A i jestem nowy, to mój pierwszy post :) Tylko z debiana korzystam już ponad rok, ale nadal czasami mam problemy a takimi podstawowymi rzeczami... :)
Offline
Żeby skompilować to ustrojstwo, to chyba potrzebujesz nagłówków developerskich mesy, to są paczki z końcówką dev w nazwie.
Poza tym nie wiem, dlaczego koniecznie musisz kompilować coś, co masz w repo, w paczce:
libglfw3 - portable library for OpenGL, window and input (libraries)
Chodziło o tą wersję poniżej?
Debian Jessie śro wrz 24 21:26:23 localhost : / root ~> apt-cache policy libglfw3 libglfw3: Zainstalowana: (brak) Kandydująca: 3.0.4-1 Tabela wersji: 3.0.4-1 0 990 http://ftp.us.debian.org/debian/ testing/main amd64 Packages 500 http://ftp.us.debian.org/debian/ unstable/main amd64 Packages
Pozdro
;-)
Ostatnio edytowany przez Jacekalex (2014-09-24 21:30:05)
Offline
A no muszę kompilować, bo tego wymaga mi mój projekt, to znaczy korzystam z http://opengl-tutorial.org/ i nie wiadomo dlaczego, projekty z tamtąd (i mój własny stworzony na podstawie tamtego makefile) działają tylko na kompilowanym glfw3, jak daję ścieżkę do wgranego, to wywala błąd "#error: Api is not defined"
Offline
Maju napisał(-a):
natomiast glfw3 kompiluje się jak trzeba
No to solved. ;) Wrzuć z powrotem zamknięte sterowniki i używaj.
Offline
No nie solved, bo kompiluje się przy gnome 3.8 na nouveau (na zamkniętych nadal nic) na jessie, a na wheezy przy zamkniętych także nie działa (no bo przy otwartych się kompiluje, ale gnome ładuje się w trybieclassic). Albo muszę wgrać gnome 3.4 na jessie, albo nouveau z jessie na wheezy (a wtedy z kolei apt każe mi usunąć gnome)...
EDIT: a wiem o co ci chodzi. W sumie sprytne, ale chodzi o to, że przy każdej kompilacji mojego projektu glfw3 też musi się kompilować... Może dam tu projekt, to zobaczysz o co chodzi? :)
Ostatnio edytowany przez Maju (2014-09-24 21:55:39)
Offline
Co to jest ten /usr/lib/x86_64-linux-gnu/libGL.so u ciebie na zamkniętych?
ls -l /usr/lib/x86_64-linux-gnu/libGL.so
W repo ten plik jest w pakiecie libgl1-mesa-dev.
Offline
Albo mam zepsute apt, albo nie rozumiem jakiejś funkcji tego programu...
maju@debian:~$ sudo apt-get install libgl1-mesa-dev Czytanie list pakietów... Gotowe Budowanie drzewa zależności Odczyt informacji o stanie... Gotowe libgl1-mesa-dev jest już w najnowszej wersji. 0 aktualizowanych, 0 nowo instalowanych, 0 usuwanych i 0 nieaktualizowanych. maju@debian:~$ ls /usr/lib/x86_64-linux-gnu/ |grep libG libGLEWmx.so.1.7 libGLEWmx.so.1.7.0 libGLEW.so libGLEW.so.1.7 libGLEW.so.1.7.0 libGLU.a libGLU.so libGLU.so.1 libGLU.so.1.3.08005 maju@debian:~$
Instalowałem i reinstalowałem ten pakiet z 10 razy...
EDIT: Ooo, coraz ciekawiej...
maju@debian:~/Pobrane/glfw-3.0.4$ ls /usr/lib/x86_64-linux-gnu/ |grep libGL libGLEWmx.so.1.7 libGLEWmx.so.1.7.0 libGLEW.so libGLEW.so.1.7 libGLEW.so.1.7.0 libGL.so libGLU.a libGLU.so libGLU.so.1 libGLU.so.1.3.08005 maju@debian:~/Pobrane/glfw-3.0.4$ make [ 36%] Built target glfw make[2]: *** Brak reguł do zrobienia obiektu `/usr/lib/x86_64-linux-gnu/libGL.so', wymaganego przez `examples/boing'. Stop. make[1]: *** [examples/CMakeFiles/boing.dir/all] Błąd 2 make: *** [all] Błąd 2 maju@debian:~/Pobrane/glfw-3.0.4$
Ostatnio edytowany przez Maju (2014-09-24 22:04:37)
Offline
No dobra, ale daj wynik tamtego polecenia żeby zobaczyć gdzie ten libGL.so linkuje dalej.
Offline
A ten libGL.so.1 to z zamkniętych sterowników czy mesowy? Jak z zamkniętych to spróbuj do mesowego podlinkować.
Offline
1046
Ostatnio edytowany przez uzytkownikubunt (2016-12-01 00:58:18)
Offline
Ok, ArnVaker naprowadził mnie na dobry trop, zauważyłem, że ten libGL.so.1 nie istnieje, więc zacząłem grzebać w pakietach i okazało się, że po prostu instalacja sterowników nvidii skasowała mi ten plik, a ja reinstalowałem tylko pakiet libgl1-mesa-dev nie zwracając uwagi na libgl1-mesa-glx w którym ów plik się znajdował. W sumie bardzo głupi błąd, ale jak dotąd nie wiedziałem, jak sprawdzić, czy i gdzie plik jest linkowany i nawet nie przyszło mi to do głowy :) Dzięki wielkie panowie, solved
Offline
Maju napisał(-a):
A no muszę kompilować, bo tego wymaga mi mój projekt, to znaczy korzystam z http://opengl-tutorial.org/ i nie wiadomo dlaczego, projekty z tamtąd (i mój własny stworzony na podstawie tamtego makefile) działają tylko na kompilowanym glfw3, jak daję ścieżkę do wgranego, to wywala błąd "#error: Api is not defined"
Bo nie zainstalowałeś plików nagłówkowych:
libglfw3-dev - portable library for OpenGL, window and input (development files)
Do kompilacji własnych projektów powinno radykalnie pomóc.
Do kompilacji zawsze są potrzebne pliki nagłówkowe, w Debianie nazywają się:
{nazwa-paczki}-dev
Ostatnio edytowany przez Jacekalex (2014-09-24 22:29:59)
Offline
To jedyny możliwy problem, że make szuka tych nagłówków nie tam, gdzie system je umieszcza domyślnie, w takim przypadku czasem trzeba poprawić Makefile, albo podać ścieżkę jako argument skrypta korzystającego z autoconfa (np configure), o ile przewidziano w nim podobną opcję.
Ostatnio edytowany przez Jacekalex (2014-09-24 22:33:28)
Offline