Każdy szanujący się programista ma jakiś swój zestaw przykładów czy zestawów ćwiczeń lub innych plików do szybkiego testowania tworzonego kodu. Osobiście mam utworzone katalogi dla jedno-plikowych programików. Dla przykładu w katalogu Exer_C trzymam pliki z kodem źródłowych w charakterze zestawu ćwiczeń lub co ważniejsze przykłady trzymam w katalogu Samples_C – końcówka to oczywiście określa typ języka w tym wypadku ANSI C. O ile w przypadku pracy z edytorem tekstu typu Sublime Text czy Vim nie ma problemu z kompilacją czy uruchamianiem pojedyńczych plików to przy projektach w IDE sprawa nie wygłąda już tak prosto. Oczywiście tworzenie projektu dla każdego pojedyńczego pliku jest wyjątkowo nieefetykwne a możliwości IDE są deleko bardziej rozwinięte od chociażby najbardziej rozbudowanego edytora ( no może poza Vim 😉 ) Poniżej przedstawię jak rozwiązać problem z konfiguracją projektu obejmującego zestaw pojedyńczych plików źródłowych. Tak aby w miarę łatwo można było na nich pracować wykonując kompilację, debugowanie i uruchomianie pojedyńczych plików.
Podczas aktualizacji systemu z OS X Lion do Mavericks lub Yosemite napotkałem problem podczas debugowania w środowisku Eclipse C/C++. Pierwsza kwestia dotyczyła tego, że po aktualizacji nie miałem już GDB w systemie a po jego instalacji pojawił się problem z certyfikatami, np. komunikat: „Unable to find Mach task port for process” . Poniżej przedstawiam krok po kroku rozwiązanie owego problemu.
W momencie kiedy nasz projekt jest już gotowy w programie Final Cut Pro X pozostaje nam wyeskportowanie go do jakiegoś polularnego formatu, najczęściej mp4 ( z wykorzystaniem kodeka H.264 ). Niestety podczas kodowania mogą wystąpić problemy i proces zostaje przerwany. Dostajemy komunikat w stylu: „Getting error message in Final Cut Pro X for frame 13142 when sharing” lub „Quick Time Error 50”. W sieci dostępne są różne rozwiązania ale nie każde może zakończyć się sukcesem.
Jeśli mamy jakieś stare pliki tekstowe zapisane w „windowsowym” edytorze to może się okazać, że są to pliki zapisane jeszcze w starym systemie kodowania znaków. Aktualnie standardem kodowania znaków jest UTF-8, jednak może się zdarzyć, że twoje stare pliki zostały zapisane w formacie CP1250 lub ISO 8859-2 ( ISO Latin 2 ). Tak więc otwarcie takiego pliku na współczesnych systemach operacyjnych z rodziny OSX / Linux / Unix spowoduje iż na ekranie zobaczymy sporo tzw. krzaczków – gdyż domyślnie taki plik będzie odczytany w standardzie UTF-8.
Z uwagi na to iż, aktualnie ( do póki nie sprzedam A1278 ) posiadam dwa modele Macbooków postanowiłem zrobić krótki test a w zasadzie porównanie obu modeli. Co ciekawe zrezygnowałem z MacBooka A1278 z 8GB RAM i dyskiem SSD na korzyść Macbooka Air A1304 z jedynie 2GB RAM i dyskiem talerzowym ( 1.8″ 4200 RPM ). Z uwagi na to iż pracuję na desktopie mac mini, który do moich prac w zupełności wystarczy to jako dodatkowy komputer wybrałem właśnie MacBooka A1304 z uwagi na większą mobilność. Domyślnie jednak dysk HDD zostanie zamieniony na SSD z uwagi na to iż fabrycznie montowany dysk jest niemiłosiernie wolny ( jest to ten sam model, który był montowany w ipodach ). OS X Maverick z takim dyskiem to dość kontrowersyjny pomysł nie wspominając już o 2GB RAM. Trzeba pamiętać, że OS X ma ogromne wymagania co do pamięci RAM o ile taki Linux Mint zadowoli się nawet 1GB RAM a na 2GB RAM odwdzięczy się nam płynną i bardzo komfortową pracą ( nawet na wolnym HDD ) to dla OS X minimalną wartością będzie 4GB RAM ( Maverick ).
Jeśli szukasz darmowego edytora, który spełniałby wiele kryteriów w kontekście pracy programisty to właśnie Vim jest dla Ciebie !
To, że jest to edytor działający w trybie tekstowym wcale nie jest jego wadą ( jest też wersją „graficzna” gvim ) gdyż jest niezwykle szybki a do tego występuję praktycznie na każdej platformie. W systemach Unixowych jest standardowym edytorem ( Linux, BSD, OS X ) są oczywiście też wersje dla systemu Windows jak i dla wielu egzotycznych platform. To duża zaleta, gdyż nie jesteś uzależniony od platformy na której aktualnie pracujesz. O pracy zdalnej za pośrednictwem konsoli nawet nie wspominam, bo tam trudno wyobrazić sobie coś lepszego od Vima ( jedyny konkurent to w zasadzie Emacs ). Umiejętne korzystanie z Vima to przede wszystkim znajomość komend tekstowych i kombinacji klawiszy. Vim jest całkowicie elastyczny, można go dostosować do własnych potrzeb, ma ogromną ilość pluginów i opcji, dzięki którym może być pełnoprawnym IDE.
Jeśli instalujemy jakąkolwiek dystrybucje Linuxa w środowisku wirtualnej maszyny za pośrednictwem programu VirtualBox, po instalacji pojawia się problem ze zmianą rozdzielczości. Zaraz po instalacji rozdzielczość w naszym środowisku graficznym jest ustalana na dość niską np. 640×480 lub 800×600. Co gorsze, również w opcjach ustawień zmiany rozdzielczości nie możemy jej zwiększyć na natywną dla naszego ekranu.
Midnight Commander to wieloplatformowy tekstowy menadżer plików działający w konsoli systemu. Jest bardzo podobny do kultowego niegdyś programu dla systemu MS-DOS Norton Commander, na którym wzorowali się także twórcy programu Total Commander dla systemu Windows. Instalacja na systemie OS X jest trywialna, wymagany jest tylko pakiet macports. Opis instalacji został opisany przeze mnie w odrębnym wpisie – wpisz w wyszukiwarkę mor.pl frazę: „instalacja macports”. Tam też jest podany przykład instalacji Midnight Commandera.
Continue reading
Poniżej przedstawiam opis instalacji systemu Linux ( dystrybucja MINT ), która została wykonana na komputerze Macbook Air A1304. Dystrybucja Mint wywodzi się z Ubuntu, które z kolei wywodzi się z Debiana. Wybrałem MINTa z uwagi na to, iż po instalacji Ubuntu 14.04 LTS system po kilku minutach zawieszał się. Co ciekawe w wersji LIVE takich „efektów” nie zauważyłem. Natomiast MINT nie sprawiał żadnych kłopotów poza kwestią sterowników WIFI a także nieaktywnymi przyciskami funkcyjnymi do zmiany podświetlania ekranu ( po zmianie sterownika na te od firmy Nvidia ). Oczywiście rozwiązanie tych problemów również przedstawię w poniższym opisie.
Continue reading
Istnieje ogromna baza oprogramowania typu open source, czyli oprogramowanie z dostępem do źródeł. Dzięki dostępności źródeł programy można kompilować na róźne systemy operacyjne: Linux, Unix, Windows i oczywiście OS X. Aby ułatwić proces kompilacji, instalacji i aktualizacji tego typu programów dla systemu OS X został utworzony projekt MacPorts. Aplikacja MacPorts ( a w zasadzie program o krótkiej nazwie: port ) w prosty i zautomatyzowany sposób zainstaluje nam wybrany przez nas program.
Continue reading