Difference between revisions of "Talk:Compiling EiffelStudio"
(→Compiler Error with Runtime in Windows) |
|||
(17 intermediate revisions by 6 users not shown) | |||
Line 74: | Line 74: | ||
sorry wont be able to compile again until after eastern | sorry wont be able to compile again until after eastern | ||
+ | |||
+ | '''[[User:Manus|Manus]] 22:00, 13 April 2006 (PST)''' | ||
+ | |||
+ | Looks like the runtime was not compiled. See the instructions at [[Compiling_EiffelStudio|Compiling EiffelStudio]]. | ||
+ | |||
+ | '''[[User:FoB|FoB]] 11:23, 18 April 2006 (CEST)''' | ||
+ | |||
+ | when i compile the runtime i get 10 errors "path not found" it looks like the following line is guilty of producing this error | ||
+ | "%MSVCDir%\bin\nmake" %1 | ||
+ | |||
+ | i added the following line to the file configure.bat (i tried both nmake i have on my computer) | ||
+ | set MSVCDir=D:\Programme\psdk;C:\Programme\Microsoft Visual Studio 8\VC\bin | ||
+ | set MSVCDir=D:\Programme\Microsoft.NET\SDK\v2.0;C:\Programme\Microsoft Visual Studio 8\VC\bin | ||
+ | |||
+ | unfortunatly i now get 10 times the following error: | ||
+ | Die Syntax für den Dateinamen, Verzeichnisnamen oder die Datenträgerbezeichnung ist falsch. | ||
+ | |||
+ | '''[[User:Patrickr|Patrickr]] 17:09, 18 April 2006 (CEST)''' | ||
+ | |||
+ | You have to give a single path, not a list of paths. The correct path should be C:\Programme\Microsoft Visual Studio 8\VC\bin | ||
+ | |||
+ | |||
+ | '''[[User:FoB|FoB]] 19:43, 18 April 2006 (CEST)'''<br> | ||
+ | the problem is, that nmake.exe is in psdk folder and the cl.exe is in the VC\bin folder | ||
+ | if I only give a singel path either nmake or cl aren't found. giving a set of pathes both executables are found, but still the syntax error occurs... | ||
+ | |||
+ | |||
+ | '''[[User:FoB|FoB]] 08:51, 25 April 2006 (CEST)'''<br> | ||
+ | my problem is solved :-)<br> | ||
+ | [[user:manus|manus]] has posted the solution on the es-devl mailinglist ([http://origo.ethz.ch/pipermail/es-devel/2006-April/000082.html link]).<br> | ||
+ | you need to get this file ([http://origo.ethz.ch/pipermail/es-devel/attachments/20060424/e5afb9a9/windows-msc-x86-2005.obj windows-msc-x86-2005]) and replace the existing one: <code>%EIFFEL_SRC%/C/CONFIGS/windows-msc-x86</code> | ||
+ | |||
+ | == mkdep not found == | ||
+ | |||
+ | while compiling the run-time on linux I get the following error: | ||
+ | |||
+ | /bin/sh: /home/manus/local/56dev/C/mkdep: Datei oder Verzeichnis nicht gefunden (file or directory not found) | ||
+ | make[2]: *** Keine Regel vorhanden, um das Target »MTidrs.o«, | ||
+ | benötigt von »all«, zu erstellen. Schluss. | ||
+ | make[1]: *** [subdirs] Fehler 1 | ||
+ | make: *** [all] Fehler 2 | ||
+ | |||
+ | I don't have any idea why it looks for mkdep in that directory. | ||
+ | |||
+ | '''[[User:Manus|Manus]] 9:25, 26 April 2006 (PST)''' | ||
+ | This errors is harmless if you do not change the dependencies of the runtime header files. If you do, make sure to update this value to $EIFFEL_SRC/C/mkdep so that the generated Makefile has the proper dependencies. | ||
+ | |||
+ | == Eiffel Delivery == | ||
+ | |||
+ | In the whole Compiling EiffelStudio Routine there is no word about building Eiffel Delivery. Here's the instructions for linux from the es-devel mailinglist: | ||
+ | <pre>To build the minimal repository of the compiler, do the following checkout: | ||
+ | |||
+ | mkdir Eiffel57 | ||
+ | cd Eiffel57 | ||
+ | svn co /trunk/Delivery/studio | ||
+ | svn co /trunk/Delivery/eifinit | ||
+ | |||
+ | cd studio/spec | ||
+ | mkdir $ISE_PLATFORM | ||
+ | mkdir $ISE_PLATFORM/bin | ||
+ | mkdir $ISE_PLATFORM/include | ||
+ | mkdir $ISE_PLATFORM/lib | ||
+ | |||
+ | cp unix/* $ISE_PLATFORM/bin | ||
+ | rm -rf unix | ||
+ | |||
+ | cd $EIFFEL_SRC/C/run-time | ||
+ | cp *.h $ISE_EIFFEL/studio/spec/$ISE_PLATFORM/include | ||
+ | cp ../config.sh $ISE_EIFFEL/studio/spec/$ISE_PLATFORM/include | ||
+ | cp lib* $ISE_EIFFEL/studio/spec/$ISE_PLATFORM/lib | ||
+ | cp x2c $ISE_EIFFEL/studio/spec/$ISE_PLATFORM/bin | ||
+ | cd .. | ||
+ | cp ipc/daemon/estudio $ISE_EIFFEL/studio/spec/$ISE_PLATFORM/bin | ||
+ | |||
+ | mkdir $ISE_EIFFEL/studio/help/defaults/$ISE_PLATFORM | ||
+ | mv $ISE_EIFFEL/studio/help/defaults/unix/* | ||
+ | $ISE_EIFFEL/studio/help/defaults/$ISE_PLATFORM | ||
+ | rm -rf $INSTALL_DIR/studio/help/defaults/unix</pre> | ||
+ | |||
+ | [[User:DavidFlatz|DavidFlatz]] 13:07, 2 May 2006 (CEST) | ||
+ | |||
+ | == compiling errors == | ||
+ | |||
+ | I get errors while compiling ES: | ||
+ | |||
+ | gcc: /home/maser/eth/semester4/Software_Architecture/eiffelsoftware/57dev//C/bench/libmtcompiler.a: Datei oder Verzeichnis nicht gefunden | ||
+ | gcc: /home/maser/eth/semester4/Software_Architecture/eiffelsoftware/57dev//C/ipc/ewb/libmtewb.a: Datei oder Verzeichnis nicht gefunden | ||
+ | gcc: /home/maser/eth/semester4/Software_Architecture/eiffelsoftware/57dev//C/ipc/shared/libipc.a: Datei oder Verzeichnis nicht gefunden | ||
+ | gcc: /home/maser/eth/semester4/Software_Architecture/eiffelsoftware/57dev//C/platform/libplatform.a: Datei oder Verzeichnis nicht gefunden | ||
+ | make: *** [ec] Fehler 1 | ||
+ | |||
+ | Of course it says that I should get errors and I do the thing with sed and get: | ||
+ | |||
+ | gcc: /home/maser/eth/semester4/Software_Architecture/eiffelsoftware/57dev//C/bench/libmtwcompiler.a: Datei oder Verzeichnis nicht gefunden | ||
+ | gcc: /home/maser/eth/semester4/Software_Architecture/eiffelsoftware/57dev//C/ipc/ewb/libmtewb.a: Datei oder Verzeichnis nicht gefunden | ||
+ | gcc: /home/maser/eth/semester4/Software_Architecture/eiffelsoftware/57dev//C/ipc/shared/libipc.a: Datei oder Verzeichnis nicht gefunden | ||
+ | gcc: /home/maser/eth/semester4/Software_Architecture/eiffelsoftware/57dev//C/platform/libplatform.a: Datei oder Verzeichnis nicht gefunden | ||
+ | make: *** [ec] Fehler 1 | ||
+ | |||
+ | This isn't normal, is it? | ||
+ | |||
+ | Looks to me that the run-time in C was not properly compiled. Can you check that ./quick_configure generates all the above without errors? | ||
+ | |||
+ | --[[User:Manus|manus]] 23:46, 2 May 2006 (CEST) | ||
+ | |||
+ | Well, i get the mkdep not found error. How harmless is that error? | ||
+ | If I do a find . -iname "*.a" I get nothing, so I guess it doesn't generate the files. | ||
+ | (I get the same error with the automatic build script) | ||
+ | |||
+ | [[User:Maser|Maser]] 00:42, 3 May 2006 (CEST) |
Latest revision as of 19:16, 14 September 2006
i installed everything acording to the howto here in the wiki
i have win2000 on my machine installed the 3 .net products acording to the win32 c compiler installation page installed eiffel studio 57 got everthyng from the svn compiled the libraries
when compiling the eiffel studio the following error occurs:
big_file_C1_c.c 1 Datei(en) kopiert. emain.c 1 Datei(en) kopiert. /usr/bin/link: invalid option -- S Try `/usr/bin/link --help' for more information. NMAKE : fatal error U1077: 'D:\Programme\cygwin\bin\link.EXE' : return code '0x1' Stop.
the same error occurs when i try to compiel a eiffel project from the downloaded eiffel studio...
any ideas help ??
Patrickr 21:21, 13 April 2006 (CEST)
There seems to be a problem with the paths and the wrong link command is used. Try to change the order of the paths so that the linker from the microsoft compiler is found before the linker in the cygwin environment.
try 2
thx for the fast response ok, i changed my path and put cygwin at the end:
next error:
big_file_C1_c.c 1 Datei(en) kopiert. emain.c 1 Datei(en) kopiert. Microsoft (R) Incremental Linker Version 8.00.50727.42 Copyright (C) Microsoft Corporation. All rights reserved. -STACK:5000000 -NODEFAULTLIB:libc -STACK:5000000 -NODEFAULTLIB:libc -SUBSYSTEM:C ONSOLE -OUT:ec.exe e1\emain.obj D:\PROGRA~1\EIFFEL~1\studio\spec\windows\lib\msc\mtwkbench.lib E:\Files\'ETH~1\SASS06~1\57dev\C\bench\mtcompiler.lib E:\Files\'ETH~1\SASS06~1\57dev\C\platform\platform.lib E:\Files\'ETH~1\SASS06~1\57dev\Eiffel\library\cli_writer\spec\msc\lib\cli_writer.lib USER32.lib WSOCK32.lib ADVAPI32.lib GDI32.lib SHELL32.lib COMDLG32.lib UUID.lib OLE32.lib OLEAUT32.lib COMCTL32.lib MPR.LIB ec.res C79\Cobj79.lib C78\Cobj78.lib C77\Cobj77.lib C76\Cobj76.lib C75\Cobj75.lib C74\Cobj74.lib C73\Cobj73.lib C72\Cobj72.lib C71\Cobj71.lib C70\Cobj70.lib C69\Cobj69.lib C68\Cobj68.lib C67\Cobj67.lib C66\Cobj66.lib C65\Cobj65.lib C64\Cobj64.lib C63\Cobj63.lib C62\Cobj62.lib C61\Cobj61.lib C60\Cobj60.lib C59\Cobj59.lib C58\Cobj58.lib C57\Cobj57.lib C56\Cobj56.lib C55\Cobj55.lib C54\Cobj54.lib C53\Cobj53.lib C52\Cobj52.lib C51\Cobj51.lib C50\Cobj50.lib C49\Cobj49.lib C48\Cobj48.lib C47\Cobj47.lib C46\Cobj46.lib C45\Cobj45.lib C44\Cobj44.lib C43\Cobj43.lib C42\Cobj42.lib C41\Cobj41.lib C40\Cobj40.lib C39\Cobj39.lib C38\Cobj38.lib C37\Cobj37.lib C36\Cobj36.lib C35\Cobj35.lib C34\Cobj34.lib C33\Cobj33.lib C32\Cobj32.lib C31\Cobj31.lib C30\Cobj30.lib C29\Cobj29.lib C28\Cobj28.lib C27\Cobj27.lib C26\Cobj26.lib C25\Cobj25.lib C24\Cobj24.lib C23\Cobj23.lib C22\Cobj22.lib C21\Cobj21.lib C20\Cobj20.lib C19\Cobj19.lib C18\Cobj18.lib C17\Cobj17.lib C16\Cobj16.lib C15\Cobj15.lib C14\Cobj14.lib C13\Cobj13.lib C12\Cobj12.lib C11\Cobj11.lib C10\Cobj10.lib C9\Cobj9.lib C8\Cobj8.lib C7\Cobj7.lib C6\Cobj6.lib C5\Cobj5.lib C4\Cobj4.lib C3\Cobj3.lib C2\Cobj2.lib C1\Cobj1.lib E1\Eobj1.lib LINK : fatal error LNK1181: cannot open input file' E:\Files\'ETH~1\SASS06~1\57dev\C\bench\mtcompiler.lib' NMAKE : fatal error U1077: '"C:\Programme\Microsoft Visual Studio 8\VC\bin\link.EXE"' : return code '0x49d' Stop.
sorry wont be able to compile again until after eastern
Manus 22:00, 13 April 2006 (PST)
Looks like the runtime was not compiled. See the instructions at Compiling EiffelStudio.
FoB 11:23, 18 April 2006 (CEST)
when i compile the runtime i get 10 errors "path not found" it looks like the following line is guilty of producing this error
"%MSVCDir%\bin\nmake" %1
i added the following line to the file configure.bat (i tried both nmake i have on my computer)
set MSVCDir=D:\Programme\psdk;C:\Programme\Microsoft Visual Studio 8\VC\bin set MSVCDir=D:\Programme\Microsoft.NET\SDK\v2.0;C:\Programme\Microsoft Visual Studio 8\VC\bin
unfortunatly i now get 10 times the following error:
Die Syntax für den Dateinamen, Verzeichnisnamen oder die Datenträgerbezeichnung ist falsch.
Patrickr 17:09, 18 April 2006 (CEST)
You have to give a single path, not a list of paths. The correct path should be C:\Programme\Microsoft Visual Studio 8\VC\bin
FoB 19:43, 18 April 2006 (CEST)
the problem is, that nmake.exe is in psdk folder and the cl.exe is in the VC\bin folder
if I only give a singel path either nmake or cl aren't found. giving a set of pathes both executables are found, but still the syntax error occurs...
FoB 08:51, 25 April 2006 (CEST)
my problem is solved :-)
manus has posted the solution on the es-devl mailinglist (link).
you need to get this file (windows-msc-x86-2005) and replace the existing one: %EIFFEL_SRC%/C/CONFIGS/windows-msc-x86
mkdep not found
while compiling the run-time on linux I get the following error:
/bin/sh: /home/manus/local/56dev/C/mkdep: Datei oder Verzeichnis nicht gefunden (file or directory not found) make[2]: *** Keine Regel vorhanden, um das Target »MTidrs.o«, benötigt von »all«, zu erstellen. Schluss. make[1]: *** [subdirs] Fehler 1 make: *** [all] Fehler 2
I don't have any idea why it looks for mkdep in that directory.
Manus 9:25, 26 April 2006 (PST)
This errors is harmless if you do not change the dependencies of the runtime header files. If you do, make sure to update this value to $EIFFEL_SRC/C/mkdep so that the generated Makefile has the proper dependencies.
Eiffel Delivery
In the whole Compiling EiffelStudio Routine there is no word about building Eiffel Delivery. Here's the instructions for linux from the es-devel mailinglist:
To build the minimal repository of the compiler, do the following checkout: mkdir Eiffel57 cd Eiffel57 svn co /trunk/Delivery/studio svn co /trunk/Delivery/eifinit cd studio/spec mkdir $ISE_PLATFORM mkdir $ISE_PLATFORM/bin mkdir $ISE_PLATFORM/include mkdir $ISE_PLATFORM/lib cp unix/* $ISE_PLATFORM/bin rm -rf unix cd $EIFFEL_SRC/C/run-time cp *.h $ISE_EIFFEL/studio/spec/$ISE_PLATFORM/include cp ../config.sh $ISE_EIFFEL/studio/spec/$ISE_PLATFORM/include cp lib* $ISE_EIFFEL/studio/spec/$ISE_PLATFORM/lib cp x2c $ISE_EIFFEL/studio/spec/$ISE_PLATFORM/bin cd .. cp ipc/daemon/estudio $ISE_EIFFEL/studio/spec/$ISE_PLATFORM/bin mkdir $ISE_EIFFEL/studio/help/defaults/$ISE_PLATFORM mv $ISE_EIFFEL/studio/help/defaults/unix/* $ISE_EIFFEL/studio/help/defaults/$ISE_PLATFORM rm -rf $INSTALL_DIR/studio/help/defaults/unix
DavidFlatz 13:07, 2 May 2006 (CEST)
compiling errors
I get errors while compiling ES:
gcc: /home/maser/eth/semester4/Software_Architecture/eiffelsoftware/57dev//C/bench/libmtcompiler.a: Datei oder Verzeichnis nicht gefunden gcc: /home/maser/eth/semester4/Software_Architecture/eiffelsoftware/57dev//C/ipc/ewb/libmtewb.a: Datei oder Verzeichnis nicht gefunden gcc: /home/maser/eth/semester4/Software_Architecture/eiffelsoftware/57dev//C/ipc/shared/libipc.a: Datei oder Verzeichnis nicht gefunden gcc: /home/maser/eth/semester4/Software_Architecture/eiffelsoftware/57dev//C/platform/libplatform.a: Datei oder Verzeichnis nicht gefunden make: *** [ec] Fehler 1
Of course it says that I should get errors and I do the thing with sed and get:
gcc: /home/maser/eth/semester4/Software_Architecture/eiffelsoftware/57dev//C/bench/libmtwcompiler.a: Datei oder Verzeichnis nicht gefunden gcc: /home/maser/eth/semester4/Software_Architecture/eiffelsoftware/57dev//C/ipc/ewb/libmtewb.a: Datei oder Verzeichnis nicht gefunden gcc: /home/maser/eth/semester4/Software_Architecture/eiffelsoftware/57dev//C/ipc/shared/libipc.a: Datei oder Verzeichnis nicht gefunden gcc: /home/maser/eth/semester4/Software_Architecture/eiffelsoftware/57dev//C/platform/libplatform.a: Datei oder Verzeichnis nicht gefunden make: *** [ec] Fehler 1
This isn't normal, is it?
Looks to me that the run-time in C was not properly compiled. Can you check that ./quick_configure generates all the above without errors?
--manus 23:46, 2 May 2006 (CEST)
Well, i get the mkdep not found error. How harmless is that error? If I do a find . -iname "*.a" I get nothing, so I guess it doesn't generate the files. (I get the same error with the automatic build script)
Maser 00:42, 3 May 2006 (CEST)