{"id":36880,"date":"2025-12-24T11:40:57","date_gmt":"2025-12-24T08:40:57","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=36880"},"modified":"2025-12-24T11:40:57","modified_gmt":"2025-12-24T08:40:57","slug":"ubuntu-14-04-uzerine-go-1-6-kurulumu-adim-adim-kapsamli-rehber","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-go-1-6-kurulumu-adim-adim-kapsamli-rehber\/","title":{"rendered":"Ubuntu 14.04 \u00dczerine Go 1.6 Kurulumu: Ad\u0131m Ad\u0131m Kapsaml\u0131 Rehber"},"content":{"rendered":"<p><body><\/p>\n<h2>Ubuntu 14.04 \u00dczerine Go 1.6 Kurulumu: Ad\u0131m Ad\u0131m Kapsaml\u0131 Rehber<\/h2>\n<p>Go (genellikle Golang olarak da bilinir), Google taraf\u0131ndan geli\u015ftirilen a\u00e7\u0131k kaynakl\u0131, statik tipli, derlenmi\u015f bir programlama dilidir. E\u015fzamanl\u0131l\u0131k (concurrency) \u00f6zellikleri, performans\u0131 ve geli\u015ftirici verimlili\u011fine odaklanmas\u0131yla modern yaz\u0131l\u0131m geli\u015ftirmede kendine \u00f6nemli bir yer edinmi\u015ftir. Sistem programlamadan web servislerine, mikroservislerden komut sat\u0131r\u0131 ara\u00e7lar\u0131na kadar geni\u015f bir kullan\u0131m alan\u0131na sahiptir. Bu makalede, \u00f6zellikle belirli bir proje veya uyumluluk gereksinimi nedeniyle Go&#8217;nun daha eski bir s\u00fcr\u00fcm\u00fc olan 1.6&#8217;y\u0131, yine eski ancak hala belirli sunucu ortamlar\u0131nda kar\u015f\u0131la\u015f\u0131labilen Ubuntu 14.04 i\u015fletim sistemi \u00fczerine nas\u0131l kuraca\u011f\u0131n\u0131z\u0131 ad\u0131m ad\u0131m, detayl\u0131 bir \u015fekilde a\u00e7\u0131klayaca\u011f\u0131z.<\/p>\n<p>Ubuntu 14.04, &#8220;Trusty Tahr&#8221; kod ad\u0131yla bilinen ve Nisan 2014&#8217;te yay\u0131nlanm\u0131\u015f bir LTS (Uzun S\u00fcreli Destek) s\u00fcr\u00fcm\u00fcd\u00fcr. Destek \u00f6mr\u00fc sona ermi\u015f olsa da, baz\u0131 kurumsal veya eski sistemlerde hala aktif olarak kullan\u0131l\u0131yor olabilir. Benzer \u015fekilde, Go 1.6 da \u015eubat 2016&#8217;da yay\u0131nlanm\u0131\u015f ve o d\u00f6nemde bir\u00e7ok yenilik getirmi\u015f olsa da, g\u00fcn\u00fcm\u00fczde Go&#8217;nun \u00e7ok daha yeni s\u00fcr\u00fcmleri mevcuttur. Ancak belirli bir projenin ba\u011f\u0131ml\u0131l\u0131klar\u0131, belirli bir Go s\u00fcr\u00fcm\u00fcn\u00fcn kararl\u0131l\u0131\u011f\u0131na olan g\u00fcven veya eski bir geli\u015ftirme ortam\u0131n\u0131 yeniden olu\u015fturma ihtiyac\u0131 gibi nedenlerle bu \u00f6zel kombinasyonu kurman\u0131z gerekebilir. Bu rehber, size bu spesifik kurulum s\u00fcrecinde rehberlik edecek ve olas\u0131 sorunlar\u0131n \u00f6n\u00fcne ge\u00e7menize yard\u0131mc\u0131 olacakt\u0131r.<\/p>\n<p>Bu makalede ele alaca\u011f\u0131m\u0131z konular \u015funlard\u0131r:<br \/>\n*   Go 1.6 ve Ubuntu 14.04 kombinasyonunu neden tercih etti\u011fimize dair k\u0131sa bir ba\u011flam.<br \/>\n*   Kurulum \u00f6ncesi gerekli \u00f6n haz\u0131rl\u0131klar ve sistem g\u00fcncellemeleri.<br \/>\n*   Go 1.6&#8217;n\u0131n resmi kaynaklardan indirilmesi.<br \/>\n*   \u0130ndirilen ar\u015fivin sistemde uygun bir yere \u00e7\u0131kar\u0131lmas\u0131.<br \/>\n*   Go \u00e7al\u0131\u015fma ortam\u0131 i\u00e7in gerekli ortam de\u011fi\u015fkenlerinin (GOROOT, GOPATH, PATH) kal\u0131c\u0131 olarak yap\u0131land\u0131r\u0131lmas\u0131.<br \/>\n*   Kurulumun do\u011frulanmas\u0131 ve Go versiyonunun kontrol edilmesi.<br \/>\n*   Basit bir &#8220;Merhaba D\u00fcnya!&#8221; program\u0131 ile Go geli\u015ftirme ortam\u0131n\u0131n test edilmesi.<br \/>\n*   Olas\u0131 sorun giderme ipu\u00e7lar\u0131 ve ek bilgiler.<\/p>\n<p>Bu ad\u0131mlar\u0131 takip ederek, Ubuntu 14.04 sisteminizde Go 1.6&#8217;y\u0131 ba\u015far\u0131yla kuracak ve Go ile programlamaya ba\u015flamak i\u00e7in haz\u0131r bir ortama sahip olacaks\u0131n\u0131z.<\/p>\n<h3>1. Neden Go 1.6 ve Ubuntu 14.04?<\/h3>\n<p>Modern yaz\u0131l\u0131m geli\u015ftirme d\u00fcnyas\u0131nda s\u00fcrekli yeni versiyonlar ve teknolojiler ortaya \u00e7\u0131karken, Go 1.6 ve Ubuntu 14.04 gibi eski s\u00fcr\u00fcmleri hedefleyen bir kurulum rehberi haz\u0131rlaman\u0131n \u00f6zel nedenleri olabilir. Bu b\u00f6l\u00fcm, bu spesifik kombinasyonu tercih etme motivasyonlar\u0131n\u0131 anlaman\u0131za yard\u0131mc\u0131 olacakt\u0131r.<\/p>\n<h4>1.1. Go 1.6&#8217;y\u0131 Tercih Etme Nedenleri<\/h4>\n<p>Go dili, h\u0131zl\u0131 geli\u015ftirme d\u00f6ng\u00fcleri, y\u00fcksek performans ve e\u015fzamanl\u0131l\u0131k yetenekleri ile \u00f6ne \u00e7\u0131kar. Her yeni s\u00fcr\u00fcm, dilin yeteneklerini geni\u015fletir, performans\u0131 art\u0131r\u0131r ve mevcut hatalar\u0131 d\u00fczeltir. Ancak, baz\u0131 durumlarda eski bir Go s\u00fcr\u00fcm\u00fcn\u00fc kullanmak zorunlu veya tercih edilebilir olabilir:<\/p>\n<p>*   <strong>Eski Projelerin Bak\u0131m\u0131:<\/strong> Mevcut bir projenin Go 1.6 ile geli\u015ftirilmi\u015f olmas\u0131 ve daha yeni bir Go s\u00fcr\u00fcm\u00fcne ge\u00e7i\u015fin \u00f6nemli yeniden yazma veya uyumluluk sorunlar\u0131na yol a\u00e7mas\u0131 durumunda, projenin orijinal ortam\u0131n\u0131 korumak en g\u00fcvenli yakla\u015f\u0131m olabilir. \u00d6zellikle b\u00fcy\u00fck ve karma\u015f\u0131k kod tabanlar\u0131nda bu t\u00fcr ge\u00e7i\u015fler maliyetli ve riskli olabilir.<br \/>\n*   <strong>Ba\u011f\u0131ml\u0131l\u0131k Uyumlulu\u011fu:<\/strong> Baz\u0131 \u00fc\u00e7\u00fcnc\u00fc taraf k\u00fct\u00fcphaneler veya \u00e7er\u00e7eveler, belirli Go s\u00fcr\u00fcmleriyle daha iyi \u00e7al\u0131\u015fabilir veya sadece eski s\u00fcr\u00fcmleri destekleyebilir. Bu t\u00fcr ba\u011f\u0131ml\u0131l\u0131klar\u0131 olan projelerde, uyumluluk sorunlar\u0131n\u0131 \u00f6nlemek i\u00e7in Go 1.6&#8217;y\u0131 kullanmak gerekebilir.<br \/>\n*   <strong>Belirli Davran\u0131\u015flar\u0131n Korunmas\u0131:<\/strong> Go&#8217;nun farkl\u0131 s\u00fcr\u00fcmleri aras\u0131nda baz\u0131 k\u00fc\u00e7\u00fck dil veya \u00e7al\u0131\u015fma zaman\u0131 davran\u0131\u015f farkl\u0131l\u0131klar\u0131 olabilir. Nadiren de olsa, bir projenin do\u011fru \u015fekilde \u00e7al\u0131\u015fmas\u0131 i\u00e7in Go 1.6&#8217;n\u0131n spesifik davran\u0131\u015flar\u0131na ba\u011f\u0131ml\u0131 olmas\u0131 m\u00fcmk\u00fcnd\u00fcr.<br \/>\n*   <strong>E\u011fitim veya Tarihsel Analiz:<\/strong> Go dilinin geli\u015fimini anlamak veya belirli bir d\u00f6nemdeki kod tabanlar\u0131n\u0131 incelemek isteyen \u00f6\u011frenciler veya ara\u015ft\u0131rmac\u0131lar i\u00e7in Go 1.6&#8217;n\u0131n kurulumu faydal\u0131 olabilir.<\/p>\n<p>Go 1.6, o d\u00f6nemde Go&#8217;nun en \u00f6nemli \u00f6zelliklerinden biri olan HTTP\/2 deste\u011fi, bloklar aras\u0131 optimizasyonlar ve derleyici iyile\u015ftirmeleri gibi \u00f6nemli yenilikler getirmi\u015fti. Bu nedenle, kendi d\u00f6neminde olduk\u00e7a g\u00fc\u00e7l\u00fc ve kararl\u0131 bir s\u00fcr\u00fcmd\u00fc.<\/p>\n<h4>1.2. Ubuntu 14.04&#8217;\u00fc Tercih Etme Nedenleri<\/h4>\n<p>Ubuntu 14.04, Nisan 2014&#8217;te piyasaya s\u00fcr\u00fclen bir LTS (Long Term Support &#8211; Uzun S\u00fcreli Destek) s\u00fcr\u00fcm\u00fcd\u00fcr. Destek s\u00fcresi sona ermi\u015f olmas\u0131na ra\u011fmen, hala belirli ortamlarda kar\u015f\u0131la\u015f\u0131labilecek bir i\u015fletim sistemidir:<\/p>\n<p>*   <strong>Eski Sunucu Ortamlar\u0131:<\/strong> Baz\u0131 kurumsal veya eski altyap\u0131lar, belirli bir kararl\u0131l\u0131k seviyesine ula\u015ft\u0131ktan sonra i\u015fletim sistemi g\u00fcncellemelerini nadiren yaparlar. Bu t\u00fcr sunucularda \u00e7al\u0131\u015fan uygulamalar i\u00e7in yeni bir geli\u015ftirme veya bak\u0131m gerekti\u011finde, mevcut i\u015fletim sistemi \u00fczerinde \u00e7al\u0131\u015fmak gerekebilir.<br \/>\n*   <strong>Donan\u0131m Uyumlulu\u011fu:<\/strong> Baz\u0131 eski donan\u0131mlar, yeni i\u015fletim sistemi s\u00fcr\u00fcmleriyle tam uyumlu olmayabilir veya \u00f6zel s\u00fcr\u00fcc\u00fc gereksinimleri olabilir. Bu durumlarda, eski bir i\u015fletim sistemi s\u00fcr\u00fcm\u00fcn\u00fc kullanmaya devam etmek daha pratik olabilir.<br \/>\n*   <strong>Maliyet K\u0131s\u0131tlamalar\u0131:<\/strong> \u0130\u015fletim sistemi y\u00fckseltmeleri veya yeni sunucu tedariki, baz\u0131 organizasyonlar i\u00e7in maliyetli veya zaman al\u0131c\u0131 olabilir. Bu t\u00fcr k\u0131s\u0131tlamalar alt\u0131nda, mevcut altyap\u0131y\u0131 kullanmaya devam etmek tercih edilebilir.<br \/>\n*   <strong>Sanalla\u015ft\u0131rma Ortamlar\u0131:<\/strong> Geli\u015ftiriciler, eski bir \u00fcretim ortam\u0131n\u0131 taklit etmek veya belirli bir hata durumunu yeniden \u00fcretmek i\u00e7in Ubuntu 14.04 gibi eski i\u015fletim sistemi s\u00fcr\u00fcmlerini sanal makinelerde kullanabilirler.<\/p>\n<p>Bu makale, bu spesifik ihtiya\u00e7lar\u0131 olan kullan\u0131c\u0131lara y\u00f6nelik olarak haz\u0131rlanm\u0131\u015ft\u0131r. Modern sistemlerde Go&#8217;nun en g\u00fcncel s\u00fcr\u00fcm\u00fcn\u00fc ve g\u00fcncel bir i\u015fletim sistemini kullanmak genellikle tercih edilen yakla\u015f\u0131md\u0131r. Ancak belirtilen senaryolar i\u00e7in bu rehber paha bi\u00e7ilmez bir kaynak olacakt\u0131r.<\/p>\n<h3>2. Ubuntu 14.04 Ortam\u0131n\u0131n Haz\u0131rlanmas\u0131<\/h3>\n<p>Go 1.6 kurulumuna ba\u015flamadan \u00f6nce, Ubuntu 14.04 sisteminizin g\u00fcncel oldu\u011fundan ve gerekli ara\u00e7lara sahip oldu\u011fundan emin olmal\u0131y\u0131z. Bu ad\u0131mlar, sorunsuz bir kurulum s\u00fcreci i\u00e7in temel te\u015fkil eder.<\/p>\n<h4>2.1. Sistem G\u00fcncellemesi<\/h4>\n<p>\u00d6ncelikle, sisteminizdeki paket listelerini g\u00fcncellemek ve mevcut paketleri en son s\u00fcr\u00fcmlerine y\u00fckseltmek iyi bir uygulamad\u0131r. Bu, potansiyel ba\u011f\u0131ml\u0131l\u0131k sorunlar\u0131n\u0131 \u00f6nlemeye yard\u0131mc\u0131 olur. Terminali a\u00e7\u0131n (Ctrl+Alt+T) ve a\u015fa\u011f\u0131daki komutlar\u0131 \u00e7al\u0131\u015ft\u0131r\u0131n:<\/p>\n<pre><code class=\"language-bash\">sudo apt-get update\nsudo apt-get upgrade -y<\/code><\/pre>\n<p>*   <code>sudo apt-get update<\/code>: Bu komut, yerel paket indeksinizi Ubuntu&#8217;nun resmi depolar\u0131ndaki en son bilgilerle senkronize eder. Bu, sisteminizin hangi paketlerin y\u00fckseltilebilece\u011fini ve hangi yeni paketlerin mevcut oldu\u011funu bilmesini sa\u011flar.<br \/>\n*   <code>sudo apt-get upgrade -y<\/code>: Bu komut, sisteminizdeki t\u00fcm y\u00fckl\u00fc paketleri, <code>update<\/code> komutuyla g\u00fcncellenen indeks bilgilerine g\u00f6re en son s\u00fcr\u00fcmlerine y\u00fckseltir. <code>-y<\/code> bayra\u011f\u0131, t\u00fcm onay sorular\u0131na otomatik olarak &#8220;evet&#8221; yan\u0131t\u0131 vermenizi sa\u011flar, bu da y\u00fckseltme i\u015flemini kesintisiz hale getirir.<\/p>\n<p>Bu i\u015flem, internet ba\u011flant\u0131n\u0131z\u0131n h\u0131z\u0131na ve sisteminizdeki g\u00fcncellenmesi gereken paket say\u0131s\u0131na ba\u011fl\u0131 olarak biraz zaman alabilir.<\/p>\n<h4>2.2. Gerekli Ara\u00e7lar\u0131n Kontrol\u00fc<\/h4>\n<p>Go&#8217;yu indirmek i\u00e7in <code>wget<\/code> veya <code>curl<\/code> gibi bir komut sat\u0131r\u0131 indirme arac\u0131na ihtiyac\u0131m\u0131z olacak. Ubuntu 14.04 genellikle bu ara\u00e7larla birlikte gelir, ancak yine de kontrol etmek veya y\u00fcklemek faydal\u0131 olabilir:<\/p>\n<pre><code class=\"language-bash\">which wget\nwhich curl<\/code><\/pre>\n<p>E\u011fer bu komutlar bir \u00e7\u0131kt\u0131 d\u00f6nd\u00fcrmezse (yani ara\u00e7lar y\u00fckl\u00fc de\u011filse), a\u015fa\u011f\u0131daki komutlarla y\u00fckleyebilirsiniz:<\/p>\n<pre><code class=\"language-bash\">sudo apt-get install wget -y\nsudo apt-get install curl -y<\/code><\/pre>\n<p>Bu ara\u00e7lar, Go 1.6 ar\u015fivini internetten kolayca indirmenizi sa\u011flayacakt\u0131r. Sisteminiz art\u0131k Go kurulumuna haz\u0131rd\u0131r.<\/p>\n<h3>3. Go 1.6 \u0130ndirme \u0130\u015flemi<\/h3>\n<p>Go&#8217;yu resmi kaynaklardan indirmek, g\u00fcvenli ve sorunsuz bir kurulum i\u00e7in en iyi yoldur. Go&#8217;nun eski s\u00fcr\u00fcmleri, Go&#8217;nun resmi web sitesindeki ar\u015fiv b\u00f6l\u00fcm\u00fcnde bulunur.<\/p>\n<h4>3.1. Go 1.6 Ar\u015fivini Bulma<\/h4>\n<p>Go&#8217;nun resmi indirme sayfas\u0131 <code>https:\/\/golang.org\/dl\/<\/code> adresidir. Bu sayfada, Go&#8217;nun t\u00fcm s\u00fcr\u00fcmlerinin indirme ba\u011flant\u0131lar\u0131 bulunur. Go 1.6 i\u00e7in Linux 64-bit s\u00fcr\u00fcm\u00fcn\u00fc arayaca\u011f\u0131z. Genellikle dosya ad\u0131 <code>go1.6.linux-amd64.tar.gz<\/code> \u015feklindedir. Do\u011fru ba\u011flant\u0131y\u0131 bulmak i\u00e7in bu sayfay\u0131 dikkatlice incelemelisiniz.<\/p>\n<p>Bu makalenin yaz\u0131ld\u0131\u011f\u0131 tarihte, Go 1.6&#8217;n\u0131n Linux 64-bit i\u00e7in do\u011frudan indirme ba\u011flant\u0131s\u0131 \u015fuydu:<br \/>\n<code>https:\/\/golang.org\/dl\/go1.6.linux-amd64.tar.gz<\/code><\/p>\n<p><strong>\u00d6nemli Not:<\/strong> Gelecekte bu ba\u011flant\u0131 de\u011fi\u015febilir. Her zaman Go&#8217;nun resmi indirme sayfas\u0131n\u0131 (golang.org\/dl) kontrol etmeniz \u00f6nerilir.<\/p>\n<h4>3.2. Go 1.6&#8217;y\u0131 \u0130ndirme<\/h4>\n<p>\u015eimdi bu ba\u011flant\u0131y\u0131 kullanarak Go 1.6 ar\u015fivini sistemimize indirelim. Genellikle ge\u00e7ici dosyalar i\u00e7in <code>\/tmp<\/code> dizini veya kullan\u0131c\u0131n\u0131n <code>~\/Downloads<\/code> dizini uygun bir yerdir. Biz <code>\/tmp<\/code> dizinini kullanaca\u011f\u0131z.<\/p>\n<p>Terminalde a\u015fa\u011f\u0131daki komutu \u00e7al\u0131\u015ft\u0131r\u0131n:<\/p>\n<pre><code class=\"language-bash\">cd \/tmp\nwget https:\/\/golang.org\/dl\/go1.6.linux-amd64.tar.gz<\/code><\/pre>\n<p>*   <code>cd \/tmp<\/code>: Bu komut, ge\u00e7erli \u00e7al\u0131\u015fma dizininizi <code>\/tmp<\/code> dizinine de\u011fi\u015ftirir. Bu dizin, yeniden ba\u015flatmada i\u00e7eri\u011fi silinen ge\u00e7ici dosyalar i\u00e7in idealdir.<br \/>\n*   <code>wget https:\/\/golang.org\/dl\/go1.6.linux-amd64.tar.gz<\/code>: Bu komut, belirtilen URL&#8217;den Go 1.6 ar\u015fiv dosyas\u0131n\u0131 indirir ve <code>\/tmp<\/code> dizinine kaydeder.<\/p>\n<p>\u0130ndirme i\u015flemi, internet ba\u011flant\u0131n\u0131z\u0131n h\u0131z\u0131na ba\u011fl\u0131 olarak birka\u00e7 saniye veya dakika s\u00fcrebilir. \u0130ndirme tamamland\u0131\u011f\u0131nda, <code>\/tmp<\/code> dizininde <code>go1.6.linux-amd64.tar.gz<\/code> adl\u0131 bir dosya g\u00f6rmelisiniz. Bunu <code>ls<\/code> komutu ile kontrol edebilirsiniz:<\/p>\n<pre><code class=\"language-bash\">ls \/tmp\/go1.6.linux-amd64.tar.gz<\/code><\/pre>\n<p>E\u011fer dosya listeleniyorsa, indirme i\u015flemi ba\u015far\u0131yla tamamlanm\u0131\u015ft\u0131r.<\/p>\n<h3>4. Go Ar\u015fivini \u00c7\u0131kartma ve Kurulum Yolu<\/h3>\n<p>\u0130ndirdi\u011fimiz Go ar\u015fivini sistemimizde uygun bir yere \u00e7\u0131karmam\u0131z gerekiyor. Go&#8217;nun geleneksel kurulum yolu <code>\/usr\/local<\/code> dizinidir. Bu dizin, i\u015fletim sistemi taraf\u0131ndan sa\u011flanan paketlerin d\u0131\u015f\u0131nda, yerel olarak y\u00fcklenen yaz\u0131l\u0131mlar i\u00e7in kullan\u0131l\u0131r.<\/p>\n<h4>4.1. Ar\u015fivi \u00c7\u0131karma<\/h4>\n<p>\u0130ndirilen <code>go1.6.linux-amd64.tar.gz<\/code> dosyas\u0131n\u0131 <code>\/usr\/local<\/code> dizinine \u00e7\u0131karmak i\u00e7in <code>tar<\/code> komutunu kullanaca\u011f\u0131z. Bu i\u015flem i\u00e7in y\u00f6netici (root) ayr\u0131cal\u0131klar\u0131na ihtiyac\u0131m\u0131z olacak, bu y\u00fczden <code>sudo<\/code> kullanaca\u011f\u0131z.<\/p>\n<p>Terminalde a\u015fa\u011f\u0131daki komutu \u00e7al\u0131\u015ft\u0131r\u0131n:<\/p>\n<pre><code class=\"language-bash\">sudo tar -C \/usr\/local -xzf \/tmp\/go1.6.linux-amd64.tar.gz<\/code><\/pre>\n<p>Bu komutun detaylar\u0131:<br \/>\n*   <code>sudo<\/code>: Komutu y\u00f6netici ayr\u0131cal\u0131klar\u0131yla \u00e7al\u0131\u015ft\u0131rmak i\u00e7in kullan\u0131l\u0131r. <code>\/usr\/local<\/code> dizinine yazma izni gereklidir.<br \/>\n*   <code>tar<\/code>: Ar\u015fiv dosyalar\u0131n\u0131 y\u00f6netmek i\u00e7in kullan\u0131lan bir Linux arac\u0131d\u0131r.<br \/>\n*   <code>-C \/usr\/local<\/code>: Bu bayrak, <code>tar<\/code> komutuna ar\u015fivin i\u00e7eri\u011fini <code>\/usr\/local<\/code> dizinine \u00e7\u0131karmas\u0131n\u0131 s\u00f6yler. E\u011fer bu dizin mevcut de\u011filse (ki Ubuntu&#8217;da genellikle mevcuttur), hata verebilir.<br \/>\n*   <code>-x<\/code>: Ar\u015fivden dosyalar\u0131 \u00e7\u0131karmak (extract) i\u00e7in kullan\u0131l\u0131r.<br \/>\n*   <code>-z<\/code>: Ar\u015fivin gzip ile s\u0131k\u0131\u015ft\u0131r\u0131ld\u0131\u011f\u0131n\u0131 belirtir ve a\u00e7ma i\u015flemi s\u0131ras\u0131nda s\u0131k\u0131\u015ft\u0131rmay\u0131 kald\u0131rmas\u0131n\u0131 sa\u011flar.<br \/>\n*   <code>-f \/tmp\/go1.6.linux-amd64.tar.gz<\/code>: \u0130\u015flem yap\u0131lacak ar\u015fiv dosyas\u0131n\u0131n yolunu belirtir.<\/p>\n<p>Bu komut tamamland\u0131\u011f\u0131nda, Go&#8217;nun t\u00fcm dosyalar\u0131 <code>\/usr\/local\/go<\/code> dizinine \u00e7\u0131kar\u0131lm\u0131\u015f olacakt\u0131r. Bu dizini kontrol edebilirsiniz:<\/p>\n<pre><code class=\"language-bash\">ls \/usr\/local\/go<\/code><\/pre>\n<p>Bu komutun \u00e7\u0131kt\u0131s\u0131nda <code>bin<\/code>, <code>pkg<\/code>, <code>src<\/code> gibi Go&#8217;ya ait dizinleri g\u00f6rmelisiniz. Bu, Go&#8217;nun ba\u015far\u0131yla \u00e7\u0131kar\u0131ld\u0131\u011f\u0131n\u0131 g\u00f6sterir.<\/p>\n<h4>4.2. Dizin \u0130zinlerini Ayarlama (\u0130ste\u011fe Ba\u011fl\u0131 ama \u00d6nerilir)<\/h4>\n<p>Go&#8217;yu <code>sudo<\/code> ile <code>\/usr\/local\/go<\/code> dizinine \u00e7\u0131kard\u0131\u011f\u0131m\u0131zda, bu dizinin ve i\u00e7eri\u011finin sahibi genellikle <code>root<\/code> kullan\u0131c\u0131s\u0131 olur. Go projeleri \u00fczerinde \u00e7al\u0131\u015f\u0131rken bazen bu dizine yazma iznine ihtiya\u00e7 duyulabilir (\u00f6rne\u011fin, baz\u0131 Go ara\u00e7lar\u0131 i\u00e7in). Bu nedenle, bu dizinin sahipli\u011fini kendi kullan\u0131c\u0131n\u0131za vermek iyi bir uygulamad\u0131r.<\/p>\n<pre><code class=\"language-bash\">sudo chown -R $USER:$USER \/usr\/local\/go<\/code><\/pre>\n<p>*   <code>sudo<\/code>: Y\u00f6netici ayr\u0131cal\u0131klar\u0131yla komutu \u00e7al\u0131\u015ft\u0131rma.<br \/>\n*   <code>chown<\/code>: Dosya ve dizin sahipli\u011fini de\u011fi\u015ftirmek i\u00e7in kullan\u0131l\u0131r (change owner).<br \/>\n*   <code>-R<\/code>: \u00d6zyinelemeli (recursive) olarak, yani dizinin kendisi ve t\u00fcm alt dizinleri ile dosyalar\u0131 i\u00e7in sahipli\u011fi de\u011fi\u015ftir.<br \/>\n*   <code>$USER:$USER<\/code>: <code>$USER<\/code> ortam de\u011fi\u015fkeni, mevcut oturum a\u00e7m\u0131\u015f kullan\u0131c\u0131n\u0131n ad\u0131n\u0131 i\u00e7erir. Bu komut, <code>\/usr\/local\/go<\/code> dizininin sahibini ve grubunu mevcut kullan\u0131c\u0131ya ayarlar. \u00d6rne\u011fin, kullan\u0131c\u0131 ad\u0131n\u0131z &#8220;kullaniciadi&#8221; ise, bu komut <code>kullaniciadi:kullaniciadi<\/code> olarak yorumlan\u0131r.<\/p>\n<p>Bu ad\u0131m, Go geli\u015ftirme s\u00fcrecinde olas\u0131 izin sorunlar\u0131n\u0131n \u00f6n\u00fcne ge\u00e7ecektir.<\/p>\n<h3>5. Ortam De\u011fi\u015fkenlerinin Yap\u0131land\u0131r\u0131lmas\u0131<\/h3>\n<p>Go&#8217;nun sisteminizde d\u00fczg\u00fcn \u00e7al\u0131\u015fabilmesi i\u00e7in baz\u0131 ortam de\u011fi\u015fkenlerinin ayarlanmas\u0131 kritik \u00f6neme sahiptir. Bu de\u011fi\u015fkenler, Go derleyicisinin ve ara\u00e7lar\u0131n\u0131n nerede bulunaca\u011f\u0131n\u0131, Go \u00e7al\u0131\u015fma alan\u0131n\u0131z\u0131n nerede oldu\u011funu ve sistemin Go komutlar\u0131n\u0131 nerede arayaca\u011f\u0131n\u0131 belirtir. Bu de\u011fi\u015fkenleri kal\u0131c\u0131 hale getirmek i\u00e7in kullan\u0131c\u0131 profil dosyan\u0131z\u0131 d\u00fczenleyece\u011fiz.<\/p>\n<h4>5.1. Gerekli Ortam De\u011fi\u015fkenleri<\/h4>\n<p>Go i\u00e7in \u00fc\u00e7 temel ortam de\u011fi\u015fkeni vard\u0131r:<\/p>\n<p>*   <strong><code>GOROOT<\/code><\/strong>: Go SDK&#8217;s\u0131n\u0131n y\u00fckl\u00fc oldu\u011fu dizini belirtir. Bizim durumumuzda bu <code>\/usr\/local\/go<\/code> olacakt\u0131r.<br \/>\n*   <strong><code>GOPATH<\/code><\/strong>: Go \u00e7al\u0131\u015fma alan\u0131n\u0131z\u0131n k\u00f6k dizinini belirtir. Bu, Go projelerinizin, ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131z\u0131n ve derlenmi\u015f ikili dosyalar\u0131n\u0131z\u0131n depolanaca\u011f\u0131 yerdir. Genellikle kullan\u0131c\u0131n\u0131n ana dizini alt\u0131nda bir <code>go<\/code> dizini olarak ayarlan\u0131r (\u00f6rn. <code>~\/go<\/code>).<br \/>\n*   <strong><code>PATH<\/code><\/strong>: \u0130\u015fletim sisteminin \u00e7al\u0131\u015ft\u0131r\u0131labilir komutlar\u0131 arad\u0131\u011f\u0131 dizinlerin listesidir. Go komutlar\u0131n\u0131n (\u00f6rn. <code>go<\/code>, <code>go build<\/code>, <code>go run<\/code>) terminalden eri\u015filebilir olmas\u0131 i\u00e7in <code>GOROOT\/bin<\/code> ve <code>GOPATH\/bin<\/code> dizinlerini <code>PATH<\/code> de\u011fi\u015fkenine eklememiz gerekir.<\/p>\n<h4>5.2. Ortam De\u011fi\u015fkenlerini Kal\u0131c\u0131 Olarak Ayarlama<\/h4>\n<p>Bu de\u011fi\u015fkenleri her terminal oturumunda manuel olarak ayarlamak yerine, kal\u0131c\u0131 hale getirmek en iyisidir. Ubuntu&#8217;da, kullan\u0131c\u0131ya \u00f6zel ortam de\u011fi\u015fkenlerini ayarlamak i\u00e7in genellikle <code>~\/.profile<\/code> veya <code>~\/.bashrc<\/code> dosyalar\u0131 kullan\u0131l\u0131r. <code>~\/.profile<\/code> dosyas\u0131, genellikle grafik oturum a\u00e7\u0131l\u0131\u015f\u0131nda ve kabuk oturumlar\u0131 i\u00e7in bir kez okunur, bu da Go ortam de\u011fi\u015fkenleri i\u00e7in uygun bir yerdir.<\/p>\n<p>Terminalde <code>~\/.profile<\/code> dosyas\u0131n\u0131 bir metin d\u00fczenleyici ile a\u00e7\u0131n. Nano, terminal tabanl\u0131 basit bir d\u00fczenleyicidir:<\/p>\n<pre><code class=\"language-bash\">nano ~\/.profile<\/code><\/pre>\n<p>Dosyan\u0131n sonuna a\u015fa\u011f\u0131daki sat\u0131rlar\u0131 ekleyin:<\/p>\n<pre><code class=\"language-bash\"># Go Environment Variables\nexport GOROOT=\/usr\/local\/go\nexport GOPATH=$HOME\/go\nexport PATH=$PATH:$GOROOT\/bin:$GOPATH\/bin<\/code><\/pre>\n<p>Bu sat\u0131rlar\u0131n a\u00e7\u0131klamas\u0131:<br \/>\n*   <code>export GOROOT=\/usr\/local\/go<\/code>: Go kurulum dizinini <code>GOROOT<\/code> de\u011fi\u015fkenine atar.<br \/>\n*   <code>export GOPATH=$HOME\/go<\/code>: Go \u00e7al\u0131\u015fma alan\u0131n\u0131n k\u00f6k dizinini kullan\u0131c\u0131n\u0131n ana dizini alt\u0131nda <code>go<\/code> olarak ayarlar. <code>$HOME<\/code> de\u011fi\u015fkeni, mevcut kullan\u0131c\u0131n\u0131n ana dizinini temsil eder (\u00f6rn. <code>\/home\/kullaniciadi<\/code>).<br \/>\n*   <code>export PATH=$PATH:$GOROOT\/bin:$GOPATH\/bin<\/code>: Mevcut <code>PATH<\/code> de\u011fi\u015fkenine (\u00f6nceki dizinleri koruyarak) <code>GOROOT\/bin<\/code> (Go ara\u00e7lar\u0131n\u0131n ikili dosyalar\u0131) ve <code>GOPATH\/bin<\/code> (kendi Go projelerinizin derlenmi\u015f ikili dosyalar\u0131) dizinlerini ekler. Bu, <code>go<\/code> komutunu ve kendi Go programlar\u0131n\u0131z\u0131 herhangi bir dizinden \u00e7al\u0131\u015ft\u0131rabilmenizi sa\u011flar.<\/p>\n<p>De\u011fi\u015fiklikleri kaydedin (Ctrl+O, Enter) ve Nano&#8217;dan \u00e7\u0131k\u0131n (Ctrl+X).<\/p>\n<h4>5.3. De\u011fi\u015fiklikleri Etkinle\u015ftirme<\/h4>\n<p><code>~\/.profile<\/code> dosyas\u0131nda yapt\u0131\u011f\u0131n\u0131z de\u011fi\u015fiklikler, yeni bir terminal oturumu a\u00e7ana kadar etkin olmaz. Mevcut terminal oturumunuzda bu de\u011fi\u015fiklikleri hemen etkinle\u015ftirmek i\u00e7in <code>source<\/code> komutunu kullan\u0131n:<\/p>\n<pre><code class=\"language-bash\">source ~\/.profile<\/code><\/pre>\n<p>Bu komut, <code>~\/.profile<\/code> dosyas\u0131ndaki komutlar\u0131 mevcut kabukta yeniden \u00e7al\u0131\u015ft\u0131r\u0131r ve ortam de\u011fi\u015fkenlerini ayarlar.<\/p>\n<h4>5.4. GOPATH Dizinini Olu\u015fturma<\/h4>\n<p><code>GOPATH<\/code> de\u011fi\u015fkenini ayarlad\u0131k, ancak bu dizinin fiziksel olarak var olmas\u0131 gerekiyor. E\u011fer <code>~\/go<\/code> dizini mevcut de\u011filse, Go ara\u00e7lar\u0131 baz\u0131 durumlarda hata verebilir. Bu dizini olu\u015ftural\u0131m:<\/p>\n<pre><code class=\"language-bash\">mkdir -p $HOME\/go<\/code><\/pre>\n<p>*   <code>mkdir -p<\/code>: Bu komut, belirtilen dizini (bu durumda <code>~\/go<\/code>) olu\u015fturur. <code>-p<\/code> bayra\u011f\u0131, e\u011fer \u00fcst dizinler de mevcut de\u011filse onlar\u0131 da olu\u015fturur ve dizin zaten varsa hata vermez.<\/p>\n<p>Art\u0131k Go ortam de\u011fi\u015fkenleriniz d\u00fczg\u00fcn bir \u015fekilde ayarlanm\u0131\u015f ve Go geli\u015ftirme i\u00e7in haz\u0131r hale getirilmi\u015ftir.<\/p>\n<h3>6. Kurulumun Do\u011frulanmas\u0131<\/h3>\n<p>Go 1.6&#8217;n\u0131n ba\u015far\u0131yla kuruldu\u011funu ve ortam de\u011fi\u015fkenlerinin do\u011fru bir \u015fekilde ayarland\u0131\u011f\u0131n\u0131 do\u011frulamak i\u00e7in birka\u00e7 basit komut \u00e7al\u0131\u015ft\u0131rabiliriz. Bu ad\u0131mlar, Go&#8217;nun sisteminizde beklendi\u011fi gibi \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan emin olman\u0131z\u0131 sa\u011flar.<\/p>\n<h4>6.1. Go Versiyonunu Kontrol Etme<\/h4>\n<p>Kurulumun en temel do\u011frulamas\u0131, <code>go version<\/code> komutunu \u00e7al\u0131\u015ft\u0131rmakt\u0131r. Bu komut, sistemde y\u00fckl\u00fc olan Go s\u00fcr\u00fcm\u00fcn\u00fc ve mimarisini g\u00f6sterir.<\/p>\n<p>Terminalde a\u015fa\u011f\u0131daki komutu \u00e7al\u0131\u015ft\u0131r\u0131n:<\/p>\n<pre><code class=\"language-bash\">go version<\/code><\/pre>\n<p>Beklenen \u00e7\u0131kt\u0131 \u015f\u00f6yle olmal\u0131d\u0131r:<\/p>\n<pre><code class=\"language-\">go version go1.6 linux\/amd64<\/code><\/pre>\n<p>E\u011fer bu \u00e7\u0131kt\u0131y\u0131 g\u00f6r\u00fcyorsan\u0131z, Go 1.6&#8217;n\u0131n ba\u015far\u0131yla y\u00fcklendi\u011fini ve <code>PATH<\/code> de\u011fi\u015fkeninizin do\u011fru bir \u015fekilde ayarland\u0131\u011f\u0131n\u0131 g\u00f6sterir, \u00e7\u00fcnk\u00fc <code>go<\/code> komutu sisteminiz taraf\u0131ndan bulunabilmi\u015ftir. E\u011fer <code>command not found<\/code> gibi bir hata al\u0131rsan\u0131z, <code>PATH<\/code> de\u011fi\u015fkeninizi veya <code>~\/.profile<\/code> dosyas\u0131ndaki ayarlar\u0131n\u0131z\u0131 kontrol etmeniz gerekebilir. <code>source ~\/.profile<\/code> komutunu tekrar \u00e7al\u0131\u015ft\u0131rd\u0131\u011f\u0131n\u0131zdan emin olun.<\/p>\n<h4>6.2. Go Ortam De\u011fi\u015fkenlerini Kontrol Etme<\/h4>\n<p>Go&#8217;nun kendi ortam de\u011fi\u015fkenlerini listelemek i\u00e7in <code>go env<\/code> komutunu kullanabiliriz. Bu, <code>GOROOT<\/code> ve <code>GOPATH<\/code> gibi de\u011fi\u015fkenlerin do\u011fru ayarlan\u0131p ayarlanmad\u0131\u011f\u0131n\u0131 kontrol etmek i\u00e7in faydal\u0131d\u0131r.<\/p>\n<p>Terminalde a\u015fa\u011f\u0131daki komutu \u00e7al\u0131\u015ft\u0131r\u0131n:<\/p>\n<pre><code class=\"language-bash\">go env<\/code><\/pre>\n<p>Bu komut, Go&#8217;nun kulland\u0131\u011f\u0131 t\u00fcm ortam de\u011fi\u015fkenlerini listeleyecektir. \u00c7\u0131kt\u0131da \u00f6zellikle \u015funlar\u0131 aramal\u0131s\u0131n\u0131z:<\/p>\n<pre><code class=\"language-\">GOARCH=\"amd64\"\nGOBIN=\"\"\nGOEXE=\"\"\nGOHOSTARCH=\"amd64\"\nGOHOSTOS=\"linux\"\nGOOS=\"linux\"\nGOPATH=\"\/home\/kullaniciadi\/go\"  # Kendi kullan\u0131c\u0131 ad\u0131n\u0131zla e\u015fle\u015fmeli\nGORACE=\"\"\nGOROOT=\"\/usr\/local\/go\"\nGOTOOLDIR=\"\/usr\/local\/go\/pkg\/tool\/linux_amd64\"\nGO15VENDOREXPERIMENT=\"1\"\nCC=\"gcc\"\nGOGCCFLAGS=\"-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=\/tmp\/go-build068945620=\/tmp\/go-build -gno-record-gcc-switches\"\nCXX=\"g++\"\nCGO_ENABLED=\"1\"<\/code><\/pre>\n<p>*   <strong><code>GOPATH<\/code><\/strong>: Bu \u00e7\u0131kt\u0131da <code>GOPATH<\/code> de\u011ferinin <code>~\/go<\/code> (veya tam yolu <code>\/home\/kullaniciadi\/go<\/code>) olarak ayarland\u0131\u011f\u0131ndan emin olun.<br \/>\n*   <strong><code>GOROOT<\/code><\/strong>: <code>GOROOT<\/code> de\u011ferinin <code>\/usr\/local\/go<\/code> olarak ayarland\u0131\u011f\u0131ndan emin olun.<\/p>\n<p>E\u011fer bu de\u011fi\u015fkenler beklendi\u011fi gibi g\u00f6r\u00fcn\u00fcyorsa, Go kurulumunuz ve ortam yap\u0131land\u0131rman\u0131z ba\u015far\u0131l\u0131 demektir.<\/p>\n<h3>7. \u0130lk Go Program\u0131: &#8220;Merhaba D\u00fcnya!&#8221;<\/h3>\n<p>Kurulumu do\u011frulad\u0131ktan sonra, Go geli\u015ftirme ortam\u0131n\u0131z\u0131n tam olarak \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan emin olmak i\u00e7in basit bir &#8220;Merhaba D\u00fcnya!&#8221; program\u0131 yaz\u0131p \u00e7al\u0131\u015ft\u0131ral\u0131m. Bu, Go derleyicisinin ve \u00e7al\u0131\u015fma zaman\u0131n\u0131n do\u011fru \u015fekilde i\u015flev g\u00f6rd\u00fc\u011f\u00fcn\u00fc test edecektir.<\/p>\n<h4>7.1. \u00c7al\u0131\u015fma Alan\u0131 ve Proje Dizini Olu\u015fturma<\/h4>\n<p>Go projeleri genellikle <code>GOPATH<\/code> dizini alt\u0131nda organize edilir. <code>GOPATH<\/code> alt\u0131nda <code>src<\/code> (kaynak kod), <code>pkg<\/code> (derlenmi\u015f paketler) ve <code>bin<\/code> (derlenmi\u015f y\u00fcr\u00fct\u00fclebilir dosyalar) ad\u0131nda \u00fc\u00e7 ana dizin bulunur. Projemizi <code>src<\/code> dizini alt\u0131na yerle\u015ftirece\u011fiz.<\/p>\n<pre><code class=\"language-bash\">mkdir -p $GOPATH\/src\/hello\ncd $GOPATH\/src\/hello<\/code><\/pre>\n<p>*   <code>mkdir -p $GOPATH\/src\/hello<\/code>: Bu komut, <code>GOPATH<\/code> i\u00e7inde <code>src<\/code> ad\u0131nda bir dizin, onun i\u00e7inde de <code>hello<\/code> ad\u0131nda bir proje dizini olu\u015fturur. <code>-p<\/code> bayra\u011f\u0131, \u00fcst dizinler mevcut de\u011filse onlar\u0131 da olu\u015fturur.<br \/>\n*   <code>cd $GOPATH\/src\/hello<\/code>: Bu komut, ge\u00e7erli \u00e7al\u0131\u015fma dizininizi yeni olu\u015fturdu\u011funuz <code>hello<\/code> proje dizinine de\u011fi\u015ftirir.<\/p>\n<h4>7.2. &#8220;Merhaba D\u00fcnya!&#8221; Kodunu Yazma<\/h4>\n<p>\u015eimdi <code>hello<\/code> dizini i\u00e7inde <code>main.go<\/code> ad\u0131nda bir dosya olu\u015ftural\u0131m ve i\u00e7ine basit bir Go kodu yazal\u0131m.<\/p>\n<pre><code class=\"language-bash\">nano main.go<\/code><\/pre>\n<p>A\u00e7\u0131lan edit\u00f6re a\u015fa\u011f\u0131daki kodu yap\u0131\u015ft\u0131r\u0131n:<\/p>\n<pre><code class=\"language-go\">package main\n\nimport \"fmt\"\n\nfunc main() {\n    fmt.Println(\"Merhaba, Go 1.6 Ubuntu 14.04!\")\n}<\/code><\/pre>\n<p>*   <code>package main<\/code>: Her y\u00fcr\u00fct\u00fclebilir Go program\u0131 <code>main<\/code> paketinde olmal\u0131d\u0131r.<br \/>\n*   <code>import \"fmt\"<\/code>: Go&#8217;nun standart k\u00fct\u00fcphanesinden <code>fmt<\/code> (format) paketini i\u00e7e aktar\u0131r\u0131z. Bu paket, metin bi\u00e7imlendirme ve yazd\u0131rma i\u015flevleri sa\u011flar.<br \/>\n*   <code>func main()<\/code>: Bu, Go program\u0131n\u0131n y\u00fcr\u00fct\u00fclmeye ba\u015flad\u0131\u011f\u0131 ana fonksiyondur.<br \/>\n*   <code>fmt.Println(\"Merhaba, Go 1.6 Ubuntu 14.04!\")<\/code>: <code>fmt<\/code> paketindeki <code>Println<\/code> fonksiyonunu kullanarak belirtilen metni konsola yazd\u0131r\u0131r.<\/p>\n<p>Dosyay\u0131 kaydedin (Ctrl+O, Enter) ve Nano&#8217;dan \u00e7\u0131k\u0131n (Ctrl+X).<\/p>\n<h4>7.3. Program\u0131 \u00c7al\u0131\u015ft\u0131rma<\/h4>\n<p>Go program\u0131n\u0131z\u0131 \u00e7al\u0131\u015ft\u0131rmak i\u00e7in iki ana y\u00f6ntem vard\u0131r: <code>go run<\/code> ve <code>go build<\/code>.<\/p>\n<h5>7.3.1. <code>go run<\/code> ile \u00c7al\u0131\u015ft\u0131rma<\/h5>\n<p><code>go run<\/code> komutu, kaynak kodu derler ve hemen \u00e7al\u0131\u015ft\u0131r\u0131r. Derlenmi\u015f ikili dosyay\u0131 diske kaydetmez.<\/p>\n<pre><code class=\"language-bash\">go run main.go<\/code><\/pre>\n<p>\u00c7\u0131kt\u0131 \u015f\u00f6yle olmal\u0131d\u0131r:<\/p>\n<pre><code class=\"language-\">Merhaba, Go 1.6 Ubuntu 14.04!<\/code><\/pre>\n<h5>7.3.2. <code>go build<\/code> ile Derleme ve \u00c7al\u0131\u015ft\u0131rma<\/h5>\n<p><code>go build<\/code> komutu, kaynak kodu derler ve mevcut dizine y\u00fcr\u00fct\u00fclebilir bir ikili dosya (executable) olu\u015fturur. Daha sonra bu dosyay\u0131 do\u011frudan \u00e7al\u0131\u015ft\u0131rabilirsiniz.<\/p>\n<pre><code class=\"language-bash\">go build main.go<\/code><\/pre>\n<p>Bu komut, <code>main<\/code> ad\u0131nda (veya Windows&#8217;ta <code>main.exe<\/code>) bir dosya olu\u015fturacakt\u0131r. \u015eimdi bu ikili dosyay\u0131 \u00e7al\u0131\u015ft\u0131r\u0131n:<\/p>\n<pre><code class=\"language-bash\">.\/main<\/code><\/pre>\n<p>\u00c7\u0131kt\u0131 yine \u015f\u00f6yle olmal\u0131d\u0131r:<\/p>\n<pre><code class=\"language-\">Merhaba, Go 1.6 Ubuntu 14.04!<\/code><\/pre>\n<p>Her iki y\u00f6ntemle de program\u0131n\u0131z ba\u015far\u0131yla \u00e7al\u0131\u015ft\u0131ysa, Go 1.6 geli\u015ftirme ortam\u0131n\u0131z Ubuntu 14.04 \u00fczerinde tamamen i\u015flevseldir. Art\u0131k Go ile kendi projelerinizi geli\u015ftirmeye ba\u015flayabilirsiniz.<\/p>\n<h3>8. Ek Bilgiler ve Sorun Giderme<\/h3>\n<p>Go 1.6 kurulumunuzu tamamlad\u0131ktan sonra, kar\u015f\u0131la\u015fabilece\u011finiz baz\u0131 ek durumlar veya sorunlar hakk\u0131nda bilgi sahibi olmak faydal\u0131 olacakt\u0131r.<\/p>\n<h4>8.1. S\u0131k Kar\u015f\u0131la\u015f\u0131lan Sorunlar ve \u00c7\u00f6z\u00fcmleri<\/h4>\n<p>*   <strong><code>go: command not found<\/code>:<\/strong> Bu hata, <code>PATH<\/code> ortam de\u011fi\u015fkeninizin Go&#8217;nun <code>bin<\/code> dizinini i\u00e7ermedi\u011fi anlam\u0131na gelir.<br \/>\n    *   <strong>\u00c7\u00f6z\u00fcm:<\/strong> <code>~\/.profile<\/code> dosyan\u0131z\u0131 kontrol edin ve <code>export PATH=$PATH:$GOROOT\/bin:$GOPATH\/bin<\/code> sat\u0131r\u0131n\u0131n do\u011fru oldu\u011fundan emin olun. De\u011fi\u015fiklik yapt\u0131ysan\u0131z <code>source ~\/.profile<\/code> komutunu \u00e7al\u0131\u015ft\u0131rmay\u0131 unutmay\u0131n.<br \/>\n*   <strong>\u0130zin Sorunlar\u0131:<\/strong> <code>tar<\/code> komutunu \u00e7al\u0131\u015ft\u0131r\u0131rken veya Go dosyalar\u0131na eri\u015fmeye \u00e7al\u0131\u015f\u0131rken izin hatalar\u0131 al\u0131yorsan\u0131z, <code>\/usr\/local\/go<\/code> dizininin sahipli\u011fi yanl\u0131\u015f olabilir.<br \/>\n    *   <strong>\u00c7\u00f6z\u00fcm:<\/strong> <code>sudo chown -R $USER:$USER \/usr\/local\/go<\/code> komutunu \u00e7al\u0131\u015ft\u0131rarak Go kurulum dizininin sahipli\u011fini kendi kullan\u0131c\u0131n\u0131za verin.<br \/>\n*   <strong><code>GOPATH<\/code> Hatalar\u0131:<\/strong> Go ara\u00e7lar\u0131, <code>GOPATH<\/code> ayarl\u0131 de\u011filse veya dizin mevcut de\u011filse hata verebilir.<br \/>\n    *   <strong>\u00c7\u00f6z\u00fcm:<\/strong> <code>export GOPATH=$HOME\/go<\/code> sat\u0131r\u0131n\u0131n <code>~\/.profile<\/code> dosyan\u0131zda oldu\u011fundan emin olun ve <code>mkdir -p $HOME\/go<\/code> komutuyla dizini olu\u015fturun.<\/p>\n<h4>8.2. Go 1.6&#8217;y\u0131 Kald\u0131rma<\/h4>\n<p>E\u011fer Go 1.6&#8217;y\u0131 sisteminizden kald\u0131rmak isterseniz, a\u015fa\u011f\u0131daki ad\u0131mlar\u0131 izleyebilirsiniz:<\/p>\n<p>1.  <strong>Go Kurulum Dizinini Silme:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo rm -rf \/usr\/local\/go<\/code><\/pre>\n<p>    Bu komut, Go&#8217;nun t\u00fcm dosyalar\u0131n\u0131 ve dizinlerini <code>\/usr\/local\/go<\/code> konumundan kal\u0131c\u0131 olarak silecektir.<br \/>\n2.  <strong>Ortam De\u011fi\u015fkenlerini Kald\u0131rma:<\/strong><br \/>\n    <code>~\/.profile<\/code> (veya Go ortam de\u011fi\u015fkenlerini ayarlad\u0131\u011f\u0131n\u0131z di\u011fer dosyalar\u0131) a\u00e7\u0131n ve daha \u00f6nce ekledi\u011finiz Go ile ilgili <code>export<\/code> sat\u0131rlar\u0131n\u0131 silin veya yorum sat\u0131r\u0131 haline getirin:<\/p>\n<pre><code class=\"language-bash\">nano ~\/.profile<\/code><\/pre>\n<p>    A\u015fa\u011f\u0131daki sat\u0131rlar\u0131 bulun ve silin veya ba\u015flar\u0131na <code>#<\/code> ekleyerek yorum sat\u0131r\u0131 yap\u0131n:<\/p>\n<pre><code class=\"language-\"># Go Environment Variables\n    export GOROOT=\/usr\/local\/go\n    export GOPATH=$HOME\/go\n    export PATH=$PATH:$GOROOT\/bin:$GOPATH\/bin<\/code><\/pre>\n<p>    De\u011fi\u015fiklikleri kaydedin ve dosyadan \u00e7\u0131k\u0131n.<br \/>\n3.  <strong>De\u011fi\u015fiklikleri Etkinle\u015ftirme:<\/strong><br \/>\n    Yeni bir terminal oturumu a\u00e7\u0131n veya mevcut oturumda <code>source ~\/.profile<\/code> komutunu \u00e7al\u0131\u015ft\u0131r\u0131n.<br \/>\n    Art\u0131k <code>go version<\/code> komutunu \u00e7al\u0131\u015ft\u0131rd\u0131\u011f\u0131n\u0131zda <code>command not found<\/code> hatas\u0131 almal\u0131s\u0131n\u0131z, bu da Go&#8217;nun ba\u015far\u0131yla kald\u0131r\u0131ld\u0131\u011f\u0131n\u0131 g\u00f6sterir.<\/p>\n<h4>8.3. Go Mod\u00fcller ve Ba\u011f\u0131ml\u0131l\u0131k Y\u00f6netimi (Go 1.6 Ba\u011flam\u0131nda)<\/h4>\n<p>Go 1.6 d\u00f6neminde, Go mod\u00fclleri (Go Modules) hen\u00fcz dilin resmi ba\u011f\u0131ml\u0131l\u0131k y\u00f6netim sistemi de\u011fildi. Go mod\u00fclleri Go 1.11 ile tan\u0131t\u0131ld\u0131 ve Go 1.13&#8217;te varsay\u0131lan hale geldi. Go 1.6 ile \u00e7al\u0131\u015f\u0131rken, ba\u011f\u0131ml\u0131l\u0131k y\u00f6netimi genellikle <code>GOPATH<\/code> tabanl\u0131d\u0131r.<\/p>\n<p>*   <strong><code>go get<\/code> Komutu:<\/strong> \u00dc\u00e7\u00fcnc\u00fc taraf k\u00fct\u00fcphaneleri indirmek ve <code>GOPATH<\/code>&#8216;inize yerle\u015ftirmek i\u00e7in <code>go get<\/code> komutunu kullan\u0131rd\u0131n\u0131z. \u00d6rne\u011fin:<\/p>\n<pre><code class=\"language-bash\">go get github.com\/gorilla\/mux<\/code><\/pre>\n<p>    Bu komut, <code>gorilla\/mux<\/code> k\u00fct\u00fcphanesini <code>GOPATH\/src\/github.com\/gorilla\/mux<\/code> dizinine indirir.<br \/>\n*   <strong>Vendoring:<\/strong> Karma\u015f\u0131k projelerde veya ba\u011f\u0131ml\u0131l\u0131klar\u0131n belirli bir s\u00fcr\u00fcm\u00fcn\u00fc sabitlemek i\u00e7in <code>vendor<\/code> dizinleri kullan\u0131l\u0131rd\u0131. Bu, projenin ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131n bir kopyas\u0131n\u0131 kendi <code>vendor<\/code> dizininde tutarak, projenin derlenmesi s\u0131ras\u0131nda <code>GOPATH<\/code> yerine bu dizindeki ba\u011f\u0131ml\u0131l\u0131klar\u0131 kullanmas\u0131n\u0131 sa\u011flard\u0131. <code>vendor<\/code> dizini olu\u015fturmak ve y\u00f6netmek i\u00e7in <code>go dep<\/code> gibi \u00fc\u00e7\u00fcnc\u00fc taraf ara\u00e7lar kullan\u0131l\u0131rd\u0131.<\/p>\n<p>Go 1.6 ile \u00e7al\u0131\u015f\u0131rken bu eski ba\u011f\u0131ml\u0131l\u0131k y\u00f6netimi yakla\u015f\u0131mlar\u0131n\u0131 anlamak ve kullanmak \u00f6nemlidir. Modern Go geli\u015ftirme i\u00e7in Go mod\u00fclleri tercih edilirken, Go 1.6 ortam\u0131nda <code>GOPATH<\/code> ve <code>go get<\/code> temel ara\u00e7lar\u0131n\u0131z olacakt\u0131r.<\/p>\n<h4>8.4. G\u00fcvenlik ve G\u00fcncellik Konusunda Uyar\u0131<\/h4>\n<p>Bu rehber, belirli bir ihtiyaca y\u00f6nelik olarak Go 1.6&#8217;n\u0131n Ubuntu 14.04 \u00fczerine kurulumunu detayland\u0131rm\u0131\u015ft\u0131r. Ancak, hem Go 1.6 hem de Ubuntu 14.04 art\u0131k resmi g\u00fcvenlik g\u00fcncellemeleri almamaktad\u0131r. Bu durum, bu sistemlerin g\u00fcvenlik a\u00e7\u0131klar\u0131na kar\u015f\u0131 daha savunmas\u0131z olabilece\u011fi anlam\u0131na gelir. E\u011fer m\u00fcmk\u00fcnse, projelerinizi Go&#8217;nun daha yeni s\u00fcr\u00fcmlerine ve g\u00fcncel, desteklenen bir i\u015fletim sistemine (\u00f6rn. Ubuntu 20.04 LTS veya 22.04 LTS) ta\u015f\u0131may\u0131 ciddi \u015fekilde d\u00fc\u015f\u00fcnmelisiniz. Eski sistemlerin kullan\u0131m\u0131, \u00f6zellikle internete a\u00e7\u0131k sunucularda, ciddi g\u00fcvenlik riskleri ta\u015f\u0131yabilir. Bu kurulumu sadece izole edilmi\u015f geli\u015ftirme ortamlar\u0131 veya \u00e7ok spesifik legacy sistemler i\u00e7in kullanman\u0131z \u00f6nerilir.<\/p>\n<p>Bu ek bilgiler, Go 1.6 ve Ubuntu 14.04 ortam\u0131nda \u00e7al\u0131\u015f\u0131rken kar\u015f\u0131la\u015fabilece\u011finiz durumlar i\u00e7in size daha kapsaml\u0131 bir bak\u0131\u015f a\u00e7\u0131s\u0131 sunar.<\/p>\n<h3>Sonu\u00e7<\/h3>\n<p>Bu kapsaml\u0131 rehberde, Go programlama dilinin 1.6 s\u00fcr\u00fcm\u00fcn\u00fc Ubuntu 14.04 i\u015fletim sistemi \u00fczerine ad\u0131m ad\u0131m nas\u0131l kuraca\u011f\u0131n\u0131z\u0131 detayl\u0131 bir \u015fekilde \u00f6\u011frendiniz. Go&#8217;nun ne oldu\u011fundan, bu spesifik (ve art\u0131k eski) s\u00fcr\u00fcm ve i\u015fletim sistemi kombinasyonunu neden tercih edebilece\u011finize dair ba\u011flamdan ba\u015flayarak, sistem haz\u0131rl\u0131\u011f\u0131ndan indirme i\u015flemine, ar\u015fiv \u00e7\u0131karma ve ortam de\u011fi\u015fkenlerinin yap\u0131land\u0131r\u0131lmas\u0131na kadar her ad\u0131m\u0131 titizlikle ele ald\u0131k. Kurulumun do\u011frulanmas\u0131 ve basit bir &#8220;Merhaba D\u00fcnya!&#8221; program\u0131 ile geli\u015ftirme ortam\u0131n\u0131z\u0131n i\u015flerli\u011fini test ettik. Ayr\u0131ca, kar\u015f\u0131la\u015fabilece\u011finiz olas\u0131 sorunlar\u0131 giderme yollar\u0131n\u0131 ve Go 1.6 d\u00f6nemindeki ba\u011f\u0131ml\u0131l\u0131k y\u00f6netimi yakla\u015f\u0131mlar\u0131n\u0131 da inceledik.<\/p>\n<p>Art\u0131k Ubuntu 14.04 sisteminizde Go 1.6 ile geli\u015ftirme yapmaya haz\u0131r bir ortama sahipsiniz. Bu ortam, belirli eski projelerin bak\u0131m\u0131, ba\u011f\u0131ml\u0131l\u0131k uyumlulu\u011fu veya tarihsel bir ba\u011flamda Go&#8217;yu incelemek gibi \u00f6zel ihtiya\u00e7lar\u0131n\u0131z i\u00e7in size hizmet edecektir. Ancak, g\u00fcvenlik ve performans a\u00e7\u0131s\u0131ndan en iyi uygulamalar\u0131n, Go&#8217;nun en g\u00fcncel s\u00fcr\u00fcm\u00fcn\u00fc ve desteklenen, g\u00fcncel bir i\u015fletim sistemini kullanmak oldu\u011funu unutmamak \u00f6nemlidir. E\u011fer bu eski ortam\u0131 bir \u00fcretim sistemi i\u00e7in kullan\u0131yorsan\u0131z, olas\u0131 g\u00fcvenlik risklerini dikkatle de\u011ferlendirmeniz ve gerekli \u00f6nlemleri alman\u0131z \u015fiddetle tavsiye edilir.<\/p>\n<p>Umar\u0131z bu rehber, Go 1.6 kurulum s\u00fcrecini sizin i\u00e7in anla\u015f\u0131l\u0131r ve sorunsuz hale getirmi\u015ftir. Go ile keyifli kodlamalar dileriz!<br \/>\n<\/body><\/p>\n","protected":false},"excerpt":{"rendered":"Ubuntu 14.04 \u00dczerine Go 1.6 Kurulumu: Ad\u0131m Ad\u0131m Kapsaml\u0131 Rehber\nGo (genellikle Golang olarak da bilinir), Google taraf\u0131ndan geli\u015ftirilen a\u00e7\u0131","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1468],"tags":[],"class_list":{"0":"post-36880","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-ubuntu","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Ubuntu 14.04 \u00dczerine Go 1.6 Kurulumu: Ad\u0131m Ad\u0131m Kapsaml\u0131 Rehber - Kodlar\u0131n Gizemli D\u00fcnyas\u0131<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-go-1-6-kurulumu-adim-adim-kapsamli-rehber\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Ubuntu 14.04 \u00dczerine Go 1.6 Kurulumu: Ad\u0131m Ad\u0131m Kapsaml\u0131 Rehber\" \/>\n<meta property=\"og:description\" content=\"Ubuntu 14.04 \u00dczerine Go 1.6 Kurulumu: Ad\u0131m Ad\u0131m Kapsaml\u0131 Rehber Go (genellikle Golang olarak da bilinir), Google taraf\u0131ndan geli\u015ftirilen a\u00e7\u0131\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-go-1-6-kurulumu-adim-adim-kapsamli-rehber\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-12-24T08:40:57+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"23 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-go-1-6-kurulumu-adim-adim-kapsamli-rehber\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-go-1-6-kurulumu-adim-adim-kapsamli-rehber\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Ubuntu 14.04 \u00dczerine Go 1.6 Kurulumu: Ad\u0131m Ad\u0131m Kapsaml\u0131 Rehber\",\"datePublished\":\"2025-12-24T08:40:57+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-go-1-6-kurulumu-adim-adim-kapsamli-rehber\/\"},\"wordCount\":4032,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"articleSection\":[\"Ubuntu\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-go-1-6-kurulumu-adim-adim-kapsamli-rehber\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-go-1-6-kurulumu-adim-adim-kapsamli-rehber\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-go-1-6-kurulumu-adim-adim-kapsamli-rehber\/\",\"name\":\"Ubuntu 14.04 \u00dczerine Go 1.6 Kurulumu: Ad\u0131m Ad\u0131m Kapsaml\u0131 Rehber - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-12-24T08:40:57+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-go-1-6-kurulumu-adim-adim-kapsamli-rehber\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-go-1-6-kurulumu-adim-adim-kapsamli-rehber\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-go-1-6-kurulumu-adim-adim-kapsamli-rehber\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Ubuntu 14.04 \u00dczerine Go 1.6 Kurulumu: Ad\u0131m Ad\u0131m Kapsaml\u0131 Rehber\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Ubuntu 14.04 \u00dczerine Go 1.6 Kurulumu: Ad\u0131m Ad\u0131m Kapsaml\u0131 Rehber - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-go-1-6-kurulumu-adim-adim-kapsamli-rehber\/","og_locale":"tr_TR","og_type":"article","og_title":"Ubuntu 14.04 \u00dczerine Go 1.6 Kurulumu: Ad\u0131m Ad\u0131m Kapsaml\u0131 Rehber","og_description":"Ubuntu 14.04 \u00dczerine Go 1.6 Kurulumu: Ad\u0131m Ad\u0131m Kapsaml\u0131 Rehber Go (genellikle Golang olarak da bilinir), Google taraf\u0131ndan geli\u015ftirilen a\u00e7\u0131","og_url":"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-go-1-6-kurulumu-adim-adim-kapsamli-rehber\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-12-24T08:40:57+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"23 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-go-1-6-kurulumu-adim-adim-kapsamli-rehber\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-go-1-6-kurulumu-adim-adim-kapsamli-rehber\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Ubuntu 14.04 \u00dczerine Go 1.6 Kurulumu: Ad\u0131m Ad\u0131m Kapsaml\u0131 Rehber","datePublished":"2025-12-24T08:40:57+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-go-1-6-kurulumu-adim-adim-kapsamli-rehber\/"},"wordCount":4032,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"articleSection":["Ubuntu"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-go-1-6-kurulumu-adim-adim-kapsamli-rehber\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-go-1-6-kurulumu-adim-adim-kapsamli-rehber\/","url":"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-go-1-6-kurulumu-adim-adim-kapsamli-rehber\/","name":"Ubuntu 14.04 \u00dczerine Go 1.6 Kurulumu: Ad\u0131m Ad\u0131m Kapsaml\u0131 Rehber - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-12-24T08:40:57+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-go-1-6-kurulumu-adim-adim-kapsamli-rehber\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-go-1-6-kurulumu-adim-adim-kapsamli-rehber\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-go-1-6-kurulumu-adim-adim-kapsamli-rehber\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Ubuntu 14.04 \u00dczerine Go 1.6 Kurulumu: Ad\u0131m Ad\u0131m Kapsaml\u0131 Rehber"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/36880","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=36880"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/36880\/revisions"}],"predecessor-version":[{"id":36881,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/36880\/revisions\/36881"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=36880"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=36880"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=36880"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}