EPICS Home

Experimental Physics and Industrial Control System


 
1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  <20172018  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  <20172018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: RE: vxWorks 6.9 compiler problem on large file systems
From: Mark Rivers <[email protected]>
To: Mark Rivers <[email protected]>, "[email protected]" <[email protected]>
Date: Fri, 6 Jan 2017 22:04:56 +0000
I just found a talk that Nick Rees gave where this exact problem is discussed.  He said they rebuilt the VxWorks compiler with the flags

D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 

http://www.aps.anl.gov/epics/meetings/2012-10/program/1023-A3_Diamond_Data_Storage.pdf

Mark

-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf Of Mark Rivers
Sent: Friday, January 06, 2017 3:58 PM
To: [email protected]
Subject: vxWorks 6.9 compiler problem on large file systems

Folks,

We are trying to use VxWorks6.9.4 on a Linux system with a 5.4TB file system.  We get the following error when building an IOC application on this file system:

/usr/local/vw/vxWorks-6.9.4/gnu/4.3.3-vxworks-6.9/x86-linux2/bin/ccppc -c             -DCPU=PPC32  -DvxWorks=vxWorks -include /usr/local/vw/vxWorks-6.9.4/vxworks-6.9/target/h/vxWorks.h    -O2   -Wall      -mstrict-align -mlongcall    -fno-builtin  -MMD -I. -I../O.Common -I. -I.. -I../../include/os/vxWorks -I../../include -I/corvette/usr/local/epics/base/include/os/vxWorks -I/corvette/usr/local/epics/base/include       -I/usr/local/vw/vxWorks-6.9.4/vxworks-6.9/target/h -I/usr/local/vw/vxWorks-6.9.4/vxworks-6.9/target/h/wrn/coreip ../drvIpac.c
cc1: error: .: Value too large for defined data type
cc1: error: .: Value too large for defined data type
cc1: error: ..: Value too large for defined data type
cc1: error: ../../include: Value too large for defined data type
cc1: error: ../drvIpac.c: Value too large for defined data type
make[2]: *** [drvIpac.o] Error 1
make[2]: Leaving directory `/home/epics/support/ipac-2-13/drvIpac/O.vxWorks-ppc32'
make[1]: *** [install.vxWorks-ppc32] Error 2
make[1]: Leaving directory `/home/epics/support/ipac-2-13/drvIpac'
make: *** [drvIpac.install] Error 2

We suspect this is because the VxWorks compiler is a 32-bit application that was built without the -D_FILE_OFFSET_BITS=64 flag?

EPICS base built fine on this machine when it was located on a 50GB file system.  When we moved it to the 5.4TB file system it also failed to build with the same error.

Has anyone else seen this problem, and if so is there a solution other than not compiling with vxWorks on such a large file system?

If we need to repartition this drive we need to know how big we can safely make it.  Since the Linux blocks are 1 kB, is the limit 2 TB (2^31 blocks) or 4 TB (2^32 blocks)?

Thanks,
Mark




References:
vxWorks 6.9 compiler problem on large file systems Mark Rivers

Navigate by Date:
Prev: vxWorks 6.9 compiler problem on large file systems Mark Rivers
Next: Asyn: example driver for slow device? Konrad, Martin
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  <20172018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: vxWorks 6.9 compiler problem on large file systems Mark Rivers
Next: Asyn: example driver for slow device? Konrad, Martin
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  <20172018  2019  2020  2021  2022  2023  2024