EnglishУкраїнськаmRussian
Login/New
Topic with no new replies

[BugWrong] Need help with compiling


Author Message
Written on: 15. 06. 2019 [23:38]
bomba
Petr Bomba
Topic creator
registered since: 15.06.2019
Posts: 1
HTML
============ Final configuration results ==============
* Status:
  - To enable (yes), to include/builtin (incl), for a distributive (dist), to disable (no) all modules = yes
  - Cross compilation                                           = no
  - The core library compilation only in static                 = no
* Generic features:
  - Strings charset encode support (by iconv)                   = yes
  - Interfaces internationalisation (I18N) support (by LibIntl) = yes
  - LibGD forcing for the core and the modules                  = no
  - Compilation modules of the sunsystems:
    "DB":                   SQLite MySQL PostgreSQL FireBird DBF ODBC LDAP 
    "DAQ":                  JavaLikeCalc LogicLev BlockCalc DAQGate System ModBus DCON OPC_UA MMS SNMP Siemens Comedi SoundCard BFN SMH2Gi AMRDevs FT3 GPIO 
    "Archive":              FSArch DBArch 
    "Transport":            Sockets Serial SSL 
    "Transport's protocol": SelfSystem UserProtocol HTTP 
    "UI":                   VCAEngine QTStarter QTCfg Vision WebCfg WebCfgD WebVision WebUser 
    "Special":              FLibSYS SystemTests FLibMath FLibComplex1 
  - Including/builtin modules to the OpenSCADA core: 
* Features of some specific modules:
  - FFTW3 to obtain spectrum of signal: -lfftw3
  - Library of the Linux sensors:       -lsensors
  - Web-browser's engine WebKit:        -lQt5WebKitWidgets 
  - Media player's engine:              
Making all in src
make[1]: Entering directory '/home/papa/aur/openscada-lts/src/openscada-0.9.0/src'
make  all-recursive
make[2]: Entering directory '/home/papa/aur/openscada-lts/src/openscada-0.9.0/src'
Making all in .
make[3]: Entering directory '/home/papa/aur/openscada-lts/src/openscada-0.9.0/src'
/bin/sh ../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I.   -D_FORTIFY_SOURCE=2 -pthread -march=native -mtune=native -O3 -pipe -fstack-protector-strong -fno-plt  -MT liboscada_la-tsys.lo -MD -MP -MF .deps/liboscada_la-tsys.Tpo -c -o liboscada_la-tsys.lo `test -f 'tsys.cpp' || echo './'`tsys.cpp
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -D_FORTIFY_SOURCE=2 -pthread -march=native -mtune=native -O3 -pipe -fstack-protector-strong -fno-plt -MT liboscada_la-tsys.lo -MD -MP -MF .deps/liboscada_la-tsys.Tpo -c tsys.cpp  -fPIC -DPIC -o .libs/liboscada_la-tsys.o
In file included from tarchives.h:31,
                 from tsys.h:64,
                 from tsys.cpp:45:
tarchval.h:297:17: error: friend declaration of 'void const string::archivatorDetach(const string&, bool, bool)' specifies default arguments and isn't a definition [-fpermissive]
  297 |     friend void TVArchive::archivatorDetach( const string &arch, bool full = false, bool toModify = true );
      |                 ^~~~~~~~~
tsys.cpp: In static member function 'static void OSCADA::TSYS::ctrListFS(OSCADA::XMLNode*, const string&, const string&)':
tsys.cpp:2747:37: warning: 'int readdir_r(DIR*, dirent*, dirent**)' is deprecated [-Wdeprecated-declarations]
 2747 |  while(readdir_r(IdDir,sDir,&sDirRez) == 0 && sDirRez) {
      |                                     ^
In file included from tsys.cpp:29:
/usr/include/dirent.h:183:12: note: declared here
  183 | extern int readdir_r (DIR *__restrict __dirp,
      |            ^~~~~~~~~
tsys.cpp:2747:37: warning: 'int readdir_r(DIR*, dirent*, dirent**)' is deprecated [-Wdeprecated-declarations]
 2747 |  while(readdir_r(IdDir,sDir,&sDirRez) == 0 && sDirRez) {
      |                                     ^
In file included from tsys.cpp:29:
/usr/include/dirent.h:183:12: note: declared here
  183 | extern int readdir_r (DIR *__restrict __dirp,
      |            ^~~~~~~~~
tsys.cpp: In member function 'bool OSCADA::TSYS::prjSwitch(const string&, bool)':
tsys.cpp:1845:8: warning: ignoring return value of 'int system(const char*)', declared with attribute warn_unused_result [-Wunused-result]
 1845 |  system((string("dPrj=") + oscd_datadir_full +
      |  ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1846 |   " dPrjUser=" + prjUserDir() +
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1847 |   " dSysCfg=" + sysconfdir_full +
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1848 |   " dData=" + datadir_full +
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~
 1849 |   " " bindir_full "/openscada-proj" +
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1850 |   " " + (toCreate?"create":"proc") +
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1851 |   " " + prj).c_str());
      |   ~~~~~~~~~~~~~~~~~~~
tsys.cpp: In member function 'bool OSCADA::TSYS::prjLock(const char*)':
tsys.cpp:1919:7: warning: ignoring return value of 'ssize_t write(int, const void*, size_t)', declared with attribute warn_unused_result [-Wunused-result]
 1919 |  write(hd, lockInfo.data(), lockInfo.size());
      |  ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[3]: *** [Makefile:513: liboscada_la-tsys.lo] Error 1
make[3]: Leaving directory '/home/papa/aur/openscada-lts/src/openscada-0.9.0/src'
make[2]: *** [Makefile:734: all-recursive] Error 1
make[2]: Leaving directory '/home/papa/aur/openscada-lts/src/openscada-0.9.0/src'
make[1]: *** [Makefile:372: all] Error 2
make[1]: Leaving directory '/home/papa/aur/openscada-lts/src/openscada-0.9.0/src'
make: *** [Makefile:609: all-recursive] Error 1


I'm using ArchLinux (see https://aur.archlinux.org/packages/openscada-lts/) and have used this build recipe. So my libraries are very fresh (gcc 9.1, mariadb 10.3.15)

What have I done wrong?
Written on: 16. 06. 2019 [08:15]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3742
"bomba" wrote:

I'm using ArchLinux (see https://aur.archlinux.org/packages/openscada-lts/) and have used this build recipe. So my libraries are very fresh (gcc 9.1, mariadb 10.3.15)

What have I done wrong?

Attention! Errors of building is not an error of OpenSCADA!
As this is usually the question of: correct setting up of the building environment, support of the building or problems of the compiler, support for builds with those or other libraries. What is described in detail in the manual.
Therefore, if you are still interested in building for the specific environment, then you need to implement this adaptation yourself or request that at the developers.


And I do not have such problems in the automatic builder, obviously for solving them, but I have removed the declaration of the default values of the arguments in the friend functions:
- Archive: The friend function declaration archivatorDetach() cleared from specifying default values of the arguments,
what may fix a compiling problem on GCC 9.1.


Learn, learn and learn better than work, work and work.



5807