2016-04-11 16 views
0

Herhangi bir dizinden go build github.com/.../foo yapılıyorken, derlenmiş ikili komutunu çalıştırdığım dizine yerleştirilir. go build /github.com/.../cmd/...'u yaparken, tüm derlenmiş ikili dosyalarının geçerli dizimde görünmesini bekledim. Ama yapmıyorlar.Geçerli dizine birden çok ikili oluşturma

Bu paketin birden çok/tüm ikili dosyalarını geçerli çalışma dizinime nasıl derleyebilirim?

cevap

1

Geçerli dizininizde oluşturmak için projenizin dosya yolunu (paket adı yerine) kullanarak ikili dosyanızı derleyebilirsiniz.

Örneğin

:

$ go build ~/Go/src/github.com/.../cmd 

Ve ikili geçerli dizinde olacak. go build -h itibaren

+0

'github.com/ .../cmd/... 'bir kerede ve her ikili için değil – soupdiver

+0

Dizin yolunuza" ... "ekleyiniz (sizin yaptığınız gibi). Go'da "x/...", "x /" altındaki her yol anlamına gelir. – cd1

+0

Sorumu tarif ettiğim gibi: '…' eklerken, o zaman geçerli direme NO dosyaları yerleştirilir. Sadece inşa etmek için tam bir ikili belirtirsem, geçerli direme yerleştirilir. – soupdiver

0

:

birden paketler veya olmayan tek bir ana paket derlemek, inşa paketleri derler ama paketler inşa edilebileceğini çek olarak sadece hizmet çıkan nesne, atar.

Ama aynı sonucu (doğrudan cmd altında sadece ikili inşa edilecek) elde etmek için bu tek astar kullanabilirsiniz: fikri yolu altındaki her şeyi inşa etmek find $GOPATH/src/github.com/.../cmd -mindepth 1 -maxdepth 1 | xargs -n1 go build

İlgili konular