What's a developer to do?

Bruce Dawson jbd at codemeta.com
Mon Apr 24 13:50:01 EDT 2006


Jon Hall wrote:
>>Well, LSB is Linux-only.
> 
> No.  BSD and Solaris systems can also pass the LSB.  OS X could pass it if
> they wanted to.

Interesting. I wasn't aware of this.

> LSB simply defines a binary interface for applications to run.....and it
> does it on a architecture basis.
> 
>>Starpacks will run on Linux, OS-X, Windows, ...
>>- and *with the same binary*!
> 
> Uhhhh, I think you mean that the *envelope file* Starpacks creates will
> deliver the binaries needed for all these platforms, if you have the binaries,
> by utilizing the TCL interpreter.  Correct?

Technically, yes. (The end-user sees it as the "same program", and for
the most part, the developer does too).

> You still have to have the binaries of the application itself for a particular
> OS and architecture, and in the case of Linux, it would be nice if that
> application followed the LSB, and if the platforms you were delivering it for
> were LSB compliant.

Those "binaries", if there are any, are bundled into the application's
"starpack". (Typically, each platform's TCL is the only binary in a
starpack).

I've been assuming the starpack's SDX utility (which glues the various
parts of TCL and the application into a starpack) was LSB compliant and
created LSB compliant binaries - at least for the Linux platform. That
assumption may not be valid.

> Of course I do not see where Starkits does any of the testing for prerequisites
> and dependencies that RPM or APT does.....

It doesn't need to. RPM's, APT, and other Linux packaging concepts are
beyond the scope of starkits. Actually, starpacks are another form of
RPMs, ... but mostly for people developing on systems that don't (or
didn't) have a concept of package management.

In TCL, package dependency management is done with the "package"
command, and its done at run-time by the application, instead of an
external packaging system.

BTW: I just read on the starpack mailing list where someone suggested
that jcw use RHL 7.3 as the basis of starpack development. Evidently,
Linux binaries developed on a RHL 7.3 system will run on most other
distributions. They went further to suggest that any application that
doesn't work from there should be rebuilt from scratch for the target
system. I suspect this is the direction jcw is going to take.

--Bruce



More information about the gnhlug-discuss mailing list