Mail Archives: djgpp/2002/03/06/00:30:09
> First I would really like to thank you for your help so that I can get
> Libxslt ported to DJGPP. I think dos needs a good xsl processor, seeing as
> xml is becoming so popular, don't you agree?
I use it in my day job, I agree. I'm glad to help people port new products,
which is why I'm happy to take the time to work out the problems.
> I will try to be as specific as possible. Here is my 'Simtel Bash':
>
> GNU bash, version 2.04.7(1)-release (i686-pc-msdosdjgpp)
> 12/24/2001 10:59p 573,440 bash.exe
> 04/05/1999 09:49p 2,048 sh.exe
This is good - this is the newest 2.04 release based on the V2.03
tested library. This should also work just fine on Windows 2000 (mostly).
> I have really tried everything. This is what I know:
> I can build applications that come with a djgpp makefile without problem
> I cannot build any applications (so far) that require me to 'configure'
> first.
This just means someone hasn't taken the time to make configure work for
that package on DJGPP. Quite often it's easier for someone who ports
it to just provide an updated makefile by hand edits instead of trying
to get the configure scripts to do the right thing. If no one has ported
before - then you are blazing the path ...
> With 'configure first' applications using 'Simtel bash', I always get a
> million errors that look like this:
>
> d:/user/djgpp/bin/as.exe: bfd assertion fail
> /dj204/gnu/binutl-2.112/bfd/coff-i386.c:529
> d:\user\djgpp\tmp\cc0mzF8o.s:8883: Error: cannot represent relocation type
> BFD_RELOC_386_GOT32
PIC errors. There is a key configuration (hopefully) which turns off
shared library building. It needs to be no shared libraries.
> With 'configure first' applications using 'rice bash', I always get a single
> error that looks like this:
>
> D:\\USER\\DJGPP\\bin\\gcc.exe -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I../libxslt
> -I/dev/env/DJDIR/include/libxml2/libxml -I/dev/env/DJDIR/include/libxml2 -g
> -O2 -c xslt.c -fPIC -DPIC -o .libs/xslt.lo
> .../libtool: D:\USER\DJGPP\bin\gcc.exe: command not found
I don't know the cause of this right now - but the creation of xslt.lo
makes me sure this is a command that shouldn't be executed at all (which
might be the fix ...)
> You are right, by both instances is '-PIC' requested from GCC. What can I do
> to illiminate this? Can I edit the makefile to get rid of it?
anything that has PIC, or libraryname.so or libraryname.lo is shared library
based and would need to be changed also. Depending on your skills and other
hints that DJGPP users may provide - do what works best for you ... Fixing
the configure would be great but may be more effort.
> What's a 'shared library', anyway (boy.... is he dumb :-(
In windows speak, a DLL. It's a piece of code which can be loaded by
another image. Your program can be smaller since it doesn't include
commonly used/shared procedures. On a system like Linux or Windows
this makes lots of sense, you only have one copy on disk, one copy
in shared memory (that multiple programs can use). Easy to fix a bug
by replacing the library.
Since most of the GNU distributions are very Unix/Linux biased, they
assume you build in a shared library environment. Quite often a major
effort to fix.
On DOS, with only one program running at a time it doesn't make as
much sense. Tends to waste memory (you bring everything in the DLL
in, even if you only need 1 procedure). Many files to distribute.
No "standard" location to put them. No "standard" format.
One of the things I've been working on is trying to provide a better
DLL type capability for DJGPP. Maybe in a future release.
Thanks for working through this.
- Raw text -