SMS Server Tools 3
 Menu
Basic information:
Additional information:
Support:
Get SMS Server Tools 3:
Additional Options

 Sponsored links

 Search
Custom Search

 Visitor locations
 
 SMS Server Tools 3 Community
Welcome, Guest. The forum is currently read-only, but will open soon. Sat Dec 21, 2024 12:55
SMSTools3 Community » Help and support Bottom

Error compiling on Fedora 32

Login and Post Reply

Page:  1

Author Post
Member
Registered:
Aug 2020
Location: Hamburg, Germany
Operating system name and version: Fedora 32
Version of smsd: 3.1.15, 3.1.21
Smsd installed from: sources
Name and model of a modem / phone: Huawei
Interface: USB

Hello,

I'm using SMS Server Tools 3 on a CentOS 6 Machine and I want
to do an upgrade/change to Fedora 32. On CentOS 6.x compiling
was not a problem and everything works. On my Fedora 32 test
machine compiling stops with an ld error . The compiling starts with:

=====================================================================================================
cc -D NUMBER_OF_MODEMS=64 -D NOSTATS -W -Wall -D_FILE_OFFSET_BITS=64 -o smsd smsd.c extras.o locking.o cfgfile.o logging.o alarm.o smsd_cfg.o charset.o stats.o blacklist.o whitelist.o modeminit.o pdu.o
smsd.c: In function 'exec_system':
smsd.c:246:82: warning: '%s' directive output may be truncated writing up to 255 bytes into a region of size between 205 and 236 [-Wformat-truncation=]
246 | snprintf(shared_buffer, SIZE_SHARED_BUFFER, "%s Sms3: mainprocess, %s", adminmessage_device, alert);
| ^~ ~~~~~
smsd.c:246:15: note: 'snprintf' output between 21 and 307 bytes into a destination of size 256
246 | snprintf(shared_buffer, SIZE_SHARED_BUFFER, "%s Sms3: mainprocess, %s", adminmessage_device, alert);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
smsd.c:219:50: warning: '%s' directive output may be truncated writing up to 255 bytes into a region of size between 216 and 247 [-Wformat-truncation=]
219 | snprintf(msg, sizeof(msg), "Smsd3: %s, %s", DEVICE.name, alert);
| ^~ ~~~~~
smsd.c:219:11: note: 'snprintf' output between 10 and 296 bytes into a destination of size 256
219 | snprintf(msg, sizeof(msg), "Smsd3: %s, %s", DEVICE.name, alert);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
smsd.c: In function 'received2file':
smsd.c:3119:36: warning: '%s' directive writing up to 31 bytes into a region of size between 0 and 4095 [-Wformat-overflow=]
3119 | sprintf(tmp_filename,"%s/%s.XXXXXX",d_incoming,DEVICE.name);
| ^~
smsd.c:3119:11: note: 'sprintf' output between 9 and 4135 bytes into a destination of size 4096
3119 | sprintf(tmp_filename,"%s/%s.XXXXXX",d_incoming,DEVICE.name);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
smsd.c: In function 'send_part':
smsd.c:3771:27: warning: 'sprintf' may write a terminating nul past the end of the destination [-Wformat-overflow=]
3771 | sprintf(command2,"%s\x1A",pdu);
| ^
smsd.c:3771:3: note: 'sprintf' output between 2 and 1025 bytes into a destination of size 1024
3771 | sprintf(command2,"%s\x1A",pdu);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
smsd.c: In function 'cmd_to_modem':
smsd.c:5419:61: warning: '%s' directive output may be truncated writing up to 499 bytes into a region of size between 476 and 587 [-Wformat-truncation=]
5419 | snprintf(buffer, sizeof(buffer), "%s,%i, %s: CMD: %s: %s\n", timestamp, DEVICE.dev_rr_loglevel, DEVICE.name, command, answer);
| ^~ ~~~~~~
smsd.c:5419:7: note: 'snprintf' output 15 or more bytes (assuming 625) into a destination of size 600
5419 | snprintf(buffer, sizeof(buffer), "%s,%i, %s: CMD: %s: %s\n", timestamp, DEVICE.dev_rr_loglevel, DEVICE.name, command, answer);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
smsd.c: In function 'run_rr':
smsd.c:5487:54: warning: '%s' directive output may be truncated writing up to 31 bytes into a region of size between 29 and 8219 [-Wformat-truncation=]
5487 | snprintf(cmdline, sizeof(cmdline), "%s %s \"%s\" %s", DEVICE.dev_rr, p, DEVICE.dev_rr_statfile, DEVICE.name);
| ^~
smsd.c:5487:5: note: 'snprintf' output 6 or more bytes (assuming 8227) into a destination of size 8224
5487 | snprintf(cmdline, sizeof(cmdline), "%s %s \"%s\" %s", DEVICE.dev_rr, p, DEVICE.dev_rr_statfile, DEVICE.name);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
smsd.c:5550:54: warning: '%s' directive output may be truncated writing up to 31 bytes into a region of size between 29 and 8219 [-Wformat-truncation=]
5550 | snprintf(cmdline, sizeof(cmdline), "%s %s \"%s\" %s", DEVICE.dev_rr_post_run, p, DEVICE.dev_rr_statfile, DEVICE.name);
| ^~
smsd.c:5550:5: note: 'snprintf' output 6 or more bytes (assuming 8227) into a destination of size 8224
5550 | snprintf(cmdline, sizeof(cmdline), "%s %s \"%s\" %s", DEVICE.dev_rr_post_run, p, DEVICE.dev_rr_statfile, DEVICE.name);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
=====================================================================================================

and then '/usr/bin/ld' complains in every module and stops at:

========================================================================================================

/usr/bin/ld: pdu.o:(.bss+0x331c44): multiple definition of `trouble_logging_started'; /tmp/ccxOuz2I.o:(.bss+0x3330a0): first defined here
/usr/bin/ld: pdu.o:(.bss+0x331c60): multiple definition of `logch_buffer'; /tmp/ccxOuz2I.o:(.bss+0x3330c0): first defined here
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:51: smsd] Error 1
make[1]: Leaving directory '/home/user1/dev/smstools3/src'
make: *** [Makefile:10: compile] Error 2

========================================================================================================

I don't know what this means resp why ld stops here. Can anybody give information howto install SMS Server Tools 3 on Fedora 32?

Any help is appreciated.

Many thanks!

Bye Thomas

Administrator
Registered:
May 2009
Location: Jyväskylä, Finland
Thanks for using this software.

This is a "ftbfs with GCC-10" issue, which is going to be fixed in the near future. The next version of smstools3 has been ready for a while, but it was not released. Because this issue affects to many new distributions on testing, I will release the next version with this ftbfs fixed, and also with lots of new features. This likely will happen during the some next weeks.

While waiting for the next version, you should just disable the warnings. In the src/Makefile, change the line:
CFLAGS += -W -Wall
to
CFLAGS += -fcommon

Hope this helps. At least on Debian 5.7.10-1 (2020-07-26) with GCC 10.1.0-6 the smsd got compiled with the changed flags.

Member
Registered:
Aug 2020
Location: Hamburg, Germany
Topic owner
Hi,

thanks for the help, I tried this on Fedora 32 and
smsd got compiled and works now.

Many thanks!

Bye, Thomas

Member
Registered:
Nov 2021
Location: Germany
First off, I fully understad that releases take a while and greatly appreciate you maintaining smstools3 :-)

keke wrote
This is a "ftbfs with GCC-10" issue, which is going to be fixed in the near future.

Is there perchance a public version control where I could pull a current state > 3.1.21 (or a place where I can pull a tarball of the current prerelease state)?

I want to try if I manage to compile a later version on Fedora (today 35) with all of


(the flags I get when doing a mock build)

Thanks

pcfe

Login and Post Reply

Page:  1

SMSTools3 Community » Help and support Top

 
Time in this board is UTC.  

Privacy Policy   SMS Server Tools 3 Copyright © Keijo Kasvi.