Forum: D Programlama Dili RSS
Error: module object is in file 'object.d' which cannot be read
Sayfa:  1  2  sonraki 
qyn_ #1
Kullanıcı başlığı: qyn
Üye Nis 2010 tarihinden beri · 32 mesaj · Konum: öğrenci
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
konuyla biraz alakasiz gibi ama ben Dmd2 ile  ubuntu altında bir türlü program derleyemedim
kurulumu ilgili siteden deb uzantılı paketi yükledim ve bash konsolunda dmd yazarak dmd yi çalıştırdım .çıktı şu şekilde

dmd hello.d
object.d: Error: module object is in file 'object.d' which cannot be read
import path[0] = /etc/../../src/phobos
import path[1] = /etc/../../src/druntime/import

bunun çözümü nedir acaba .
acehreli (Moderatör) #2
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4527 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Yalnızca dmd yazınca sürüm numarası olarak ne görünüyor? Yakın bir zaman önce bu hatanın istenmeden D1 derleyicisi çalıştığında görüldüğünü okudum.

Şu yöntem Ubuntu altında bende çalışıyor:

- .zip'i indir

- herhangi bir klasöre aç; benimki şurada: /home/acehreli/dmd

- dmd'yi doğrudan o klasörün altındaki program ismini vererek çalıştır. Program o klasörün altında linux/bin'de duruyor:

acehreli@istanbul:~$ /home/acehreli/dmd/linux/bin/dmd
Digital Mars D Compiler v2.052
...


Öyle tam yolunu vererek çalıştırınca kendi kütüphanelerini kendisi bulabiliyor.

Eğer çalışmazsa, /etc/phobos.conf muydu, o dosyayı kaldırmayı dene; çünkü onun içinde D1 ile ilgili klasörler bulunuyor olabilir.

Ali
erdem (Moderatör) #3
Üye Tem 2009 tarihinden beri · 978 mesaj · Konum: Eskişehir
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Bence de eski tüm dmd paketleri varsa kaldırın. Bende *.deb uzantılı paketi kurarak çalıştırıyorum. Şimdiye kadar hiç sorun yaşamadım. Ama 32 bit kullanıyorum.

$ wget http://ftp.digitalmars.com/dmd_2.052-0_i386.deb
$ sudo dpkg -i dmd_2.052-0_i386.deb
Bu arada bazen gcc-multilib paketinin de kurulmasını isteyebiliyor.
qyn_ #4
Kullanıcı başlığı: qyn
Üye Nis 2010 tarihinden beri · 32 mesaj · Konum: öğrenci
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Ali Çehreli hocam aynı sekilde klasöre kurdum oradan yine calistirdim ve aynı hatayi verdi phobos.conf dosyası bende yoktu söyledigin gibi kendi klasörü içinden çağırarak konsoldan calistirdim fakat yine ayni hatayi verdi
versiyon dmd yazınca şu : Digital Mars D Compiler v2.052
Erdem  bu komutları verdim kurdum en sondaki gcc-multilib ve g++-multilib paketlerini kurduktan sonra bile hata düzelmedi.
şaşırdım bunun başka bi yolu yokmu :D
Bu mesaj qyn_ tarafından değiştirildi; zaman: 2011-04-05, 08:21.
Avatar
mert #5
Üye Ara 2010 tarihinden beri · 194 mesaj
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
qyn_ merhaba:
Erdem'in de dediği gibi önceden kurulmuş olan paketleri kaldırıp deb paketlerini arzu ederseniz bilgisayarınıza indirip, arzu ederseniz de verdiği terminal komutları ile kurmaya çalışın. Ben de ubuntuya geçtiğimde aynı sorunla karşılaşmıştım. Sonra şuradan http://www.dsource.org/forums/viewtopic.…?t=5803&hig… gerekli paketleri bilgisayarıma indirip tek tıklama ile kurdum. Ardından da geany editörünü D derleyebilecek biçimde hazırladım. Geany başlangıç için oldukça kolay hazırlanabiliyor. gerisi f9 ve f5 komutlarına kalıyor. Arzu ederseniz bu biçimde de deneyebilirsiniz. deb paketleri ile kurmak başlangıç için oldukça zahmetsiz ve kolay. İlgili konu için : http://ddili.org/forum/post/3606
Sorununuz çözüldüğünde bilgilendirir misiniz?
mert
Bu mesaj mert tarafından değiştirildi; zaman: 2011-04-05, 08:22.
qyn_ #6
Kullanıcı başlığı: qyn
Üye Nis 2010 tarihinden beri · 32 mesaj · Konum: öğrenci
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Merhaba mert :
Öncelikle sorun hala devam ediyor.
Verdigin linkteki dmd yi zaten kurmustum hatta silip yine kurdum .önceden D ile ilgili herhangi bir dosya vs varmi diye kontrol ettim yoktu.
gtkD yi ben windows altında çalıştırmıstım tabi D bu hatayi vermedi orda şimdi ubuntuda deneyim diyorum bir türlü şu hatadan kurtulamadım

object.d: Error: module object is in file 'object.d' which cannot be read
import path[0] = /etc/../../src/phobos
import path[1] = /etc/../../src/druntime/import

eğer bu hatayi giderebilirsem söylediğin şekilde GTKD yi kurup hemen program yazmaya linuxtan devam edicem.
Geany evet oldukca güzel zaten ben ya kate yada geany kullaniyorum şu sorunları aşarsak hem geany hemde kate için yapılandırma yapmak istiyorum.
dmd yi boşverip sitedeki kurulum sayfasindan gdc yada ldc yi mi kursam diyorum ancak onlar d2 desteklemiyor galiba.
Sorunu çözünce bilgilendiricem .Teşekkür ederim.
Bu mesaj qyn_ tarafından değiştirildi; zaman: 2011-04-05, 09:05.
erdem (Moderatör) #7
Üye Tem 2009 tarihinden beri · 978 mesaj · Konum: Eskişehir
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Burada senin hatana benzer bir hata mesajı açılmış. Bakalım çözümüne bakıp hatayı düzeltmeye çalışalım.

Bir de $ uname -a çıktısı ne veriyor acaba. Ben hala 32 bitlik mi 64 bitlik sürümü mü kullandığınızı anlayamadım.

Çözümlerden bir tanesi:

$ wget -O dvm https://bitbucket.org/doob/dvm/downloads/dvm-0.1.1-linux 
$ chmod +x dvm 
$ ./dvm install dvm
 
$ dvm install 2.052
$ dvm use 2.052

Ama sanırım sadece 32 bitlik versiyonda çalışıyormuş. Her şeyi kaldırdıktan sonra dememe gerek yok sanırım :)

Ek olarak libz diye bir paketin kurulmasını gerekebiliyormuş.
Bu mesaj 2 defa değişti; son değiştiren: erdem; zaman: 2011-04-05, 10:20.
acehreli (Moderatör) #8
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4527 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Yanıtlanan mesaj #6
Şurada PATH ile ilgili olduğu yazılmış:

  http://ddili.org/forum/post/1501

Ama emin değilim çünkü ben dmd klasörünü PATH'ten silince ve dmd'nin tam yolunu verince bile çalışıyor:

$ /home/acehreli/dmd/linux/bin/dmd deneme.d

Herhalde o değildir. (?) Bir de -v seçeneğine bilgi eklettiren şu hatayı buldum:

  http://d.puremagic.com/issues/show_bug.cgi?id=4002

Şu komutu verince hangi dmd.conf kullanıldığını söylüyor:

$ dmd deneme.d -v
binary    dmd
version   v2.052
config    /home/acehreli/dmd/linux/bin/dmd.conf
parse     deneme
...


Belki o çıktıdaki config satırında ummadığın bir dmd.conf dosyası vardır. (?)

Acaba daha önce Ubuntu'nun paket yöneticisi ile bir dmd kurdun da onun dmd.conf'u mu araya karışıyor. (?)

Ali
acehreli (Moderatör) #9
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4527 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Ve ben 64 bitlik Ubuntu 10.10 üzerinde şöyle kurmuşum:

  http://ddili.org/forum/post/3270

Ali
erdem (Moderatör) #10
Üye Tem 2009 tarihinden beri · 978 mesaj · Konum: Eskişehir
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Yanıtlanan mesaj #7
erdem:
Çözümlerden bir tanesi:

Bu yöntem maalesef çalışmıyor. Ek olarak .bashrc dosyasında da bazı değişiklikler yapılmasını istiyor ama o değişiklikleri de yapınca gibi bir hata veriyor.
$ dvm install 2.052
dvm.dvm.Exceptions.DvmException@dvm/commands/Install.d(101): The platform " 

Ayrıca mesajların sonunda da gördüğüm kadarıyla bir çözüm çıkmamış  :huh:
erdem (Moderatör) #11
Üye Tem 2009 tarihinden beri · 978 mesaj · Konum: Eskişehir
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Bir de 64 bit'de kurulum için tam adımlar şu şekildeymiş:
 
$ sudo apt-get install gcc-multilib g++-multilib libc6-i386 libc6-dev-i386
$ sudo apt-get install ia32-libs (isteğe bağlı)
$ sudo dpkg -i --force-architecture dmd_X.XXX-0_i386.deb

X.XXX burada paketin sürüm numarasını belirtiyor.

Gene bu dizinlerde /etc/dmd.conf ve /usr/lib32/libphobos2.a dosyalarının olup olmadığını kontrol etmek iyi bir fikir. Burada 64 bit için libphobos2.a dosyası lib64 dizininde olabilir.
qyn_ #12
Kullanıcı başlığı: qyn
Üye Nis 2010 tarihinden beri · 32 mesaj · Konum: öğrenci
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
arkadaşlar gösterdiginiz ilgiye cok tesekkür ederim sözünü ettiginiz çözüm yöntemlerini birazdan deniyecegim
Erdem :işletim sistemim 32 bit die biliyorum çıktı şu şekilde
Linux qiyanpc 2.6.32-28-generic #55-Ubuntu SMP Mon Jan 10 21:21:01 UTC 2011 i686 GNU/Linux
64x olsaydı sanirim 64bitlik olacaktı yalnisim varsa düzelt.
Ali hocamın ve senin cözümlerini deniyecegim olursa güzel olcak olmassa can sağlığı :D
qyn_ #13
Kullanıcı başlığı: qyn
Üye Nis 2010 tarihinden beri · 32 mesaj · Konum: öğrenci
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
qyn_:
arkadaşlar gösterdiginiz ilgiye cok tesekkür ederim sözünü ettiginiz çözüm yöntemlerini birazdan deniyecegim
Erdem :işletim sistemim 32 bit die biliyorum çıktı şu şekilde
Linux qiyanpc 2.6.32-28-generic #55-Ubuntu SMP Mon Jan 10 21:21:01 UTC 2011 i686 GNU/Linux
64bitlik olsaydı sanirim 64x olacaktı yalnisim varsa düzelt.
Ali hocamın ve senin cözümlerini deniyecegim olursa güzel olcak olmassa can sağlığı :D
erdem (Moderatör) #14
Üye Tem 2009 tarihinden beri · 978 mesaj · Konum: Eskişehir
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Evet ama 32 bitlikse 64 bitden bahseden çözümleri göz ardı et. Ben Ali beyin yazdığı 64 bitlik bağlantıya bakmamıştım. Ben de aynısı yazmışım.

Anladığım kadarıyla 32 bitlik Ubuntu Lucid 10.04 sürümü kullanıyorsun. Yeni çözümleri denemeden önce

$ sudo dpkg --purge dmd

ile tüm dmd paketlerini kaldırmayı dene. Benim bilgisayarımın bir tanesinde Lucid tabanlı bir dağıtım da kurulu ama onda da sorun yaşamamıştım. 

$ sudo find / | grep dmd

Hatta yukarıdaki gibi kaldırdıktan sonra dmd'ye ait olabileceğini düşündüğün dizin ve dosyalar varsa bunları elle silmeni tavsiye ederim.

Bir de işe yarayabilir diye veriyorum. Benim /etc/dmd.conf dosyam şu şekilde:

[Environment]

DFLAGS= -I/usr/include/d/dmd/phobos -I/usr/include/d/dmd/druntime/import
-L-L/usr/lib32 -L-L/usr/lib64 -L--no-warn-search-mismatch
-L--export-dynamic -L-lrt
Bu mesaj erdem tarafından değiştirildi; zaman: 2011-04-05, 13:18.
qyn_ #15
Kullanıcı başlığı: qyn
Üye Nis 2010 tarihinden beri · 32 mesaj · Konum: öğrenci
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
tamamdır arkadaslar sonunda derlemeyi basardim bir şekilde nasil olduysa oldu demiyecegim cünki
dmd nin conf dosyasiyla alakali bir durummuş ben bir şekilde Erdemin de aşagida verdigi conf dosyasini sildim sanip silememişim hatanin tek sebebi eski conf dosyasiymis..
Ali Cehreli : verdigin komutla hangi conf dosyasindan okundugunu buldum ve sildim.
Erdem: verdigin komutlarla ne kadar dmd varsa hepsini sildim ve tekrar kurulum yaptim
 mert : verdigin linkle gtkd yi kurmaya sıra geldi :D
Teşekkürler.
Doğrulama Kodu: VeriCode Lütfen resimde gördüğünüz doğrulama kodunu girin:
İfadeler: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O
Özel Karakterler:
Sayfa:  1  2  sonraki 
Bağlı değilsiniz. · Şifremi unuttum · ÜYELİK
This board is powered by the Unclassified NewsBoard software, 20100516-dev, © 2003-10 by Yves Goergen
Şu an: 2017-11-19, 00:41:57 (UTC -08:00)