comp.lang.idl-pvwave archive
Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado

Home » Public Forums » archive » Need advice on building a project
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Return to the default flat view Create a new topic Submit Reply
Re: Need advice on building a project [message #40030 is a reply to message #33270] Sat, 03 July 2004 10:15 Go to previous messageGo to previous message
Robert Barnett is currently offline  Robert Barnett
Messages: 70
Registered: May 2004
Member
Thanks, I think that you've nailed my two problems pretty square on the
head.

I didn't realise that IDL searched subdirectories, I was *told* that it
didn't do that. I'll have to look into what versions of IDL support
this. Even though, I still have problems with stupid code which doesn't
keep the filename and procedure name the same. I'm also conerned with
accidently having two files with the same name in a different directory.
Imagine two indepenant applications in your idl directory which use
different versions of the same file. The only way around this is to move
applications in and out of your idl directory.

Thanks for recommending CVS, I certainly value the idea of explicit
dependancies. I have to spend a lot of time reading other peoples code.
I frequently come across a call to a procedure or function which I have
no idea where it is and what other code that procedure or function
requires. I think that I'm used to other languages such as perl and java
where code is distributed in packages.

I think that the main problem with CVS is that I often have to jump
through hoops to get new applications installed. Thankfully, I have a
linux box hidden away in a room somewhere which I can use to serve files.


Just a quick question

How do/would you deploy a runtime IDL application if you were using CVS?
You may have noticed that my script allows me to specify a .SAV file.
When I do this my script compiles the files specified BuildOrder
including their dependancies and subseqentally saves them to the .sav
file. Is there an easy way to do this with CVS?


Paul Van Delst wrote:
> Robert Barnett wrote:
>
>>
>> For my first major project using IDL, I used version 5.4 and the
>> idlde. I'm about to move onto a second project and I think that even
>> idlde for version 6.0 is not terribly useful.
>>
>> I want to know if anyone has tried this before:
>>
>> Today I quickly wrote up a (perl) script that allows one to specify
>> the build order in a heirarchical fashion.
>
>
> Forgive my denseness, but what do you mean by "build order"? Are you
> saying that your setup has problems finding other dependent .pro files
> that aren't in your current directory? If so, then all you should need
> to do is stick your entire IDL code heirarchy into you IDL_PATH env
> variable.
>
> Apologies if you already know this, but the way I do it is to put *all*
> my IDL code in an /idl subdirectory off my home directory. Then I do a
> export IDL_PATH=${IDL_PATH}:+\${HOME}/idl
> in my .bashrc and every single file in every subdirectory is "visible"
> to IDL when you compile your .pro file of the moment.
>
>> Each directory contains a BuildOrder file which indicates what
>> programs need to be built but also can contain dependancies on other
>> BuildOrder files.
>>
>> The aim of this is to package my programs so that any given group of
>> programs can be compiled and tested as indepenantly as possible. Also
>> a package (including it's build order) can be imported and exported
>> without too much trouble.
>
>
> Now, the export issue is a different one (I reckon). I solve this using
> CVS. When I want to export some code (e.g. to distribute to users) I tag
> (cvs tag) all of the required files with a string (e.g.,
> "Ootsma_Plotter_2-13" to indicate this is release 2.13 of my IDL
> application "oostma_plotter.pro") I associate with that application.
> Then you simply do something like
> cvs export -r Ootsma_Plotter_2-13 -d./ ${CVS_REPOSITORY}
> to extract all the required .pro files into the current directory. And
> you can do this anywhere since cvs works across networks.
>
> The only thing that can be a pain in the rear is tagging all the
> required files in the first place. But if you do it as you write your
> app (just like the documentation :o) then it's no biggie. Still, a perl
> script to do this task would be handy.
>
> I'm not sure if this addresses exactly what you asked about. At any
> rate, I recommend CVS to cut down on versionitis -- although I'm always
> amazed at the resistance people have to using it... It's quite peculiar.
> Especially when I see people with multiple copies of the same file in
> different directories, each one possibly subtlely modified in a way that
> may or not be noticed depending on which one is first in the IDL path
> search list.. Anyway...
>
> paulv
>
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Re: minimum intensity projection
Next Topic: Re: Lambert Projection to Lat Lon

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Sun Oct 12 12:34:56 PDT 2025

Total time taken to generate the page: 0.88047 seconds