[CMake] What is the status of CMake on DJGPP?

Bill Hoffman bill.hoffman at kitware.com
Thu Nov 16 08:42:56 EST 2006


Alan W. Irwin wrote:
> On 2006-11-13 15:19-0500 Bill Hoffman wrote:
>
>> Alan W. Irwin wrote:
>>> One of the PLplot developers has been maintaining a special DJGPP 
>>> build of
>>> PLplot for some time, and I was wondering if it would be possible 
>>> for him to
>>> use our existing CMake build system instead?
>>> [...]If CMake is expected to work on DJGPP, what advice should I 
>>> pass on to him
>>> about using CMake on DJGPP?
>>> [...] On the other hand, if CMake is not expected to work on DJGPP, 
>>> it would be
>>> nice to know that as well so we won't waste our time with that 
>>> combination.
>> I am not sure if this has been tried.  However, with the right make I 
>> would think that you could get this
>> work.   For example I am using gmake with visual studio 8 cl and it 
>> works fine.   So, it all
>> depends on if there are odd things about the input to DJGPP.
>
> It appears cmake cannot even build on DJGPP.  I pass on this developer's
> report of the problems he had with that build.
>
> *************
> The bootstrap script doesn't work. It makes a lot of assumptions about
> filenames which aren't compatible with DJGPP~E namely it assumes you have
> more than 8.3 characters. This falls down when the script tries to make
> directories, which fail. Hand making the directories, you then get a fail
> because it can't find the compiler, trying "cc" first, which causes 
> DJGPP's
> bash to crash when it can't work. Getting rid of all other compilers, and
> leaving the only option as gcc, I end up with:
>
> Try: gcc
> Line: gcc  cmake_bootstrap_13401.test.c -o cmake_bootstrap_13401.test
> ----------  file   -----------------------
> ------------------------------------------
> h:/djgpp/lib/crt0.o(.data+0xc2):crt0.s: undefined reference to _main'
> h:/djgpp/lib/libc.a(crt1.o)(.text+0x404):crt1.c: undefined reference to
> _main'
> collect2: ld returned 1 exit status
> Test failed to compile
> Exiting due to signal SIGSEGV
> General Protection Fault at eip=0003852a
> eax=fa816604 ebx=001947a4 ecx=00000000 edx=fa816604 esi=00000004
> edi=00091860
> ebp=001942c8 esp=00194298 program=H:\DJGPP\BIN\BASH.EXE
> cs: sel=01a7  base=02990000  limit=001dffff
> ds: sel=01af  base=02990000  limit=001dffff
> es: sel=01af  base=02990000  limit=001dffff
> fs: sel=017f  base=0000ded0  limit=0000ffff
> gs: sel=01bf  base=00000000  limit=0010ffff
> ss: sel=01af  base=02990000  limit=001dffff
> App stack: [00195a68..00095a68]  Exceptn stack: [0009544c..0009350c]
>
> Call frame traceback EIPs:
>   0x0003852a
>   0x00068b22
>   0x00068bb3
>   0x0001eac8
>   0x001a0960
>
> After that, I tried boostrap --help, but it didn't work~E it just 
> tries to
> rebuild the test file, and I end up with the same stack dump.
>
> So it isn't looking easy at this stage.
> *************
>
> Unless someone here has some ideas, I think we will give up on CMake for
> DJGPP.
Why would you need to build CMake with DJGPP?  Can you not use the 
windows binaries for cmake
to run the DJGPP compiler?   For example, CMake can not be built by 
watcom, but it can be used to build
projects that use the watcom compiler.

-Bill




More information about the CMake mailing list