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 | 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 |
<== Date ==> | <== Thread ==> |
---|
Subject: | Re: [help] EPICS build no good |
From: | Pavel Masloff <[email protected]> |
To: | Mark Rivers <[email protected]> |
Cc: | [email protected], [email protected] |
Date: | Sun, 4 Dec 2011 22:48:57 +0300 |
Hi Pavel,
What version of base is this?
I think you can avoid this error by adding this line to base/configure/os/CONFIG_SITE.win32-x86-mingw.win32-x86-mingw
USR_CFLAGS += -fpermissive
USR_CXXFLAGS += -fpermissive
But if this is the latest version of base then I think there is an error that should be fixed.
Mark
________________________________________
From: Pavel Masloff [mailto:[email protected]]
Sent: Friday, December 02, 2011 4:13 PM
To: Mark Rivers
Cc: [email protected]; [email protected]
Subject: Re: [help] EPICS build no good
Mark,
I did what you'd proposed.
This is what i get:
"Installing generic include file ../../../include/tsDefs.h"
windres -I. -I../O.Common -I. -I../../../src/libCom/osi/os/WIN32 -I../../../src/libCom/osi/os/posix -I../../../src/libC
m/osi/os/default -I.. -I../../../src/libCom/bucketLib -I../../../src/libCom/ring -I../../../src/libCom/calc -I../../../
rc/libCom/cvtFast -I../../../src/libCom/cppStd -I../../../src/libCom/cxxTemplates -I../../../src/libCom/dbmf -I../../..
src/libCom/ellLib -I../../../src/libCom/env -I../../../src/libCom/error -I../../../src/libCom/fdmgr -I../../../src/libC
m/freeList -I../../../src/libCom/gpHash -I../../../src/libCom/iocsh -I../../../src/libCom/logClient -I../../../src/libC
m/macLib -I../../../src/libCom/misc -I../../../src/libCom/osi -I../../../src/libCom/taskwd -I../../../src/libCom/timer
I../../../src/libCom/tsDefs -I../../../include/os/WIN32 -I../../../include ../Com.rc Com.coff
""
g++ -c -D_MINGW -O3 -Wall -m32 -D_DLL -MMD -I. -I../O.Common -I. -I../../../src/libCom/osi/
s/WIN32 -I../../../src/libCom/osi/os/posix -I../../../src/libCom/osi/os/default -I.. -I../../../src/libCom/bucketLib -I
./../../src/libCom/ring -I../../../src/libCom/calc -I../../../src/libCom/cvtFast -I../../../src/libCom/cppStd -I../../.
/src/libCom/cxxTemplates -I../../../src/libCom/dbmf -I../../../src/libCom/ellLib -I../../../src/libCom/env -I../../../s
c/libCom/error -I../../../src/libCom/fdmgr -I../../../src/libCom/freeList -I../../../src/libCom/gpHash -I../../../src/l
bCom/iocsh -I../../../src/libCom/logClient -I../../../src/libCom/macLib -I../../../src/libCom/misc -I../../../src/libCo
/osi -I../../../src/libCom/taskwd -I../../../src/libCom/timer -I../../../src/libCom/tsDefs -I../../../include/os/WIN32
I../../../include ../../../src/libCom/bucketLib/bucketLib.c
../../../src/libCom/bucketLib/bucketLib.c: In function <ITEM** bucketStringCompare(ITEM**, const void*)>:
../../../src/libCom/bucketLib/bucketLib.c:125:21: error: incorrect transform from <const void*> to <const char*>
-fpermissive]
../../../src/libCom/bucketLib/bucketLib.c: in function <BUCKETID bucketUnsignedHash(BUCKET*, const void*)>:
../../../src/libCom/bucketLib/bucketLib.c:147:25: error: incorrect transform from <const void*> to <const unsigne
int*> [-fpermissive]
../../../src/libCom/bucketLib/bucketLib.c: In function <BUCKETID bucketStringHash(BUCKET*, const void*)>:
../../../src/libCom/bucketLib/bucketLib.c:197:21: error: incorrect transform from <const void*> to <const char*>
-fpermissive]
mingw32-make[3]: *** [bucketLib.o] Error 1
mingw32-make[3]: Leaving directory `C:/epics/base/bin/win32-x86-mingw/src/libCom/O.win32-x86-mingw'
mingw32-make[2]: *** [install.win32-x86-mingw] Error 2
mingw32-make[2]: Leaving directory `C:/epics/base/bin/win32-x86-mingw/src/libCom'
mingw32-make[1]: *** [libCom.install] Error 2
mingw32-make[1]: Leaving directory `C:/epics/base/bin/win32-x86-mingw/src'
mingw32-make: *** [src.install] Error 2
mingw32-make: Leaving directory `C:/epics/base/bin/win32-x86-mingw'
On Sat, Dec 3, 2011 at 12:45 AM, Mark Rivers <[email protected]> wrote:
Hi Pavel,
I understand now. I thought you were just using MinGW for gnumake. But you want to use the gcc compiler as well.
You have set the wrong value for EPICS_HOST_ARCH. You have set it to win32-x86, which is the architecture that requires Visual Studio.
You need to set the environment variable EPICS_HOST_ARCH to win32-x86-mingw. That will use gcc.
Mark
________________________________________
From: Pavel Masloff [mailto:[email protected]]
Sent: Friday, December 02, 2011 3:41 PM
To: Mark Rivers; [email protected]
Subject: Re: [help] EPICS build no good
Hi Mark,
Do I really need MS Visual Studio?
According to this (http://www.aps.anl.gov/epics/base/win32.phphttp://www.aps.anl.gov/epics/base/win32.php):
Download and install a compiler:
• Microsoft Visual C++ Express 2010, or
• MinGW version of GCC
• You can also use Microsoft's commercial C++ development tools if you have them.
I used MinGW. I see 'or' here.
On Sat, Dec 3, 2011 at 12:27 AM, Mark Rivers <[email protected]> wrote:
Hi Pavel,
I think the problem is that you have not set up your environment for Visual Studio. Your PATH environment variable does not include the path to the Visual Studio compiler. You need to execute the "vcvarsall.bat file that comes with Visual Studio.
This is the batch file I use to set up EPICS builds for win32-x86.
rem This file sets up for an EPICS win32-x86 build
set EPICS_HOST_ARCH=win32-x86
rem This is the location of "make"
set PATH=C:\Program Files\GnuWin32\bin;C:\Perl\bin;H:\epics\base\bin\win32-x86;%PATH%
"C:\Program Files\Microsoft Visual Studio 9.0\VC\vcvarsall.bat" x86
Mark
________________________________________
From: [email protected] [mailto:[email protected]] On Behalf Of Pavel Masloff
Sent: Friday, December 02, 2011 2:52 PM
To: [email protected]; Dirk Zimoch; [email protected]
Subject: [help] EPICS build no good
Hello,
This is my first attempt ever to build EPICS (and it's the first time I try to compile something really big, as a matter of fact).
In accordance with the following instructions (http://www.aps.anl.gov/epics/base/win32.php) and recommendations by Dirk Zimoch (thanks!), I tried to build EPICS baseR3.14.12.1 on Windows 7 Starter using:
* MinGW version of GCC
* ActiveState Perl (ActivePerl-5.14.2.1402-MSWin32-x86)
This is what I get :
"Installing generic include file ../../../include/tsDefs.h"
rc -l 0x409 -I. -I../O.Common -I. -I../../../src/libCom/osi/os/WIN32 -I../../../src/libCom/osi/os/default -I.. -I../../.
./src/libCom/bucketLib -I../../../src/libCom/ring -I../../../src/libCom/calc -I../../../src/libCom/cvtFast -I../../../sr
c/libCom/cppStd -I../../../src/libCom/cxxTemplates -I../../../src/libCom/dbmf -I../../../src/libCom/ellLib -I../../../sr
c/libCom/env -I../../../src/libCom/error -I../../../src/libCom/fdmgr -I../../../src/libCom/freeList -I../../../src/libCo
m/gpHash -I../../../src/libCom/iocsh -I../../../src/libCom/logClient -I../../../src/libCom/macLib -I../../../src/libCom/
misc -I../../../src/libCom/osi -I../../../src/libCom/taskwd -I../../../src/libCom/timer -I../../../src/libCom/tsDefs -I.
./../../include/os/WIN32 -I../../../include -fo Com.res ../Com.rc
process_begin: CreateProcess(NULL, rc -l 0x409 -I. -I../O.Common -I. -I../../../src/libCom/osi/os/WIN32 -I../../../src/l
ibCom/osi/os/default -I.. -I../../../src/libCom/bucketLib -I../../../src/libCom/ring -I../../../src/libCom/calc -I../../
../src/libCom/cvtFast -I../../../src/libCom/cppStd -I../../../src/libCom/cxxTemplates -I../../../src/libCom/dbmf -I../..
/../src/libCom/ellLib -I../../../src/libCom/env -I../../../src/libCom/error -I../../../src/libCom/fdmgr -I../../../src/l
ibCom/freeList -I../../../src/libCom/gpHash -I../../../src/libCom/iocsh -I../../../src/libCom/logClient -I../../../src/l
ibCom/macLib -I../../../src/libCom/misc -I../../../src/libCom/osi -I../../../src/libCom/taskwd -I../../../src/libCom/tim
er -I../../../src/libCom/tsDefs -I../../../include/os/WIN32 -I../../../include -fo Com.res ../Com.rc, ...) failed.
make (e=2): No such file.
mingw32-make[3]: *** [Com.res] Error 2
mingw32-make[3]: Leaving directory `C:/epics/base/bin/win32-x86/src/libCom/O.win32-x86'
mingw32-make[2]: *** [install.win32-x86] Error 2
mingw32-make[2]: Leaving directory `C:/epics/base/bin/win32-x86/src/libCom'
mingw32-make[1]: *** [libCom.install] Error 2
mingw32-make[1]: Leaving directory `C:/epics/base/bin/win32-x86/src'
mingw32-make: *** [src.install] Error 2
mingw32-make: Leaving directory `C:/epics/base/bin/win32-x86'
Why can it be so? The same thing using GnuWin32:
"Installing generic include file ../../../include/tsDefs.h"
rc -l 0x409 -I. -I../O.Common -I. -I../../../src/libCom/osi/os/WIN32 -I../../../src/libCom/osi/os/default -I.. -I../../.
./src/libCom/bucketLib -I../../../src/libCom/ring -I../../../src/libCom/calc -I../../../src/libCom/cvtFast -I../../../sr
c/libCom/cppStd -I../../../src/libCom/cxxTemplates -I../../../src/libCom/dbmf -I../../../src/libCom/ellLib -I../../../sr
c/libCom/env -I../../../src/libCom/error -I../../../src/libCom/fdmgr -I../../../src/libCom/freeList -I../../../src/libCo
m/gpHash -I../../../src/libCom/iocsh -I../../../src/libCom/logClient -I../../../src/libCom/macLib -I../../../src/libCom/
misc -I../../../src/libCom/osi -I../../../src/libCom/taskwd -I../../../src/libCom/timer -I../../../src/libCom/tsDefs -I.
./../../include/os/WIN32 -I../../../include -fo Com.res ../Com.rc
process_begin: CreateProcess(NULL, rc -l 0x409 -I. -I../O.Common -I. -I../../../src/libCom/osi/os/WIN32 -I../../../src/l
ibCom/osi/os/default -I.. -I../../../src/libCom/bucketLib -I../../../src/libCom/ring -I../../../src/libCom/calc -I../../
../src/libCom/cvtFast -I../../../src/libCom/cppStd -I../../../src/libCom/cxxTemplates -I../../../src/libCom/dbmf -I../..
/../src/libCom/ellLib -I../../../src/libCom/env -I../../../src/libCom/error -I../../../src/libCom/fdmgr -I../../../src/l
ibCom/freeList -I../../../src/libCom/gpHash -I../../../src/libCom/iocsh -I../../../src/libCom/logClient -I../../../src/l
ibCom/macLib -I../../../src/libCom/misc -I../../../src/libCom/osi -I../../../src/libCom/taskwd -I../../../src/libCom/tim
er -I../../../src/libCom/tsDefs -I../../../include/os/WIN32 -I../../../include -fo Com.res ../Com.rc, ...) failed.
make (e=2): No such file.
make[3]: *** [Com.res] Error 2
make[3]: Leaving directory `C:/epics/base/bin/win32-x86/src/libCom/O.win32-x86'
make[2]: *** [install.win32-x86] Error 2
make[2]: Leaving directory `C:/epics/base/bin/win32-x86/src/libCom'
make[1]: *** [libCom.install] Error 2
make[1]: Leaving directory `C:/epics/base/bin/win32-x86/src'
make: *** [src.install] Error 2
make: Leaving directory `C:/epics/base/bin/win32-x86'
I set the PATH Environment Variable to:
C:\Perl\site\bin;C:\Perl\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files\WIDCOMM\Bluetooth Software\;C:\Program Files\QuickTime\QTSystem\;C:\MinGW\bin;C:\GnuWin32\bin
I don't know if there was a need to do so. Because I can see it's mentioned in the win32.bat file. Here's my win32.bat (in the ming32-make case):
@ECHO OFF
REM *************************************************************************
REM Copyright (c) 2002 The University of Chicago, as Operator of Argonne
REM National Laboratory.
REM Copyright (c) 2002 The Regents of the University of California, as
REM Operator of Los Alamos National Laboratory.
REM EPICS BASE Versions 3.13.7
REM and higher are distributed subject to a Software License Agreement found
REM in file LICENSE that is included with this distribution.
REM *************************************************************************
REM Revision-Id: [email protected]
REM
REM Site-specific EPICS environment settings
REM
REM sites should modify these definitions
REM ======================================================
REM ====== REQUIRED ENVIRONMENT VARIABLES FOLLOW ======
REM ======================================================
REM ======================================================
REM ---------------- WINDOWS ---------------------------
REM ======================================================
REM ----- WIN95 -----
REM set PATH=C:\WINDOWS;C:\WINDOWS\COMMAND
REM ----- WINNT, WIN2000 -----
REM set PATH=C:\WINNT;C:\WINNT\SYSTEM32
REM ----- WINXP, Vista, Windows 7 -----
set PATH=C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\SYSTEM32\Wbem
REM ======================================================
REM ---------------- make and perl ---------------------
REM ======================================================
REM --------------- ActiveState perl -------------------
set PATH=C:\Perl\bin;%PATH%
REM --------------- mingw make ------------------------
set PATH=C:\mingw\bin;%PATH%
REM set PATH=C:\mingw-make82-3\bin;%PATH%
REM --------------- gnuwin32 make ----------------------
REM set PATH=C:\gnuwin32\bin;%PATH%
REM ======================================================
REM ---------------- cygwin tools ------------------------
REM ======================================================
REM (make & perl if above perl and make are REMs)
REM Dont use cygwin GNU make and Perl!
REM cygwin contains tk/tcl, vim, perl, and many unix tools
REM need grep from here NOT from cvs directory
REM set PATH=%PATH%;.;..
REM set PATH=%PATH%;c:\cygwin\bin
REM ======================================================
REM --------------- Visual c++ -------------------------
REM ======================================================
REM ------ Microsoft Visual Studio 2005 ------
REM call "C:\Program files\Microsoft Visual Studio 8\VC\vcvarsall.bat" x86_amd64
REM set PATH=%PATH%;C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin
REM set INCLUDE=%INCLUDE%;C:\Program Files\Microsoft SDKs\Windows\v6.0A\include
REM REM set LIBPATH=%LIBPATH%;C:\Program Files\Microsoft SDKs\Windows\v6.0A\lib
REM set LIB=%LIB%;C:\Program Files\Microsoft SDKs\Windows\v6.0A\lib
REM ------ Microsoft Visual Studio 2008 ------
REM call "C:\Program files\Microsoft Visual Studio 9.0\VC\bin\vcvars32.bat"
REM call "C:\Program files\Microsoft Visual Studio 9.0\VC\vcvarsall.bat" x86_amd64
REM set PATH=C:\Program Files\Microsoft SDKs\Windows\v7.0\bin;%PATH%
REM set INCLUDE=C:\Program Files\Microsoft SDKs\Windows\v7.0\include;%INCLUDE%
REM set LIBPATH=C:\Program Files\Microsoft SDKs\Windows\v7.0\lib;%LIBPATH%
REM set LIB=C:\Program Files\Microsoft SDKs\Windows\v7.0\lib;%LIB%
REM ----- Visual Studion 2010 -----
REM -- windows-x64 ---
REM call "C:\Program files\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x64
REM -- win32-x86 ---
REM call "C:\Program files\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x86
REM ======================================================
REM --------------- EPICS --------------------------------
REM ======================================================
REM set EPICS_HOST_ARCH=windows-x64
set EPICS_HOST_ARCH=win32-x86
set PATH=%PATH%;C:\epics\base\bin\%EPICS_HOST_ARCH%
REM set PATH=%PATH%;G:\epics\extensions\bin\%EPICS_HOST_ARCH%
REM ======================================================
REM ------- OPTIONAL ENVIRONMENT VARIABLES FOLLOW --------
REM ======================================================
REM ======================================================
REM ----------------- remote CVS -------------------------
REM ======================================================
REM set CVS_RSH=c:/cygwin/bin/ssh.exe
REM set CVSROOT=:ext:[email protected]:/usr/local/epicsmgr/cvsroot
REM set HOME=c:/users/%USERNAME%
REM set HOME=c:/users/jba
REM ======================================================
REM ------------------- Bazaar ---------------------------
REM ======================================================
REM set PATH=%PATH%;C:\Program files\Bazaar
REM ======================================================
REM ----------------- GNU make flags ---------------------
REM ======================================================
set MAKEFLAGS=-w
REM ======================================================
REM -------------- vim (use cygwin vim ) -----------------
REM ======================================================
REM HOME needed by vim to write .viminfo file.
REM VIM needed by vim to find _vimrc file.
REM set VIM=c:\cygwin
REM ======================================================
REM --------------- Epics Channel Access -----------------
REM Modify and uncomment the following lines
REM to override the base/configure/CONFIG_ENV defaults
REM ======================================================
REM set EPICS_CA_ADDR_LIST=n.n.n.n n.n.n.n
REM set EPICS_CA_AUTO_ADDR_LIST=YES
REM set EPICS_CA_CONN_TMO=30.0
REM set EPICS_CA_BEACON_PERIOD=15.0
REM set EPICS_CA_REPEATER_PORT=5065
REM set EPICS_CA_SERVER_PORT=5064
REM set EPICS_TS_MIN_WEST=420
REM ======================================================
REM --------------- JAVA ---------------------------------
REM ======================================================
REM Needed for java extensions
REM set CLASSPATH=G:\epics\extensions\javalib
REM set PATH=%PATH%;C:\j2sdk1.4.1_01\bin
REM set CLASSPATH=%CLASSPATH%;C:\j2sdk1.4.1_01\lib\tools.jar
REM ======================================================
REM --------------- Exceed -------------------------------
REM Needed for X11 extensions
REM ======================================================
REM set EX_VER=7.10
REM set EX_VER=12.00
REM set EX_VER=14.00
REM set PATH=%PATH%;C:\Exceed%EX_VER%\XDK\
REM set PATH=%PATH%;C:\Program Files\Hummingbird\Connectivity\%EX_VER%\Exceed\
Didn't change anything else. I think I missed something. What do you think I've missed?
Thank you.
--
Sincerely,
Pavel Maslov, MSc
R&D Institute for Electro-Physical Apparatus
Mobile: +7 (951) 672 22 19
Phone: +7 (812) 461 01 01
--
Sincerely,
Pavel Maslov, MSc
R&D Institute for Electro-Physical Apparatus
Mobile: +7 (951) 672 22 19
Phone: +7 (812) 461 01 01
--
Sincerely,
Pavel Maslov, MSc
R&D Institute for Electro-Physical Apparatus
Mobile: +7 (951) 672 22 19
Phone: +7 (812) 461 01 01