Scons: GCC Ignorerer -c

stemmer
1

Jeg bruker en MinGW basert GCC cross-kompilatoren å kompilere et prosjekt som bruker scons som sin build system.

Python er en nativ versjon 2.6.2, som ikke er spesielt utarbeidet for MinGW (eller Cygwin).

Men jeg kjører inn i et problem med build:

F:/pedigree/compilers/bin/i686-elf-gcc -o build\src\user\applications\apptest\ma
in.obj -c -std=gnu99 -march=i486 -fno-builtin -m32 -g0 -O3 -Wno-long-long -Wnest
ed-externs -Wall -Wextra -Wpointer-arith -Wcast-align -Wwrite-strings -Wno-long-
long -Wno-variadic-macros -Wno-unused -Wno-unused-variable -Wno-conversion -Wno-
format -Wno-empty-body -fno-stack-protector -DTHREADS -DDEBUGGER -DDEBUGGER_QWER
TY -DSERIAL_IS_FILE -DECHO_CONSOLE_TO_SERIAL -DKERNEL_NEEDS_ADDRESS_SPACE_SWITCH
 -DADDITIONAL_CHECKS -DBITS_32 -DKERNEL_STANDALONE -DVERBOSE_LINKER -DX86 -DX86_
COMMON -DLITTLE_ENDIAN -D__UD_STANDALONE__ -DINSTALLER -Isrc\subsys\posix\includ
e -Ibuild\src\user\applications\apptest -Isrc\user\applications\apptest src\user
\applications\apptest\main.c
f:/pedigree/compilers/bin/../lib/gcc/i686-elf/4.4.1/../../../../i686-elf/bin/ld.
exe: crt0.o: No such file: No such file or directory

Hvis jeg legger -c til CFLAGS, får jeg en kompilert objekt kalt main.obj -c (det er et mellomrom mellom obj og -c der).

Er det noen som har noen anelse om hva som skjer? Er det noe jeg kan gjøre for å løse dette?

Publisert på 06/08/2009 klokken 04:12
kilden bruker
På andre språk...                            


1 svar

stemmer
2

Prosjektet bruker POSIX plattform for å håndheve progarm og objekt filtyper, men POSIX plattformen i scons definerer en funksjon "escape":

def escape(arg):
    "escape shell special characters"
    slash = '\\'
    special = '"$()'

    arg = string.replace(arg, slash, slash+slash)
    for c in special:
        arg = string.replace(arg, c, slash+c)

    return '"' + arg + '"'

Når det unnslipper backslashes, herjer det kaos i Windows-miljøet. Endre til en nøytral plattform, og med angivelse av utvidelser eksplisitt, løser problemet.

Svarte 06/08/2009 kl. 04:21
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more