1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 <2009> 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 | Index | 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 <2009> 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 |
<== Date ==> | <== Thread ==> |
---|
Subject: | RE: Escaped strings from fullPathName.pl |
From: | "Mark Rivers" <[email protected]> |
To: | "Pedersen, UK (Ulrik)" <[email protected]>, <[email protected]> |
Date: | Thu, 16 Jul 2009 08:50:33 -0500 |
Ulrik, That is not happening for me with R3.13.10 on Windows. Here is
the output I get: cl /nologo /EHsc /GR
-c
/D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE /D__STDC__=0
/RTCsu /Zi /W3 /w44355 - DEPICS_BASE=h:/epics/base-3.14.10 /MTd
-DEPICS_DLL_NO - softMain.cpp Note that the –D for EPICS_BASE has forward slashes. I am running Visual Studio 2005, Cygwin perl (v5.10.0). I believe
the version of make is an old version from Cygwin before they broke it. Mark -----Original Message----- Hello, In a recent attempt to build base R3.14.10 on Windows I have come
across a build problem in src\softIoc\. The Makefile uses fullPathName.pl to create an EPICS_BASE variable which is the full path to the base installation. This is passed to the build of the softMain.cpp with the -D flag and used in the code to create a C string. Unfortunately fullPathName.pl creates a string with backslashes in it (when expanding the relative path ../../..). The compiler falls over when it get to compile this string with backslashes (see build output below). Strangely enough I have not come across this problem before when I have build base R3.14.10 under Windows - but I'm now using a new PC with a fresh installation of the build tools (Same versions as on my old PC though: Visual Studio .NET 2003, MinGW 5.1.4 for make and perl (ActiveState) 5.10.0.1003) When I fun fullPathName.pl manually it always seems to produce paths will backslashes on my PC. I suppose a fix can be done either by adding a flag to fullPathName.pl to force creation of paths with forward slashes - or alternatively
force the src/softIoc/Makefile to always substitute backward with forward slashes in the string contained in the EPICS_BASE (local) variable(???) Here is the output of the build of src/softIoc/softMain.cpp: cl /nologo /EHsc /GR
-c
/D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE /D__STDC__=0 /Ox
/GL /W3 /w44355 -DEPICS_BASE=W:\work\up45\R3.14.10\base /MT -DEPICS_DLL_NO -I . -I..\\O.Common - -I..\\..\\..\\include /Tp
..\\soft Main.cpp softMain.cpp ..\softMain.cpp(81) : warning C4129: 'u' : unrecognized character
escape sequence ..\softMain.cpp(81) : error C3847: wrong symbol in universal character; must use hex digits ..\softMain.cpp(81) : warning C4129: 'w' : unrecognized character
escape sequence ..\softMain.cpp(81) : warning C4129: 'R' : unrecognized character
escape sequence ..\softMain.cpp(82) : warning C4129: 'u' : unrecognized character
escape sequence ..\softMain.cpp(82) : error C3847: wrong symbol in universal character; must use hex digits ..\softMain.cpp(82) : warning C4129: 'w' : unrecognized character
escape sequence ..\softMain.cpp(82) : warning C4129: 'R' : unrecognized character
escape sequence mingw32-make[1]: *** [softMain.obj] Error 2 mingw32-make[1]: Leaving directory `W:/work/up45/R3.14.10/base/src/softIoc/O.win32-x86' mingw32-make: *** [install.win32-x86] Error 2 Has anyone by any chance come across the same problem? Cheers, Ulrik -------------------------------------------------------------------- Ulrik
Pedersen
phone: +44(0)1235-778580 Software
Engineer
email: [email protected] Diamond Light Source Ltd. Rutherford Appleton Laboratory, Chilton, Didcot Oxfordshire OX11 0DE -------------------------------------------------------------------- -- Scanned by iCritical. |