EPICS Controls Argonne National Laboratory

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  2017  2018  2019  <20202021  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  <20202021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: RE: Error compiling ADAravis
From: Mark Rivers via Tech-talk <tech-talk at aps.anl.gov>
To: 'Katie Matusik' <kmatusik at sigray.com>
Cc: "tech-talk at aps.anl.gov" <tech-talk at aps.anl.gov>
Date: Tue, 18 Feb 2020 22:19:51 +0000

Hi Katie,

 

areaDetector/configure contains EXAMPLE_CONFIG_SITE.local that has the following lines to define the location of glib:

 

EXAMPLE_CONFIG_SITE.local:# Our system has include files for glib-2.0 in 2 different places

EXAMPLE_CONFIG_SITE.local:GLIB_INCLUDE = /usr/include/glib-2.0 /usr/lib64/glib-2.0/include

EXAMPLE_CONFIG_SITE.local:glib-2.0_DIR = /usr/lib64

 

If EXAMPLE_CONFIG_SITE.local is copied to CONFIG_SITE.local that will work on some versions of Linux, e.g. RHEL7 and Centos7.

 

On my system I also build for Ubuntu 18, using a different EPICS_HOST_ARCH=linux-x86_64-ub18.  For that I use this file which points to the correct location of glib on Ubuntu 18.

 

CONFIG_SITE.local.linux-x86_64-ub18:# Our system has include files for glib-2.0 in 2 different places

CONFIG_SITE.local.linux-x86_64-ub18:GLIB_INCLUDE = /usr/include/glib-2.0 /usr/lib/x86_64-linux-gnu/glib-2.0/include

CONFIG_SITE.local.linux-x86_64-ub18:glib-2.0_DIR = /usr/lib/x86_64-linux-gnu

 

If you are only building on Ubuntu 18 you can use those lines in CONFIG_SITE.local without needed to use the EPICS_HOST_ARCH extension.

 

Let me know if you have problems.

 

Mark

 

 

 

From: Tech-talk <tech-talk-bounces at aps.anl.gov> On Behalf Of Katie Matusik via Tech-talk
Sent: Tuesday, February 18, 2020 3:55 PM
To: tech-talk at aps.anl.gov
Subject: Error compiling ADAravis

 

I am trying to compile ADAravis on Ubuntu 18.04 and am running into some difficulties. I'm using the following package versions:

epics base-3.15.6 

asyn-R4-38

areaDetector-master branch from GitHub

ADGenICam-master branch from GitHub

ADAravis-master branch from GitHub

I installed all prerequisites for the aravis library and compiled aravis 0.7.2 in my /usr/local directory using meson; version 0.7.3 has some header files with function definitions that are incompatible with the master branch of ADAravis because they require additional inputs (e.g. arvcamera.h defines arv_camera_stop_acquisition (ArvCamera *camera, GError **error) whereas the function call in ADAravis.cpp only provides 'ArvCamera' as an input). I can get ADGenIcam to compile without any problems. Then when I try to compile ADAravis, I get the following output:

/opt/epics/synApps/support/areaDetector-master/ADAravis# make clean && make
make -C ./configure clean
make[1]: Entering directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/configure'
rm -rf O.linux-x86_64 O.Common
make[1]: Leaving directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/configure'
make -C ./aravisApp clean
make[1]: Entering directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/aravisApp'
make -C ./src clean
make[2]: Entering directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/aravisApp/src'
rm -rf O.linux-x86_64 O.Common
make[2]: Leaving directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/aravisApp/src'
make -C ./Db clean
make[2]: Entering directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/aravisApp/Db'
rm -rf O.linux-x86_64 O.Common
make[2]: Leaving directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/aravisApp/Db'
make -C ./op clean
make[2]: Entering directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/aravisApp/op'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/aravisApp/op'
make[1]: Leaving directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/aravisApp'
make -C ./iocs clean
make[1]: Entering directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/iocs'
make -C ./aravisIOC clean
make[2]: Entering directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/iocs/aravisIOC'
make -C ./configure clean
make[3]: Entering directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/iocs/aravisIOC/configure'
rm -rf O.linux-x86_64 O.Common
make[3]: Leaving directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/iocs/aravisIOC/configure'
make -C ./aravisApp clean
make[3]: Entering directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/iocs/aravisIOC/aravisApp'
make -C ./src clean
make[4]: Entering directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/iocs/aravisIOC/aravisApp/src'
rm -rf O.linux-x86_64 O.Common
make[4]: Leaving directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/iocs/aravisIOC/aravisApp/src'
make[3]: Leaving directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/iocs/aravisIOC/aravisApp'
make -C ./iocBoot clean
make[3]: Entering directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/iocs/aravisIOC/iocBoot'
make -C ./iocAravis clean
make[4]: Entering directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/iocs/aravisIOC/iocBoot/iocAravis'
make[4]: Nothing to be done for 'clean'.
make[4]: Leaving directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/iocs/aravisIOC/iocBoot/iocAravis'
make[3]: Leaving directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/iocs/aravisIOC/iocBoot'
make[2]: Leaving directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/iocs/aravisIOC'
make[1]: Leaving directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/iocs'
make -C ./configure install
make[1]: Entering directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/configure'
perl -CSD /opt/epics/base/bin/linux-x86_64/makeMakefile.pl O.linux-x86_64 ../..
mkdir O.Common
make -C O.linux-x86_64 -f ../Makefile TOP=../.. \
    T_A=linux-x86_64 install
make[2]: Entering directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/configure/O.linux-x86_64'
perl -CSD /opt/epics/base/bin/linux-x86_64/convertRelease.pl checkRelease
make[2]: Leaving directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/configure/O.linux-x86_64'
make[1]: Leaving directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/configure'
make -C ./aravisApp install
make[1]: Entering directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/aravisApp'
make -C ./src install
make[2]: Entering directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/aravisApp/src'
perl -CSD /opt/epics/base/bin/linux-x86_64/makeMakefile.pl O.linux-x86_64 ../../..
mkdir O.Common
make -C O.linux-x86_64 -f ../Makefile TOP=../../.. \
    T_A=linux-x86_64 install
make[3]: Entering directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/aravisApp/src/O.linux-x86_64'
/usr/bin/g++  -D_GNU_SOURCE -D_DEFAULT_SOURCE            -D_X86_64_  -DUNIX  -Dlinux     -O3 -g   -Wall      -mtune=generic     -m64 -fPIC -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/gcc -I../../../include/os/Linux -I../../../include      -I/opt/epics/synApps/support/asyn-R4-38/include     -I/opt/epics/synApps/support/areaDetector-master/ADSupport/include/os/Linux -I/opt/epics/synApps/support/areaDetector-master/ADSupport/include   -I/opt/epics/synApps/support/areaDetector-master/ADCore/include -I/opt/epics/base/include/compiler/gcc -I/opt/epics/base/include/os/Linux -I/opt/epics/base/include   -I/opt/epics/synApps/support/areaDetector-master/ADGenICam/include     -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/local/include/aravis-0.8    -MM -MF ADAravis.d  ../ADAravis.cpp
/usr/bin/g++  -D_GNU_SOURCE -D_DEFAULT_SOURCE            -D_X86_64_  -DUNIX  -Dlinux     -O3 -g   -Wall      -mtune=generic     -m64 -fPIC -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/gcc -I../../../include/os/Linux -I../../../include      -I/opt/epics/synApps/support/asyn-R4-38/include     -I/opt/epics/synApps/support/areaDetector-master/ADSupport/include/os/Linux -I/opt/epics/synApps/support/areaDetector-master/ADSupport/include   -I/opt/epics/synApps/support/areaDetector-master/ADCore/include -I/opt/epics/base/include/compiler/gcc -I/opt/epics/base/include/os/Linux -I/opt/epics/base/include   -I/opt/epics/synApps/support/areaDetector-master/ADGenICam/include     -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/local/include/aravis-0.8    -MM -MF arvFeature.d  ../arvFeature.cpp
/usr/bin/g++  -D_GNU_SOURCE -D_DEFAULT_SOURCE            -D_X86_64_  -DUNIX  -Dlinux     -O3 -g   -Wall      -mtune=generic     -m64 -fPIC -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/gcc -I../../../include/os/Linux -I../../../include      -I/opt/epics/synApps/support/asyn-R4-38/include     -I/opt/epics/synApps/support/areaDetector-master/ADSupport/include/os/Linux -I/opt/epics/synApps/support/areaDetector-master/ADSupport/include   -I/opt/epics/synApps/support/areaDetector-master/ADCore/include -I/opt/epics/base/include/compiler/gcc -I/opt/epics/base/include/os/Linux -I/opt/epics/base/include   -I/opt/epics/synApps/support/areaDetector-master/ADGenICam/include     -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/local/include/aravis-0.8    -c ../arvFeature.cpp
/usr/bin/g++  -D_GNU_SOURCE -D_DEFAULT_SOURCE            -D_X86_64_  -DUNIX  -Dlinux     -O3 -g   -Wall      -mtune=generic     -m64 -fPIC -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/gcc -I../../../include/os/Linux -I../../../include      -I/opt/epics/synApps/support/asyn-R4-38/include     -I/opt/epics/synApps/support/areaDetector-master/ADSupport/include/os/Linux -I/opt/epics/synApps/support/areaDetector-master/ADSupport/include   -I/opt/epics/synApps/support/areaDetector-master/ADCore/include -I/opt/epics/base/include/compiler/gcc -I/opt/epics/base/include/os/Linux -I/opt/epics/base/include   -I/opt/epics/synApps/support/areaDetector-master/ADGenICam/include     -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/local/include/aravis-0.8    -c ../ADAravis.cpp
/usr/bin/ar -rc    libADAravis.a        arvFeature.o ADAravis.o
/usr/bin/ranlib libADAravis.a
make[3]: *** No rule to make target '../../../lib/linux-x86_64/libglib-2.0.a', needed by 'libADAravis.so'.  Stop.
make[3]: Leaving directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/aravisApp/src/O.linux-x86_64'
/opt/epics/base/configure/RULES_ARCHS:58: recipe for target 'install.linux-x86_64' failed
make[2]: *** [install.linux-x86_64] Error 2
make[2]: Leaving directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/aravisApp/src'
/opt/epics/base/configure/RULES_DIRS:84: recipe for target 'src.install' failed
make[1]: *** [src.install] Error 2
make[1]: Leaving directory '/opt/epics/synApps/support/areaDetector-master/ADAravis/aravisApp'
/opt/epics/base/configure/RULES_DIRS:84: recipe for target 'aravisApp.install' failed
make: *** [aravisApp.install] Error 2

 

Libglib-2.0.a exists, but it lives in /usr/lib/x86_64-linux-gnu/libglib-2.0.a. I have tried creating a folder in ADAravis/lib/linux-x86_64 and making a symlink to the x86_64-linux-gnu directory, but then I get a different set of errors, namely:

/opt/epics/synApps/support/areaDetector-master/ADSupport/lib/linux-x86_64/libcoders.so: undefined reference to `xmlNanoHTTPFrameState'
/opt/epics/synApps/support/areaDetector-master/ADSupport/lib/linux-x86_64/libcoders.so: undefined reference to `xmlNanoHTTPStreaming'

 

Any help is appreciated and please let me know if you need any more info.

 

Thanks so much,

Katie  

 

 

This email and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they are addressed. If you have received this email in error, please notify the system manager. This message contains confidential information and is intended only for the individual named. If you are not the named addressee, you should not disseminate, distribute or copy this email. Please notify the sender immediately by email if you have received this email by mistake and delete this email from your system. If you are not the intended recipient, you are notified that disclosing, copying, distributing or taking any action in reliance on the contents of this information is strictly prohibited


References:
Error compiling ADAravis Katie Matusik via Tech-talk

Navigate by Date:
Prev: Error compiling ADAravis Katie Matusik via Tech-talk
Next: Re: MRF Delay Compensation Function Wang, Lin 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  <20202021  2022  2023  2024 
Navigate by Thread:
Prev: Error compiling ADAravis Katie Matusik via Tech-talk
Next: matrix multiplication and inversions Pearson, Matthew R. 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  <20202021  2022  2023  2024 
ANJ, 19 Feb 2020 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·