Herkese merhaba.
Ubuntu konusunda çok yeniyim ve bilmediğim çok şey mevcut. Dilim döndüğü kadar sorunumu paylaşmak isterim:
- TDEFNODE isimli, Fortran'da yazılmış bir program var. Tektonik çalışmalar için kullanılıyor.
- Ubuntu üzerinden çalıştığından, Windows işletim sistemi olan bilgisayarıma VMware Workstation sanal makinesi kurdum ve üzerine de Ubuntu 14 yükledim.
- Bir arkadaşım bu TDEFNODE yazılımını gfortran kullanarak derledi.
- Program için .bashrc dosyasına programın kurulu olduğu yolu tanıttım.
- Programla beraber, çizimleri yapabildiğimiz "td_plot" isimli bir programcık mevcut. Bu programcık(ya da betik, vs.) GMT isimli başka bir çizim programını, terminalde verdiğimiz bazı parametrelere göre çalıştırıyor ve çizim yapıyor; yani sisteme GMT'de yükledim.
- Ancak anladığım kadarıyla bu "td_plot" içerisindeki komutlar "tcsh" ile alakalı; sanırım bu nedenle çizimlerde oldukça eksik kısımlar mevcut; çizimler yanlış.
- Programı yazan kişi yurtdışından bir bilimadamı. Çizimler konusunda yardım istediğimde "sistemde tcsh ya da csh kurulu değilse bazı problemler olabilir" diyor.
- TDEFNODE programının çalışabilmesi için sisteme "tcsh" kurmuştum, ancak terminalde tcsh'ye geçiş yapıp programın bulunduğu klasörde işlem yaptığımda TDEFNODE'da dahil hiçbiri çalışmıyor.
- Sonuç olarak bu "td_plot" programını çalıştırmak istiyorum ancak anladığım kadarıyla "tcsh" için bazı özel tanımlar(alias, vb.) yapmak gerekiyor.
Çözüm nasıl olabilir? Ya da olabilir mi?
Teşekkürler.
Şimdiye kadar anladığıma göre, bu td_plot dosyası "tcsh" shell'e göre yazılan komutlar içeriyor. Bunun çalışabilmesi için dosyanın en başında "#!/bin/tcsh -f" ve sistemde "tcsh" yüklü olması lazım; ikisi de mevcut.
Asıl sormak istediğim, Ubuntu 14'te aktif shell'i "bash"'den "tcsh"'ye çevirmek ve bu scripti tcsh shell'inde çalıştırabilmek mümkün mü?
which tcsh
Sonuç?
Alıntı yapılan: siberoloji - 14 Temmuz 2017 - 09:00:58
which tcsh
Sonuç?
Cevaben "/usr/bin/tcsh" mesajı var.
Anladığım kadarıyla terminalde tcsh yazıp o shell'e geçmek yeterli. Script kendi klasöründe çalışıyor ama aslında herhangi bir çıktı klasöründen çalışması da gerekli, zira komut satırına bazı argümanlar ekliyoruz. Mesela:
td_plot -p map -p isme
gibi.
Sanıyorum .bashrc'de olduğu gibi, tcsh için kaynak dosyası her neyse ona da bazı PATH tanımlamaları yapmak gerekli.
sizin scriptlerin başında
#!/bin/tcsh -f
yazılı ancak sisteminizde tcsh
/usr/bin/tcsh
klasöründe bulunuyor.
dolayısıyla scriptler (betikler) tcsh için /bin/tcsh klasörünü arıyor. Orada değil ki!
O zaman scriplerin başını /usr/bin/tcsh olarak değişirtirmeli veya /bin/tcsh klasörünün içine aranan tcsh ı koymalıyız.
Kendiniz yapabilir misiniz?
----
Ayrıca, sizin kullanıcınız varsayılan olarak bash kullanıyorsa onu da aşağıdaki komut ile tcsh a çevirebilirsiniz.
chsh -s /usr/bin/tcsh
Kabuk degistirmenize gerek yok. Asagidaki komutlardan TD_HOME dizinini kendinize gore duzenleyip, diger komutlarida calistirdiginiz zaman sorunsuz calismakta.
$ pwd
/home/$USER/TDEFNODE
$ export TD_HOME=/home/$USER/TDEFNODE
$ export PATH=$TD_HOME:$PATH
$ mkdir -p scratch/$USER
$ td_plot
Use:
Types of plots
td_plot -p map - plots maps
td_plot -p insar - plots InSAR maps
td_plot -p ts1 - plots time series on 1 page
td_plot -p ts - plots multiple time series per page
td_plot -p xsec - plots fault cross-sections
td_plot -p stf - plot source time function velocity or displacement history
td_plot -p prof - plot profile
Additional flags: required arguments in brackets [ ]
-bird plot Bird (2002) plate outlines
-blk3 plot .blk3 file on map
-blocks plot block outlines
-bname plot names of blocks
-calcv plot calculated velocities
-demets plot DeMets NUVEL-1 plate outlines
-detrend detrend time series
-d plot STF displacement (default is velocity)
-dl [ incr ] gridline increment
-dt [ dt ] time-axis increment
-dx [ dx ] x-axis increment
-dy [ dy ] y-axis increment
-dz [ dz ] z-axis increment
-ehb [ size ] plot EHB earthquakes (size in inches)
-elasv [ fnum ] plot elastic vectors for fault fnum or 'all'
-eps remove .eps file
-es [ scale ] error ellipse scale
-etopo2 plot ETOPO2 topography
-file [filename color ] plot misc GMT format file(s) on map, specify color
-flock [ num ] fault number or 'all' for locking
-fsegs plot fault segments on map
-fslip fault slip vectors
-gcmt plot GCMT mechanisms
-gcode [ CODE ] GPS or InSAR file 4-letter code for time series
-grdgrad use gradient for topo
-hc [ size color ] dots where hard constraints imposed
-icode [ CODE ] InSAR 4-letter code
-idot [ size ] InSAR dot size
-iminmax [ min max ] InSAR min and max values for scale
-insar plot InSAR on profile
-isize [ size ] InSAR dot size in inches
-Jt Use -Jt projection
-label [ text ] write label on map
-lscale [ Lon Lat Size ] Length_scale Lon Lat Size(kms)
-mag [ mag1 mag2 ] magnitude range
-m [ CODE ] model 4-letter code
-netv plot reference frame vectors on map
-nnode [ num ] plot nodes for fault number num
-node [ num ] plot nodes; all, fault number or 0 for surface nodes
-nosig no error bars on time series
-nppg [ num ] number of time series per page (td_plot_time_series)
-ns [ size ] fontsize of GPS site names
-numb write block pole and strain indices on map
-numf number faults on map
-obsv plot observed velocities
-o [ filename ] output file name prefix
-omev plot observed minus elastic vectors
-omrv plot observed minus rotation vectors
-pal [ palette ] color palette
-pdf remove .pdf file
-pfile [ filename color ] plot polygon file
-phi plot PHI on map
-ph [ num ] page height in inches
-pnum [ num ] profile number to plot
-poles plot poles on map
-p [ plot_type ] plotting routine to run (see above)
-proline plot profile lines on map
-psv [ filename color ] plot psvelo file
-pw [ num ] page width in inches
-qfault plot USGS Quaternary faults
-qkfile [ filename ] plot earthquakes
-res plot residual displacements on time series
-resv plot residual velocities
-rivers plot rivers on map
-rotv plot rotational velocities
-season remove seasonal signal from time series
-site [ CODE ] site code
-slab [ num interval ] Fault contours, fault number and contour interval
-slip [ min max ] Min and Max_slip for scale bars
-srtm [ filename ] put SRTM topography on map
-strain [ scale lon lat size ] plot strain rates
-strv plot permanent strain velocities
-sv plot earthquake slip vectors
-t [ T1 T2 ] Min and max for time-axis plot
-trans [ num ] transient number
-transv plot transient displacement vectors
-transxy [ num ] make map limits num degrees from location
-var write vertical axis rotation rate on map
-votw [ size ] Plot volcanoes (VOTW)
-vphi plot VPHI on map
-vscale [ scale lon lat size ] Vector scale Lon Lat Size
-wesn [ W E S N ] West East South North degrees
-x [ Xmin Xmax ] Min and max for x-axis plot
-xyfile [ filename color size ] plot points file
-y [ Ymin Ymax ] Min and max for y-axis plot
-z [ Zmin Zmax ] Min and max depths for z-axis plot, EHB or GCMT
~TD_HOME
Yardımlarınız için teşekkürler. Sonuçta programı kurup çalıştırmayı başardım. Bu konu belki başka birilerinin işine yarayabilir, o yüzden kurulum aşamalarını kısaca yazmaya çalışacağım.
Kurulumda en önemli kısım yazılımların sürümleri. Anladığım kadarıyla bazı sürümlerle ilgili problemler oluyor.
- Kurulumu VMware sanal makinesinde Ubuntu 16.04 sürümü ile yaptım. Sanal makine içinse 4 CPU ve 4 GB RAM tanımladım
- netcdf(libnetcdf-dev) ve gdal(libgdal1-dev) kurulumları yapıldı
- GMT-4.5.14 ve GSHHG-GMT-2.3.4 ile GMT4param.txt ve install_gmt4.sh dosyaları indirildi ve bir klasörde toplandı.
- GMT4param.txt dosyasındaki parametreler değiştirildi(offline installation için): GSHHG_ftp=n, GSHHG_path(kurulum yolu tanımı), GMT_ftp=n, GMT_prefix=(kurulum yolu), GMT_delete=n
- Terminalden kurulum için: sudo sh install_gmt4.sh GMT4param.txt
- .bashrc dosyasına GMT için PATH tanımları yapıldı
Bu kısım GMT kurulumu içindi. TDEFNODE kurulumu içinse:
- TDEFNODE indirildi ve derlendi.
- Bütün dosyalar bir klasöre toplandı(tercihen TDEFNODE).
- Yine .bashrc dosyasına, TDEFNODE programı ve td_plot scripti için PATH tanımları yapıldı.
- td_plot scripti için tcsh paketi yüklendi
Program şimdilik sorunsuz çalışıyor gibi görünüyor.
Herkese iyi çalışmalar.