Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

./configure syntax error on line 4556 in CentOS 7.9 #115

Open
caiolopesdasilva opened this issue Mar 1, 2024 · 3 comments
Open

./configure syntax error on line 4556 in CentOS 7.9 #115

caiolopesdasilva opened this issue Mar 1, 2024 · 3 comments

Comments

@caiolopesdasilva
Copy link

caiolopesdasilva commented Mar 1, 2024

Hi Everyone, I have been trying to test YATM in an IBM LTO-8 tape system, which depends on stenc, to work.

Upon trying to run the commands in the README I am facing the following issue and I am not sure how to proceed, anyone have any clue or tips on how to solve this issue?

autoreconf --install or ./autogen.sh don't output any issues.

I believe most packages necessary are on the most recent versions, this is also based on stenc-2.0.0
automake.noarch 1.13.4-3.el7
autoconf.noarch 2.69-11.el7
m4.x86_64 1.4.16-10.el7
bash-completion.noarch 1:2.1-8.el7

My Linux knowledge is somewhat limited so any help would be appreciated here.

`[root@server stenc]# ./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
./configure: line 2654: ]: command not found
checking for style of include used by make... GNU
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking dependency style of gcc... gcc3
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking X usability... no
checking X presence... no
checking for X... no
checking $CC usability... no
checking $CC presence... no
checking for $CC... no
checking -c usability... no
checking -c presence... no
checking for -c... no
checking $CFLAGS usability... no
checking $CFLAGS presence... no
checking for $CFLAGS... no
checking $CPPFLAGS usability... no
checking $CPPFLAGS presence... no
checking for $CPPFLAGS... no
checking conftest.$ac_ext usability... no
checking conftest.$ac_ext presence... no
checking for conftest.$ac_ext... no
checking >&5 usability... no
checking >&5 presence... no
checking for >&5... no
checking arpa/inet.h usability... yes
checking arpa/inet.h presence... yes
checking for arpa/inet.h... yes
checking netinet/in.h usability... yes
checking netinet/in.h presence... yes
checking for netinet/in.h... yes
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking whether to output raw SCSI messages... no
checking your OS... Linux
checking whether to build with static libgcc... no
checking for pandoc... yes
./configure: line 4556: syntax error near unexpected token `BASH_COMPLETION_DIR,'
./configure: line 4556: `PKG_CHECK_VAR(BASH_COMPLETION_DIR, bash-completion >= 2.0, completionsdir,'
`
@MikeCockrem
Copy link

MikeCockrem commented Mar 1, 2024

I face the same issue. I believe Centos 7.9 has too old a version of pkg-config (0.27.1) supposedly the functionality relied upon here was added in 0.28.0 ? Please correct me if this is wrong....

./configure: line 4556: syntax error near unexpected token `BASH_COMPLETION_DIR,'
./configure: line 4556: `PKG_CHECK_VAR(BASH_COMPLETION_DIR, bash-completion >= 2.0, completionsdir,'

Just for fun I snipped out the whole bash completion block from configure and was able to proceed. It broke at the make stage though. I believe GCC is too old on this platform, causing the error:
g++: error: unrecognized command line option ‘-std=c++17’

Centos 7 is EOL this year, however quite a few people will be stuck on this release for one reason or another so it would be a nice thing to support. I'm happy to volunteer my services as a tester on this platform (IBM HH LTO5 external SAS and a HH IBM LTO4 in a Dell Powervault autoloader)

@sunwire
Copy link
Contributor

sunwire commented Mar 1, 2024

Please correct me if this is wrong....

You are not wrong :(

For a newer g++ on CentOS 7 you can check Devloper Toolset 8

@MikeCockrem
Copy link

Please correct me if this is wrong....

You are not wrong :(

For a newer g++ on CentOS 7 you can check Devloper Toolset 8

Can confirm that works, however OP will also need to install newer pkg-config e.g from rpm.pbone.net (usual disclaimer about replacing rpms from different releases)

yum install centos-release-scl
yum install devtoolset-8
scl enable devtoolset-8 bash
#wget your updated pkgconfig
rpm -U pkgconfig-0.28-3.fc20.x86_64.rpm
...build steps from readme...
# stenc --version
stenc 2.0.0 - SCSI Tape Encryption Manager
https://github.com/scsitape/stenc

I hope the above proves useful to you @caiolopesdasilva

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants