Need help to finish DMD zip/7z release generator (alpha release)
Rikki Cattermole
alphaglosined at gmail.com
Tue Sep 3 19:18:37 PDT 2013
On Wednesday, 4 September 2013 at 00:53:14 UTC, Nick Sabalausky
wrote:
> tl;dr: The main things I need help with: Installing 32-bit
> libcurl on
> 64-bit Debian, testing on 64-bit FreeBSD, and figuring out WTF
> is so
> screwed up on Windows.
>
> It's almost finished, but I've hit some problems I'm having a
> hell of a
> time figuring out. I'm getting a kinda brain-fried and need
> some help
> with it:
>
> Here's what I have right now (it's named "create_dmd_release"):
>
> https://github.com/Abscissa/installer/tree/create-zip
>
> The "how to" documentation is at the top of the source file:
>
> https://github.com/Abscissa/installer/blob/create-zip/create_dmd_release/create_dmd_release.d
>
> Important note for trying it out:
> --------------------------------------
> This tool depends on itself actually being in the official
> repo. Since
> this hasn't actually been pulled in yet (I don't think it's
> ready for a
> pull request just yet), you will need one small change to the
> instructions for step #2 to make it work right:
>
> Run the command line in step #2, but after it finishes cloning,
> go
> ahead and Ctrl-C kill it (or wait for it to end - either way).
> Then,
> copy the "create_dmd_release" directory tree into "[your temp
> dir]/.create_dmd_release/installer". You can check the temp dir
> it uses
> with "create_dmd_release --help". Finally, re-run the same
> original command, but add the flag "--skip-clone".
>
> DMD versions:
> -----------------------
> This is intended for DMDs *after* v2.063.2, because it requires
> some
> changes in the "master" of the "tools" repo.
>
> However, you *can* coax it to work on v2.063.2 by halting it
> after the
> "clone" stage, then updating
> "[tmp-dir]/.create_dmd_release/tools/*.mak" with the latest
> versions
> from master, and then resuming the process by re-running with
> "--skip-clone". But additional hacking may be needed on Windows.
>
> The current status:
> -----------------------
> - OSX 10.7: Works fine. (At least it did last time I tried it,
> a couple
> weeks ago. It *could* have regressed but I won't have access
> to the
> machine again until maybe Sunday.)
>
> - Debian 6 (32-bit OS): This tool isn't intended to support
> 32-bit OSes
> (since it must compile both 32-bit and 64-bit phobos), but it
> works
> fine up until it gets to the 64-bit stuff. If I manually
> comment out
> the 64-bit stuff, then everything else works fine.
>
> - Debian 6 (64-bit OS): It fails when linking the 32-bit phobos
> complaining that it can't link with libcurl. I'm fairly
> certain this
> is because I have no freaking idea how to install the 32-bit
> libcurl*-*-dev on a 64-bit Debian. (I *did* install
> "libcurl4-openssl-dev", but I'm pretty sure it only installed
> for
> 64-bit. And I can't figure out how to get the 32-bit.)
>
> - FreeBSD 9.1 (32-bit OS): Same as 32-bit Debian 6: It works,
> except
> for the 64-bit stuff.
>
> - FreeBSD 9.1 (64-bit OS): No idea, I don't have access to a
> 64-bit
> FreeBSD machine, and my stupid Intel CPU lacks the ability to
> run a
> 64-bit OS in a VM.
>
> - Windows 7 (64-bit OS): This is where I'm having the biggest
> trouble.
> I can coaxing it to handle v2.063.2 just fine (ie, if I
> update the
> "tools" makefiles as described above, and comment out all the
> "libcurl" and "chm" stuff.) However, on master, after it
> compiles
> DMD/druntime/phobos, the resulting DMD/phobos can't compile
> anything
> that uses phobos because OPTLINK will spew out a bunch of
> errors. I
> am *completely* at a loss on this one. It seems like an
> sc.ini issue,
> but I've spent days checking everything and I still can't
> make heads
> or tails of it.
You have to manually tell dpkg that it can use specific
architectures like 32bit in a 64bit system [1].
However this takes a bit of configuration to get working so this
might have to be left to the user and not placed into the script.
[1] https://wiki.debian.org/Multiarch/HOWTO
More information about the Digitalmars-d
mailing list