Hi Ernest,
I reached that point too.
There was a threat in teck-talk that talk about don't need libungif
anymore. I tried to replace it with giflib, but it didn't work.
I got some emails from Sinclair I will still need to check it.
Let you know my progress.
Cheers
Ernesto
On 4/3/20 8:59 AM, Williams Jr., Ernest L. wrote:
Response below
------------------------------------------------------------------------
*From:* Ernesto Paiser <ernesto_paiser at lynceantech.com>
*Sent:* Friday, April 3, 2020 8:46 AM
*To:* Williams Jr., Ernest L. <ernesto at slac.stanford.edu>;
tech-talk at aps.anl.gov <tech-talk at aps.anl.gov>
*Subject:* Re: EDM in RHEL8 or Centos8
Hi Ernest,
I'm doing well. Regardless someone here may have got the covid...
Hope you are as well as, safe and healthy!
<ELW>
We are hanging in there.
Shelter In Place 🙂
<ELW>
This message you got is because the gif.cc should check the giflib
version and set the #define accordingly, but isn't working.
giflib has changed the definition for the functions:
DGifCloseFile and DGifOpenFileName
since version 5 adding an additional parameter *errno for the arguments.
If you force to compile with giflib version 5.1 you'll get rid of this
error, but you may found others like me.
To make a test just modify gif.cc as:
//#if GIFLIB_MAJOR > 5 || GIFLIB_MAJOR == 5 && GIFLIB_MINOR >= 1
#define GIF_CLOSE_FILE(gif) DGifCloseFile(gif, NULL)
#define GIF_OPEN_FILE(gif) DGifOpenFileName(gif, NULL)
//#else
// #define GIF_CLOSE_FILE(gif) DGifCloseFile(gif)
// #define GIF_OPEN_FILE(gif) DGifOpenFileName(gif)
//#endif
and compile again.
<ELW>
That stanza needs to be moved below the "#include "gif.h""
gif.h which includes gif_lib.h which defines GIFLIB_MAJOR and GIFLIB_MINOR
I guess this went unnoticed for a long time 🙁
Version logic is working now.
<ELW>
Let me know if you make some progress, Thanks
<ELW>
Next, issue is linking error; seems that libungif is needed
make[1]: Entering directory
'/usr/local/controlsDev/epics/extensions/edm/R1.12.105B-1.2.0/giflib/O.linux-x86_64'
/usr/bin/g++ -o libcf322683-513e-4570-a44b-7cdd7cae0de5.so -shared -fPIC
-Wl,-hlibcf322683-513e-4570-a44b-7cdd7cae0de5.so
-L/usr/local/controlsDev/epics/extensions/edm/R1.12.105B-1.2.0/lib/linux-x86_64
-L/usr/lib64
-Wl,-rpath,/usr/local/controlsDev/epics/extensions/edm/R1.12.105B-1.2.0/lib/linux-x86_64
-Wl,-rpath,/usr/lib64 -rdynamic -m64 gif.o
reg_libcf322683-513e-4570-a44b-7cdd7cae0de5.o -lEdmBase
-lcfcaa62e-8199-11d3-a77f-00104b8742df
-l114135a4-6f6c-11d3-95bc-00104b8742df -lXm -lXt -lXp -lXtst -lX11
-lpthread -ldl -lungif -lgif -lpthread -lreadline -lncurses -lm -lrt
-ldl -lgcc
/usr/bin/ld: cannot find -lungif
collect2: error: ld returned 1 exit status
<ELW>
Ernesto
On 4/3/20 7:49 AM, Williams Jr., Ernest L. wrote:
Hi Ernesto,
How is it going?
Our production systems are using mainly RHEL6 and RHEL7.
I have started looking ahead to RHEL 8.
What version of EDM are you using there?
Please provide more detail:
1. Version of EPICS
2. Version of EDM
3. Version of giflib
Here is what I have on my centos8 box:
OS = CentOS Linux release 8.1.1911 (Core)
EPICS BASE = 7.0.3.1
EDM = 1.12.105B
GIFLIB = giflib-devel-5.1.4-3.el8.x86_64
Looks like we have a problem.
Here is my error message:
make -C ./giflib install
make[1]: Entering directory
'/usr/local/controlsDev/epics/extensions/edm/R1.12.105B-1.2.0/giflib'
make -C O.linux-x86_64 -f ../Makefile TOP=../.. \
T_A=linux-x86_64 install
make[2]: Entering directory
'/usr/local/controlsDev/epics/extensions/edm/R1.12.105B-1.2.0/giflib/O.linux-x86_64'
/usr/bin/g++ -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_
-DUNIX -Dlinux -O3 -Wall -std=c++98 -fpermissive
-Wno-write-strings -DNO_UNORDERED_MAP -DSINGLE_THREADED=1 -D__epics__=1
-mtune=generic -m64 -fPIC -I. -I../O.Common -I. -I. -I..
-I../../include/compiler/gcc -I../../include/os/Linux -I../../include
-I/usr/local/controlsDev/epics/base/R7.0.3.1-1.0/include/compiler/gcc
-I/usr/local/controlsDev/epics/base/R7.0.3.1-1.0/include/os/Linux
-I/usr/local/controlsDev/epics/base/R7.0.3.1-1.0/include
-I../../util -I../../edmlib -I/usr/include -I/usr/include/X11 -c
../gif.cc
../gif.cc: In constructor ‘activeGifClass::activeGifClass(const
activeGifClass*)’:
../gif.cc:245:5: warning: variable ‘status’ set but not used
[-Wunused-but-set-variable]
int status;
^~~~~~
../gif.cc: In member function ‘int activeGifClass::readGifFile()’:
../gif.cc:24:50: error: too few arguments to function ‘GifFileType*
DGifOpenFileName(const char*, int*)’
#define GIF_OPEN_FILE(gif) DGifOpenFileName(gif)
^
../gif.cc:442:11: note: in expansion of macro ‘GIF_OPEN_FILE’
gif = GIF_OPEN_FILE( name );
^~~~~~~~~~~~~
In file included from ../gif.h:28,
from ../gif.cc:39:
/usr/include/gif_lib.h:179:14: note: declared here
GifFileType *DGifOpenFileName(const char *GifFileName, int *Error);
^~~~~~~~~~~~~~~~
../gif.cc:23:48: error: too few arguments to function ‘int
DGifCloseFile(GifFileType*, int*)’
#define GIF_CLOSE_FILE(gif) DGifCloseFile(gif)
^
../gif.cc:898:12: note: in expansion of macro ‘GIF_CLOSE_FILE’
status = GIF_CLOSE_FILE( gif );
^~~~~~~~~~~~~~
In file included from ../gif.h:28,
from ../gif.cc:39:
/usr/include/gif_lib.h:183:9: note: declared here
int DGifCloseFile(GifFileType * GifFile, int *ErrorCode);
^~~~~~~~~~~~~
../gif.cc:23:48: error: too few arguments to function ‘int
DGifCloseFile(GifFileType*, int*)’
#define GIF_CLOSE_FILE(gif) DGifCloseFile(gif)
^
../gif.cc:910:30: note: in expansion of macro ‘GIF_CLOSE_FILE’
if ( fileOpened ) status = GIF_CLOSE_FILE( gif );
^~~~~~~~~~~~~~
In file included from ../gif.h:28,
from ../gif.cc:39:
/usr/include/gif_lib.h:183:9: note: declared here
int DGifCloseFile(GifFileType * GifFile, int *ErrorCode);
^~~~~~~~~~~~~
make[2]: ***
[/usr/local/controlsDev/epics/base/R7.0.3.1-1.0/configure/RULES_BUILD:251:
gif.o] Error 1
make[2]: Leaving directory
'/usr/local/controlsDev/epics/extensions/edm/R1.12.105B-1.2.0/giflib/O.linux-x86_64'
make[1]: ***
[/usr/local/controlsDev/epics/base/R7.0.3.1-1.0/configure/RULES_ARCHS:58: install.linux-x86_64]
Error 2
make[1]: Leaving directory
'/usr/local/controlsDev/epics/extensions/edm/R1.12.105B-1.2.0/giflib'
make: ***
[/usr/local/controlsDev/epics/base/R7.0.3.1-1.0/configure/RULES_DIRS:84:
giflib.install] Error 2'
Cheers,
Ernesto
- Replies:
- Re: EDM in RHEL8 or Centos8 Williams Jr., Ernest L. via Tech-talk
- References:
- EDM in RHEL8 or Centos8 Ernesto Paiser via Tech-talk
- Re: EDM in RHEL8 or Centos8 Williams Jr., Ernest L. via Tech-talk
- Re: EDM in RHEL8 or Centos8 Ernesto Paiser via Tech-talk
- Re: EDM in RHEL8 or Centos8 Williams Jr., Ernest L. via Tech-talk
- Navigate by Date:
- Prev:
Re: EDM in RHEL8 or Centos8 Williams Jr., Ernest L. via Tech-talk
- Next:
Re: EDM in RHEL8 or Centos8 Williams Jr., Ernest L. via Tech-talk
- 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
- Navigate by Thread:
- Prev:
Re: EDM in RHEL8 or Centos8 Williams Jr., Ernest L. via Tech-talk
- Next:
Re: EDM in RHEL8 or Centos8 Williams Jr., Ernest L. via Tech-talk
- 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
|