Discussion:
[Larceny-users] License and compilation on Windows 7
m***@cmpeq.com
2012-08-20 13:36:38 UTC
Permalink
Hello,

I'm trying understand the implications of the LGPL license. If I have
understood
correctly, the way to distribute a closed source application with
Larceny would
be to package Larceny with the compiled files (fasls or custom heap)
and make a
script that executes the wanted pieces. Would doing this violate the
license?
And if so, what would I have to do to not violate the license? Would
this even
be the preferred way to distribute an application with Larceny?


Also, I tried to do a full compile of the sources on Windows 7 x64 with
the latest
Microsoft's SDK and nasm (versions 2.05rc1, 2.10.04). Everything seems
to go fine
until trying to create the heap images. The compiled "larceny.bin"
crashes. I can
add all the other information I've managed to gather to a trac ticket,
if there's
interest in this. (I tried both the prepackaged src and the src from
svn.)

Thanks, Mikko
w***@ccs.neu.edu
2012-08-20 16:47:20 UTC
Permalink
I'm trying understand the implications of the LGPL license. If I have understood
correctly, the way to distribute a closed source application with Larceny would
be to package Larceny with the compiled files (fasls or custom heap) and make a
script that executes the wanted pieces.
That's certainly the easiest way to distribute an application
that's written in Larceny, and it's likely to be the only
practical way to do so at this time.
Would doing this violate the license?
If that's all you did, I think it probably would violate the
LGPL.
And if so, what would I have to do to not violate the license?
I believe that an application constructed as you describe would
count as a "Combined Work" under the LGPL, so you'd have to do
the five things described in part 4 of the current LGPL (online
at http://www.gnu.org/licenses/lgpl.html ). Your script would
probably satisfy requirement 4d1, and requirement 4e probably
doesn't apply to you or is already satisfied by your installation
documentation, so I think it would be enough for you to change
your documentation to satisfy parts 4a, 4b, and 4c.

Disclaimer: I am not a lawyer, nor am I an expert on the LGPL.
The reason Larceny is covered by the LGPL is that it uses Sassy
(and possibly a couple of other components) that are covered by
the LGPL, and the LGPL tends to infect any software that uses
software covered by the LGPL.
Also, I tried to do a full compile of the sources on Windows 7 x64 with the latest
Microsoft's SDK and nasm (versions 2.05rc1, 2.10.04). Everything seems to go fine
until trying to create the heap images. The compiled "larceny.bin" crashes. I can
add all the other information I've managed to gather to a trac ticket, if there's
interest in this. (I tried both the prepackaged src and the src from svn.)
This is probably a DEP issue, as described by Larceny bug ticket
#662 ( https://trac.ccs.neu.edu/trac/larceny/ticket/662 ). You
should set DEP to OptOut, and you should download the latest
versions of these three files, which were modified by changeset
[6657]:

src/Rts/Sys/larceny.c
src/Rts/Sys/larceny.h
src/Rts/make-templates.sch

If the latest (post-6657) versions of these files are the same
as the ones you got in the "src from svn", and you did a full
build from a completely clean start, and DEP is already set to
OptOut, then something else must be going on, and I'd be very
interested to hear more.

Will
Mikko Vanhatalo
2012-08-20 20:27:25 UTC
Permalink
Post by w***@ccs.neu.edu
This is probably a DEP issue,
It indeed was DEP that was causing the problem, after that everything
went
smoothly. Although I had to disable DEP completely.
Post by w***@ccs.neu.edu
I believe that an application constructed as you describe would
count as a "Combined Work" under the LGPL, so you'd have to do
the five things described in part 4 of the current LGPL (online
at http://www.gnu.org/licenses/lgpl.html ). Your script would
probably satisfy requirement 4d1, and requirement 4e probably
doesn't apply to you or is already satisfied by your installation
documentation, so I think it would be enough for you to change
your documentation to satisfy parts 4a, 4b, and 4c.
Disclaimer: I am not a lawyer, nor am I an expert on the LGPL.
The reason Larceny is covered by the LGPL is that it uses Sassy
(and possibly a couple of other components) that are covered by
the LGPL, and the LGPL tends to infect any software that uses
software covered by the LGPL.
As to the license, it seems that if I would follow the requirement 4d1
and if the requirement 4e applied to me, I would have to also "convey
Corresponding Source". Trying to find out whether I have to provide
such
information leads to a down spiral through the GPL.

But it seems that, if no other accompanied license forbids it, I could
package the source code with the software. Thereby fulfilling the
requirement 4d0 and 4e. 'Software' probably meaning the fasl-files.
I'm guessing that the heaps generated by Larceny can't be 'separated',
or rolled back to some format where they could be linked back again,
which would violate the license.

But I may have misinterpreted this all and most likely will have to
ask someone who really understands this stuff.


Thank you for the quick reply.

Loading...