dmd on ubuntu 64: how to unittest phobos with -m32?
Andrei Alexandrescu via Digitalmars-d
digitalmars-d at puremagic.com
Thu Aug 6 09:06:31 PDT 2015
On 8/6/15 10:30 AM, Jacob Carlborg wrote:
> On 06/08/15 16:18, Andrei Alexandrescu wrote:
>> So I am trying to unittest phobos in its 32-bit build on a Ubuntu64
>> machine. I installed these additional packages:
>>
>> sudo apt-get install libc6-dev-i386 libcurl3:i386
>>
>> When I try to unittest a phobos module, e.g.:
>>
>> make -f posix.mak MODEL=32 std/conv.test
>>
>> I get:
>>
>> /usr/bin/ld: cannot find -lcurl
>>
>> What do I need to do to link libcurl/32 properly on my 64-bit platform?
>> I've searched around for a while, no avail.
>
> Is the path were the 32bit libraries are installed in the standard
> search path? Otherwise add them, I'm guessing it's /usr/lib32 or
> something like that.
I've added -L-L/usr/lib/i386-linux-gnu, where the 32-bit libs are on
Ubuntu. Ultimately the command that fails is:
gcc /tmp/parallelism.o -o /tmp/dmd_runqdeQbJ -g -m32
-L/usr/lib/i386-linux-gnu -lcurl generated/linux/debug/32/libphobos2.a
-lpthread -lm -lrt
Indeed some but not all of the libcurl paraphernalia does seem to be there:
ls /usr/lib/i386-linux-gnu/libcurl*
/usr/lib/i386-linux-gnu/libcurl.so.3
/usr/lib/i386-linux-gnu/libcurl.so.4
/usr/lib/i386-linux-gnu/libcurl.so.4.3.0
So the .a file is missing. How do I install it?
> BTW, the :i386 packages have never worked properly for me (they ended up
> uninstalling the whole GUI). I install the "ia32-libs" and
> "gcc-multilib" packages.
gcc-multilib was already installed, and:
E: Package 'ia32-libs' has no installation candidate
Thanks,
Andrei
More information about the Digitalmars-d
mailing list