ID |
Date |
Icon |
Author |
Author Email |
Category |
OS |
ELOG Version |
Subject |
69663
|
Tue Apr 11 12:51:12 2023 |
| Finn Junker | Hi fj@tvis.net | Info | Linux | Mac OSX | 3.1.5 | Re: New elog version 3.1.5 | Hi Stefan
Is there anything the community or forum can help you with or supply for creating a windows version?
Kind Regards Finn
Stefan Ritt wrote: |
A new version 3.1.5 of elog has been released with all accumulated fixes over the past actually few years. I made a tar file, a RPM, but I could not compile yet a windows version.
https://elog.psi.ch/elog/download.html
Best,
Stefan
|
|
69664
|
Wed Apr 12 00:09:08 2023 |
| Laurent Jean-Rigaud | lollspam@free.fr | Info | Linux | Mac OSX | 3.1.5 | Re: New elog version 3.1.5 | Hi,
It's possible to build elogd under windows with cygwin, but not sure that is the best as it requires a lot of dependencies that should be included to dist package to be runnable everywhere.
After
- installation of dependencies (gcc-g++, make, libssl1.1, libssl-devel, opendlap-devel, libopenldap2, libkrb5-devel, libkrb5_3) using CygWin setup program,
- instalkation of git tool and clone the git repo (
git clone https://bitbucket.org/ritt/elog --recursive ),
- modification of Makefile to build with Kerberos/ldap/ssl support,
from cygwin bash under Windows 11, you can build elog :
/cygdrive/d/Devel/elog $ make
c++ -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -DHAVE_KRB5 -DHAVE_LDAP -o elog src/elog.cxx mxml.o crypt.o strlcpy.o -lssl -lkrb5 -lldap -llber
c++ -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -DHAVE_KRB5 -DHAVE_LDAP -w -c -o auth.o src/auth.cxx
c++ -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -DHAVE_KRB5 -DHAVE_LDAP -o elogd src/elogd.cxx auth.o mxml.o crypt.o strlcpy.o -lssl -lkrb5 -lldap -llber
src/elogd.cxx:217:6: warning: ‘_timezone’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
217 | long _timezone;
| ^~~~~~~~~
src/elogd.cxx: In function ‘int el_submit(LOGBOOK*, int, BOOL, const char*, char (*)[1500], char (*)[1500], int, const char*, const char*, const char*, const char*, const char (*)[256], BOOL, const char*, const char*)’:
src/elogd.cxx:4963:47: warning: ‘%s’ directive writing up to 149999 bytes into a region of size between 100103 and 250102 [-Wformat-overflow=]
4963 | sprintf(message + strlen(message), "%s: %s\n", attr_name[i], attrib[i]);
| ^~
src/elogd.cxx:4963:14: note: ‘sprintf’ output between 4 and 300002 bytes into a destination of size 250104
4963 | sprintf(message + strlen(message), "%s: %s\n", attr_name[i], attrib[i]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx: In function ‘void show_edit_form(LOGBOOK*, int, BOOL, BOOL, BOOL, BOOL, BOOL, BOOL)’:
src/elogd.cxx:9655:28: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3993 [-Wformat-overflow=]
9655 | sprintf(str, "Preset %s", attr_list[index]);
| ^~
src/elogd.cxx:9655:14: note: ‘sprintf’ output between 8 and 150007 bytes into a destination of size 4000
9655 | sprintf(str, "Preset %s", attr_list[index]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9676:43: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3978 [-Wformat-overflow=]
9676 | sprintf(str, "Preset on first reply %s", attr_list[index]);
| ^~
src/elogd.cxx:9676:14: note: ‘sprintf’ output between 23 and 150022 bytes into a destination of size 4000
9676 | sprintf(str, "Preset on first reply %s", attr_list[index]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9697:37: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3984 [-Wformat-overflow=]
9697 | sprintf(str, "Preset on reply %s", attr_list[index]);
| ^~
src/elogd.cxx:9697:14: note: ‘sprintf’ output between 17 and 150016 bytes into a destination of size 4000
9697 | sprintf(str, "Preset on reply %s", attr_list[index]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9697:37: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3984 [-Wformat-overflow=]
9697 | sprintf(str, "Preset on reply %s", attr_list[index]);
| ^~
src/elogd.cxx:9697:14: note: ‘sprintf’ output between 17 and 150016 bytes into a destination of size 4000
9697 | sprintf(str, "Preset on reply %s", attr_list[index]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9697:37: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3984 [-Wformat-overflow=]
9697 | sprintf(str, "Preset on reply %s", attr_list[index]);
| ^~
src/elogd.cxx:9697:14: note: ‘sprintf’ output between 17 and 150016 bytes into a destination of size 4000
9697 | sprintf(str, "Preset on reply %s", attr_list[index]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9697:37: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3984 [-Wformat-overflow=]
9697 | sprintf(str, "Preset on reply %s", attr_list[index]);
| ^~
src/elogd.cxx:9697:14: note: ‘sprintf’ output between 17 and 150016 bytes into a destination of size 4000
9697 | sprintf(str, "Preset on reply %s", attr_list[index]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9717:36: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3985 [-Wformat-overflow=]
9717 | sprintf(str, "Preset on edit %s", attr_list[index]);
| ^~
src/elogd.cxx:9717:14: note: ‘sprintf’ output between 16 and 150015 bytes into a destination of size 4000
9717 | sprintf(str, "Preset on edit %s", attr_list[index]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9737:41: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3980 [-Wformat-overflow=]
9737 | sprintf(str, "Preset on duplicate %s", attr_list[index]);
| ^~
src/elogd.cxx:9737:14: note: ‘sprintf’ output between 21 and 150020 bytes into a destination of size 4000
9737 | sprintf(str, "Preset on duplicate %s", attr_list[index]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9758:22: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3999 [-Wformat-overflow=]
9758 | sprintf(str, "p%s", attr_list[index]);
| ^~
src/elogd.cxx:9758:14: note: ‘sprintf’ output between 2 and 150001 bytes into a destination of size 4000
9758 | sprintf(str, "p%s", attr_list[index]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9776:31: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3993 [-Wformat-overflow=]
9776 | sprintf(str, "Preset %s", attr_list[index]);
| ^~
src/elogd.cxx:9776:17: note: ‘sprintf’ output between 8 and 150007 bytes into a destination of size 4000
9776 | sprintf(str, "Preset %s", attr_list[index]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9797:40: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3984 [-Wformat-overflow=]
9797 | sprintf(str, "Preset on reply %s", attr_list[index]);
| ^~
src/elogd.cxx:9797:17: note: ‘sprintf’ output between 17 and 150016 bytes into a destination of size 4000
9797 | sprintf(str, "Preset on reply %s", attr_list[index]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9817:44: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3980 [-Wformat-overflow=]
9817 | sprintf(str, "Preset on duplicate %s", attr_list[index]);
| ^~
src/elogd.cxx:9817:17: note: ‘sprintf’ output between 21 and 150020 bytes into a destination of size 4000
9817 | sprintf(str, "Preset on duplicate %s", attr_list[index]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx: In function ‘void show_elog_list(LOGBOOK*, int, int, int, BOOL, char*)’:
src/elogd.cxx:20459:43: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 1587 [-Wformat-overflow=]
20459 | sprintf(str, "Icon comment %s", attrib[i]);
| ^~
src/elogd.cxx:20459:23: note: ‘sprintf’ output between 14 and 150013 bytes into a destination of size 1600
20459 | sprintf(str, "Icon comment %s", attrib[i]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:20506:33: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 1600 [-Wformat-overflow=]
20506 | sprintf(str, "%s_%d", attr_list[i], j);
| ^~
src/elogd.cxx:20506:32: note: directive argument in the range [0, 99]
20506 | sprintf(str, "%s_%d", attr_list[i], j);
| ^~~~~~~
src/elogd.cxx:20506:26: note: ‘sprintf’ output between 3 and 150003 bytes into a destination of size 1600
20506 | sprintf(str, "%s_%d", attr_list[i], j);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:20470:33: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 1600 [-Wformat-overflow=]
20470 | sprintf(str, "%s_%d", attr_list[i], j);
| ^~
src/elogd.cxx:20470:32: note: directive argument in the range [0, 99]
20470 | sprintf(str, "%s_%d", attr_list[i], j);
| ^~~~~~~
src/elogd.cxx:20470:26: note: ‘sprintf’ output between 3 and 150003 bytes into a destination of size 1600
20470 | sprintf(str, "%s_%d", attr_list[i], j);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:21052:30: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 1600 [-Wformat-overflow=]
21052 | sprintf(str, "%s_%d", attr_list[i], j);
| ^~
src/elogd.cxx:21052:29: note: directive argument in the range [0, 99]
21052 | sprintf(str, "%s_%d", attr_list[i], j);
| ^~~~~~~
src/elogd.cxx:21052:23: note: ‘sprintf’ output between 3 and 150003 bytes into a destination of size 1600
21052 | sprintf(str, "%s_%d", attr_list[i], j);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:21538:45: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 1588 [-Wformat-overflow=]
21538 | sprintf(str, "Time format %s", attr_list[i]);
| ^~
src/elogd.cxx:21538:26: note: ‘sprintf’ output between 13 and 150012 bytes into a destination of size 1600
21538 | sprintf(str, "Time format %s", attr_list[i]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:21523:45: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 1588 [-Wformat-overflow=]
21523 | sprintf(str, "Date format %s", attr_list[i]);
| ^~
src/elogd.cxx:21523:26: note: ‘sprintf’ output between 13 and 150012 bytes into a destination of size 1600
21523 | sprintf(str, "Date format %s", attr_list[i]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx: In function ‘void submit_elog(LOGBOOK*)’:
src/elogd.cxx:23293:38: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 2034 [-Wformat-overflow=]
23293 | sprintf(str, "Subst on edit %s", attr_list[index]);
| ^~
src/elogd.cxx:23293:17: note: ‘sprintf’ output between 15 and 150014 bytes into a destination of size 2048
23293 | sprintf(str, "Subst on edit %s", attr_list[index]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:23323:39: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 2033 [-Wformat-overflow=]
23323 | sprintf(str, "Subst on reply %s", attr_list[index]);
| ^~
src/elogd.cxx:23323:17: note: ‘sprintf’ output between 16 and 150015 bytes into a destination of size 2048
23323 | sprintf(str, "Subst on reply %s", attr_list[index]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
c++ -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -DHAVE_KRB5 -DHAVE_LDAP -o elconv src/elconv.cxx -lssl -lkrb5 -lldap -llber
Copy to new dir :
- the 3 binaries(elogd.exe, elog.exe & elconv.exe)
- logbooks, scripts, ssl and themes folders from git clone.
- elogd.cfg.example as elogd.cfg.
/cygdrive/d/Devel/elog/elog-win64 $ ldd elogd.exe
ntdll.dll => /cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll (0x7ff9796b0000)
KERNEL32.DLL => /cygdrive/c/WINDOWS/System32/KERNEL32.DLL (0x7ff978050000)
KERNELBASE.dll => /cygdrive/c/WINDOWS/System32/KERNELBASE.dll (0x7ff976af0000)
cygwin1.dll => /usr/bin/cygwin1.dll (0x7ff925010000)
cygkrb5-3.dll => /usr/bin/cygkrb5-3.dll (0x3fe4b0000)
cygldap-2.dll => /usr/bin/cygldap-2.dll (0x3fdf70000)
cyglber-2.dll => /usr/bin/cyglber-2.dll (0x3fe030000)
cygssl-1.1.dll => /usr/bin/cygssl-1.1.dll (0x3ff4d0000)
cygstdc++-6.dll => /usr/bin/cygstdc++-6.dll (0x3ff2f0000)
cyggcc_s-seh-1.dll => /usr/bin/cyggcc_s-seh-1.dll (0x3ffc30000)
cygk5crypto-3.dll => /usr/bin/cygk5crypto-3.dll (0x3fe600000)
cygkrb5support-0.dll => /usr/bin/cygkrb5support-0.dll (0x3fe490000)
cygintl-8.dll => /usr/bin/cygintl-8.dll (0x3ffa10000)
cygcom_err-2.dll => /usr/bin/cygcom_err-2.dll (0x3fe9b0000)
cygcrypto-1.1.dll => /usr/bin/cygcrypto-1.1.dll (0x3ffce0000)
cygsasl2-3.dll => /usr/bin/cygsasl2-3.dll (0x3fdee0000)
cygiconv-2.dll => /usr/bin/cygiconv-2.dll (0x3ffa30000)
cygz.dll => /usr/bin/cygz.dll (0x3ff280000)
/cygdrive/d/Devel/elog/elog-win64 $ ls
elconv.exe elog.exe elogd.cfg elogd.exe logbooks scripts ssl themes
/cygdrive/d/Devel/elog/elog-win64 $ ./elogd.exe
elogd 3.1.5 built Apr 12 2023, 00:01:15 revision 33884104
CKeditor detected
ImageMagick NOT detected. Image scaling will not work.
Indexing logbooks ... done
Server listening on port 8080 ...
With that, elogd starts and the site is usable.
NB: after installing imageMagick, elogd starts with activation of image manipulation features.
/cygdrive/d/Devel/elog/elog-win64 $ ./elogd.exe
elogd 3.1.5 built Apr 12 2023, 00:01:15 revision 33884104
CKeditor detected
ImageMagick detected
Indexing logbooks ... done
Server listening on port 8080 ...
For who as interested, I enclosed 2 zips, with (elog-win64_wDLL.zip) or without (elog-win64.zip) Cygwin DLL (licence: https://cygwin.com/COPYING). The build uses the current git version.
Regards,
Laurent
Finn Junker wrote: |
Hi Stefan
Is there anything the community or forum can help you with or supply for creating a windows version?
Kind Regards Finn
Stefan Ritt wrote: |
A new version 3.1.5 of elog has been released with all accumulated fixes over the past actually few years. I made a tar file, a RPM, but I could not compile yet a windows version.
https://elog.psi.ch/elog/download.html
Best,
Stefan
|
|
|
Attachment 1: elog-win64.zip
|
Attachment 2: elog-win64_wDLL.zip
|
69665
|
Wed Apr 12 15:08:15 2023 |
| Finn Junker | fj@tvis.net | Info | Linux | Mac OSX | 3.1.5 | Re: New elog version 3.1.5 | Hi Laurent
It is possible to use the attached but the elogd will not start as a service anymore - is there a fix to that aswell?
Kind Regards Finn
Laurent Jean-Rigaud wrote: |
Hi,
It's possible to build elogd under windows with cygwin, but not sure that is the best as it requires a lot of dependencies that should be included to dist package to be runnable everywhere.
After
- installation of dependencies (gcc-g++, make, libssl1.1, libssl-devel, opendlap-devel, libopenldap2, libkrb5-devel, libkrb5_3) using CygWin setup program,
- instalkation of git tool and clone the git repo (
git clone https://bitbucket.org/ritt/elog --recursive ),
- modification of Makefile to build with Kerberos/ldap/ssl support,
from cygwin bash under Windows 11, you can build elog :
/cygdrive/d/Devel/elog $ make
c++ -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -DHAVE_KRB5 -DHAVE_LDAP -o elog src/elog.cxx mxml.o crypt.o strlcpy.o -lssl -lkrb5 -lldap -llber
c++ -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -DHAVE_KRB5 -DHAVE_LDAP -w -c -o auth.o src/auth.cxx
c++ -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -DHAVE_KRB5 -DHAVE_LDAP -o elogd src/elogd.cxx auth.o mxml.o crypt.o strlcpy.o -lssl -lkrb5 -lldap -llber
src/elogd.cxx:217:6: warning: ‘_timezone’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
217 | long _timezone;
| ^~~~~~~~~
src/elogd.cxx: In function ‘int el_submit(LOGBOOK*, int, BOOL, const char*, char (*)[1500], char (*)[1500], int, const char*, const char*, const char*, const char*, const char (*)[256], BOOL, const char*, const char*)’:
src/elogd.cxx:4963:47: warning: ‘%s’ directive writing up to 149999 bytes into a region of size between 100103 and 250102 [-Wformat-overflow=]
4963 | sprintf(message + strlen(message), "%s: %s\n", attr_name[i], attrib[i]);
| ^~
src/elogd.cxx:4963:14: note: ‘sprintf’ output between 4 and 300002 bytes into a destination of size 250104
4963 | sprintf(message + strlen(message), "%s: %s\n", attr_name[i], attrib[i]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx: In function ‘void show_edit_form(LOGBOOK*, int, BOOL, BOOL, BOOL, BOOL, BOOL, BOOL)’:
src/elogd.cxx:9655:28: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3993 [-Wformat-overflow=]
9655 | sprintf(str, "Preset %s", attr_list[index]);
| ^~
src/elogd.cxx:9655:14: note: ‘sprintf’ output between 8 and 150007 bytes into a destination of size 4000
9655 | sprintf(str, "Preset %s", attr_list[index]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9676:43: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3978 [-Wformat-overflow=]
9676 | sprintf(str, "Preset on first reply %s", attr_list[index]);
| ^~
src/elogd.cxx:9676:14: note: ‘sprintf’ output between 23 and 150022 bytes into a destination of size 4000
9676 | sprintf(str, "Preset on first reply %s", attr_list[index]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9697:37: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3984 [-Wformat-overflow=]
9697 | sprintf(str, "Preset on reply %s", attr_list[index]);
| ^~
src/elogd.cxx:9697:14: note: ‘sprintf’ output between 17 and 150016 bytes into a destination of size 4000
9697 | sprintf(str, "Preset on reply %s", attr_list[index]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9697:37: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3984 [-Wformat-overflow=]
9697 | sprintf(str, "Preset on reply %s", attr_list[index]);
| ^~
src/elogd.cxx:9697:14: note: ‘sprintf’ output between 17 and 150016 bytes into a destination of size 4000
9697 | sprintf(str, "Preset on reply %s", attr_list[index]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9697:37: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3984 [-Wformat-overflow=]
9697 | sprintf(str, "Preset on reply %s", attr_list[index]);
| ^~
src/elogd.cxx:9697:14: note: ‘sprintf’ output between 17 and 150016 bytes into a destination of size 4000
9697 | sprintf(str, "Preset on reply %s", attr_list[index]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9697:37: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3984 [-Wformat-overflow=]
9697 | sprintf(str, "Preset on reply %s", attr_list[index]);
| ^~
src/elogd.cxx:9697:14: note: ‘sprintf’ output between 17 and 150016 bytes into a destination of size 4000
9697 | sprintf(str, "Preset on reply %s", attr_list[index]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9717:36: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3985 [-Wformat-overflow=]
9717 | sprintf(str, "Preset on edit %s", attr_list[index]);
| ^~
src/elogd.cxx:9717:14: note: ‘sprintf’ output between 16 and 150015 bytes into a destination of size 4000
9717 | sprintf(str, "Preset on edit %s", attr_list[index]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9737:41: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3980 [-Wformat-overflow=]
9737 | sprintf(str, "Preset on duplicate %s", attr_list[index]);
| ^~
src/elogd.cxx:9737:14: note: ‘sprintf’ output between 21 and 150020 bytes into a destination of size 4000
9737 | sprintf(str, "Preset on duplicate %s", attr_list[index]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9758:22: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3999 [-Wformat-overflow=]
9758 | sprintf(str, "p%s", attr_list[index]);
| ^~
src/elogd.cxx:9758:14: note: ‘sprintf’ output between 2 and 150001 bytes into a destination of size 4000
9758 | sprintf(str, "p%s", attr_list[index]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9776:31: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3993 [-Wformat-overflow=]
9776 | sprintf(str, "Preset %s", attr_list[index]);
| ^~
src/elogd.cxx:9776:17: note: ‘sprintf’ output between 8 and 150007 bytes into a destination of size 4000
9776 | sprintf(str, "Preset %s", attr_list[index]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9797:40: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3984 [-Wformat-overflow=]
9797 | sprintf(str, "Preset on reply %s", attr_list[index]);
| ^~
src/elogd.cxx:9797:17: note: ‘sprintf’ output between 17 and 150016 bytes into a destination of size 4000
9797 | sprintf(str, "Preset on reply %s", attr_list[index]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9817:44: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3980 [-Wformat-overflow=]
9817 | sprintf(str, "Preset on duplicate %s", attr_list[index]);
| ^~
src/elogd.cxx:9817:17: note: ‘sprintf’ output between 21 and 150020 bytes into a destination of size 4000
9817 | sprintf(str, "Preset on duplicate %s", attr_list[index]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx: In function ‘void show_elog_list(LOGBOOK*, int, int, int, BOOL, char*)’:
src/elogd.cxx:20459:43: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 1587 [-Wformat-overflow=]
20459 | sprintf(str, "Icon comment %s", attrib[i]);
| ^~
src/elogd.cxx:20459:23: note: ‘sprintf’ output between 14 and 150013 bytes into a destination of size 1600
20459 | sprintf(str, "Icon comment %s", attrib[i]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:20506:33: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 1600 [-Wformat-overflow=]
20506 | sprintf(str, "%s_%d", attr_list[i], j);
| ^~
src/elogd.cxx:20506:32: note: directive argument in the range [0, 99]
20506 | sprintf(str, "%s_%d", attr_list[i], j);
| ^~~~~~~
src/elogd.cxx:20506:26: note: ‘sprintf’ output between 3 and 150003 bytes into a destination of size 1600
20506 | sprintf(str, "%s_%d", attr_list[i], j);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:20470:33: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 1600 [-Wformat-overflow=]
20470 | sprintf(str, "%s_%d", attr_list[i], j);
| ^~
src/elogd.cxx:20470:32: note: directive argument in the range [0, 99]
20470 | sprintf(str, "%s_%d", attr_list[i], j);
| ^~~~~~~
src/elogd.cxx:20470:26: note: ‘sprintf’ output between 3 and 150003 bytes into a destination of size 1600
20470 | sprintf(str, "%s_%d", attr_list[i], j);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:21052:30: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 1600 [-Wformat-overflow=]
21052 | sprintf(str, "%s_%d", attr_list[i], j);
| ^~
src/elogd.cxx:21052:29: note: directive argument in the range [0, 99]
21052 | sprintf(str, "%s_%d", attr_list[i], j);
| ^~~~~~~
src/elogd.cxx:21052:23: note: ‘sprintf’ output between 3 and 150003 bytes into a destination of size 1600
21052 | sprintf(str, "%s_%d", attr_list[i], j);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:21538:45: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 1588 [-Wformat-overflow=]
21538 | sprintf(str, "Time format %s", attr_list[i]);
| ^~
src/elogd.cxx:21538:26: note: ‘sprintf’ output between 13 and 150012 bytes into a destination of size 1600
21538 | sprintf(str, "Time format %s", attr_list[i]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:21523:45: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 1588 [-Wformat-overflow=]
21523 | sprintf(str, "Date format %s", attr_list[i]);
| ^~
src/elogd.cxx:21523:26: note: ‘sprintf’ output between 13 and 150012 bytes into a destination of size 1600
21523 | sprintf(str, "Date format %s", attr_list[i]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx: In function ‘void submit_elog(LOGBOOK*)’:
src/elogd.cxx:23293:38: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 2034 [-Wformat-overflow=]
23293 | sprintf(str, "Subst on edit %s", attr_list[index]);
| ^~
src/elogd.cxx:23293:17: note: ‘sprintf’ output between 15 and 150014 bytes into a destination of size 2048
23293 | sprintf(str, "Subst on edit %s", attr_list[index]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:23323:39: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 2033 [-Wformat-overflow=]
23323 | sprintf(str, "Subst on reply %s", attr_list[index]);
| ^~
src/elogd.cxx:23323:17: note: ‘sprintf’ output between 16 and 150015 bytes into a destination of size 2048
23323 | sprintf(str, "Subst on reply %s", attr_list[index]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
c++ -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -DHAVE_KRB5 -DHAVE_LDAP -o elconv src/elconv.cxx -lssl -lkrb5 -lldap -llber
Copy to new dir :
- the 3 binaries(elogd.exe, elog.exe & elconv.exe)
- logbooks, scripts, ssl and themes folders from git clone.
- elogd.cfg.example as elogd.cfg.
/cygdrive/d/Devel/elog/elog-win64 $ ldd elogd.exe
ntdll.dll => /cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll (0x7ff9796b0000)
KERNEL32.DLL => /cygdrive/c/WINDOWS/System32/KERNEL32.DLL (0x7ff978050000)
KERNELBASE.dll => /cygdrive/c/WINDOWS/System32/KERNELBASE.dll (0x7ff976af0000)
cygwin1.dll => /usr/bin/cygwin1.dll (0x7ff925010000)
cygkrb5-3.dll => /usr/bin/cygkrb5-3.dll (0x3fe4b0000)
cygldap-2.dll => /usr/bin/cygldap-2.dll (0x3fdf70000)
cyglber-2.dll => /usr/bin/cyglber-2.dll (0x3fe030000)
cygssl-1.1.dll => /usr/bin/cygssl-1.1.dll (0x3ff4d0000)
cygstdc++-6.dll => /usr/bin/cygstdc++-6.dll (0x3ff2f0000)
cyggcc_s-seh-1.dll => /usr/bin/cyggcc_s-seh-1.dll (0x3ffc30000)
cygk5crypto-3.dll => /usr/bin/cygk5crypto-3.dll (0x3fe600000)
cygkrb5support-0.dll => /usr/bin/cygkrb5support-0.dll (0x3fe490000)
cygintl-8.dll => /usr/bin/cygintl-8.dll (0x3ffa10000)
cygcom_err-2.dll => /usr/bin/cygcom_err-2.dll (0x3fe9b0000)
cygcrypto-1.1.dll => /usr/bin/cygcrypto-1.1.dll (0x3ffce0000)
cygsasl2-3.dll => /usr/bin/cygsasl2-3.dll (0x3fdee0000)
cygiconv-2.dll => /usr/bin/cygiconv-2.dll (0x3ffa30000)
cygz.dll => /usr/bin/cygz.dll (0x3ff280000)
/cygdrive/d/Devel/elog/elog-win64 $ ls
elconv.exe elog.exe elogd.cfg elogd.exe logbooks scripts ssl themes
/cygdrive/d/Devel/elog/elog-win64 $ ./elogd.exe
elogd 3.1.5 built Apr 12 2023, 00:01:15 revision 33884104
CKeditor detected
ImageMagick NOT detected. Image scaling will not work.
Indexing logbooks ... done
Server listening on port 8080 ...
With that, elogd starts and the site is usable.
NB: after installing imageMagick, elogd starts with activation of image manipulation features.
/cygdrive/d/Devel/elog/elog-win64 $ ./elogd.exe
elogd 3.1.5 built Apr 12 2023, 00:01:15 revision 33884104
CKeditor detected
ImageMagick detected
Indexing logbooks ... done
Server listening on port 8080 ...
For who as interested, I enclosed 2 zips, with (elog-win64_wDLL.zip) or without (elog-win64.zip) Cygwin DLL (licence: https://cygwin.com/COPYING). The build uses the current git version.
Regards,
Laurent
Finn Junker wrote: |
Hi Stefan
Is there anything the community or forum can help you with or supply for creating a windows version?
Kind Regards Finn
Stefan Ritt wrote: |
A new version 3.1.5 of elog has been released with all accumulated fixes over the past actually few years. I made a tar file, a RPM, but I could not compile yet a windows version.
https://elog.psi.ch/elog/download.html
Best,
Stefan
|
|
|
|
65761
|
Thu Feb 28 19:07:19 2008 |
| Yoshio Imai | | Request | Linux | All | 2.6.5 | #include statements and attachment visibility | Hi!
First of all, thank you again for the great software and all the support.
Recently, one collaborator here noted that it would be helpful if the preview of attached files could be disabled on a file-by-file basis (via a checkbutton next to the "Upload" button maybe?). This applies e.g. to cases where someone performs a measurement outside of routine operations and attaches the ASCII data file (preview not wanted, in particular if it contains many lines) and the graph representing the evaluation (preview wanted). The disabling should apply to both single-entry view and list view with "Show attachments" option.
Another "fancy" idea of ours would be to allow #include-like statements in the ELOG config file. E.g. if the number of logbooks gets large, people might choose to put old logbooks to an archive disk which is then stored on some shelf. If a user then wants to access these, the disk could be mounted again (say, under /elog-archive). But since we don't know which archive disk has been mounted, and in order to keep the main config file small, the best would be to have the configurations for the logbooks of each disk on the disk itself (say, in a file called additional.config). We could then have a line like#include /elog-archive/additional.config in the main config file. When the elogd is (re)started, it would try to include that file. If it finds none (because no archive disk is mounted) it would silently ignore this. But if it finds such a file, it would include the logbook definitions found therein.
Do you think it is possible (and preferable) to implement this?
Cheers
Y |
65768
|
Thu Mar 6 14:03:17 2008 |
| Stefan Ritt | stefan.ritt@psi.ch | Request | Linux | All | 2.6.5 | Re: #include statements and attachment visibility |
Yoshio Imai wrote: | Recently, one collaborator here noted that it would be helpful if the preview of attached files could be disabled on a file-by-file basis (via a checkbutton next to the "Upload" button maybe?). This applies e.g. to cases where someone performs a measurement outside of routine operations and attaches the ASCII data file (preview not wanted, in particular if it contains many lines) and the graph representing the evaluation (preview wanted). The disabling should apply to both single-entry view and list view with "Show attachments" option. |
I made you something even better: I added a new option called Attachment lines. This number restricts the number of lines shown for any ASCII attachment. The default is 300, but you can set this to 10 maybe. This still shows you the first 10 lines of the attachment which might be handy. If you set this value to zero, no line at all is shown. The new feature is in SVN revision 2069.
Yoshio Imai wrote: | Another "fancy" idea of ours would be to allow #include-like statements in the ELOG config file. E.g. if the number of logbooks gets large, people might choose to put old logbooks to an archive disk which is then stored on some shelf. If a user then wants to access these, the disk could be mounted again (say, under /elog-archive). But since we don't know which archive disk has been mounted, and in order to keep the main config file small, the best would be to have the configurations for the logbooks of each disk on the disk itself (say, in a file called additional.config). We could then have a line like#include /elog-archive/additional.config in the main config file. When the elogd is (re)started, it would try to include that file. If it finds none (because no archive disk is mounted) it would silently ignore this. But if it finds such a file, it would include the logbook definitions found therein.
|
I will put this feature on the wishlist. |
65771
|
Thu Mar 6 18:19:48 2008 |
| Yoshio Imai | | Request | Linux | All | 2.7.3 | Re: #include statements and attachment visibility | Thanks you! I just installed the new revision, and it works.
However, it does not seem to work in list mode (with attach=1 option): elog still shows all the lines of attached text files there.
I also noticed that the images referenced inline are also shown in the attachment list in list mode, although this post gave me the impression that in list mode, too, inline images should only be displayed inside the elog entry and not in addition as attachment.
Might this be a bug, or is there a particular reason why it is like that? |
65772
|
Fri Mar 7 08:01:44 2008 |
| Stefan Ritt | stefan.ritt@psi.ch | Request | Linux | All | 2.7.3 | Re: #include statements and attachment visibility |
Yoshio Imai wrote: | However, it does not seem to work in list mode (with attach=1 option): elog still shows all the lines of attached text files there.
I also noticed that the images referenced inline are also shown in the attachment list in list mode, although this post gave me the impression that in list mode, too, inline images should only be displayed inside the elog entry and not in addition as attachment. |
I fixed both issues in revision #2072. |
65773
|
Fri Mar 7 13:07:34 2008 |
| Yoshio Imai | | Request | Linux | All | 2.7.3 | Re: #include statements and attachment visibility | Thank you, works perfectly! |
|