Any ideas about this compilation issue : CC src/lib/cbuff.c In file included from /usr/include/talloc.h:28, from src/freeradius-devel/libradius.h:60, from src/lib/cbuff.c:26: /usr/include/stdlib.h:96: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before â__BEGIN_NAMESPACE_STDâ /usr/include/stdlib.h:140: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before âexternâ /usr/include/stdlib.h:145: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before âexternâ /usr/include/stdlib.h: In function âatoiâ: /usr/include/stdlib.h:149: error: expected declaration specifiers before â__THROWâ /usr/include/stdlib.h:152: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before â__THROWâ /usr/include/stdlib.h:153: error: expected declaration specifiers before â__END_NAMESPACE_STDâ /usr/include/stdlib.h:168: error: expected declaration specifiers before â__END_NAMESPACE_STDâ /usr/include/stdlib.h:190: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before â__THROWâ /usr/include/stdlib.h:191: error: expected declaration specifiers before â__END_NAMESPACE_STDâ /usr/include/stdlib.h:382: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before â__THROWâ /usr/include/stdlib.h:383: error: expected declaration specifiers before â__END_NAMESPACE_STDâ /usr/include/stdlib.h:474: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before â__THROWâ /usr/include/stdlib.h:475: error: expected declaration specifiers before â__END_NAMESPACE_STDâ /usr/include/stdlib.h:488: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before â__THROWâ /usr/include/stdlib.h:489: error: expected declaration specifiers before â__END_NAMESPACE_STDâ /usr/include/stdlib.h:518: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before â__THROWâ /usr/include/stdlib.h:531: error: expected declaration specifiers before â__END_NAMESPACE_STDâ .....
On May 2, 2019, at 4:58 AM, Nicolas Breuer <Nicolas.Breuer@belcenter.biz> wrote:
Any ideas about this compilation issue :
CC src/lib/cbuff.c In file included from /usr/include/talloc.h:28, from src/freeradius-devel/libradius.h:60, from src/lib/cbuff.c:26: /usr/include/stdlib.h:96: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before â__BEGIN_NAMESPACE_STDâ
Your compiler and/or header files are is broken. If /usr/include/stdlib.h is producing errors, your system is broken. No amount of poking FreeRADIUS will fix it. Alan DeKok.
Seems linked to GCC < 4.9 Using built-in specs. Target: x86_64-redhat-linux Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk --disable-dssi --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre --enable-libgcj-multifile --enable-java-maintainer-mode --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib --with-ppl --with-cloog --with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux Thread model: posix gcc version 4.4.7 20120313 (Red Hat 4.4.7-23) (GCC) So we cannot install freeradius 3.x on Centos 6.X systems. -----Message d'origine----- De : Freeradius-Users <freeradius-users-bounces+nicolas.breuer=belcenter.biz@lists.freeradius.org> De la part de Alan DeKok Envoyé : jeudi 2 mai 2019 12:45 À : FreeRadius users mailing list <freeradius-users@lists.freeradius.org> Objet : Re: Compilation Issue
On May 2, 2019, at 4:58 AM, Nicolas Breuer <Nicolas.Breuer@belcenter.biz> wrote:
Any ideas about this compilation issue :
CC src/lib/cbuff.c In file included from /usr/include/talloc.h:28, from src/freeradius-devel/libradius.h:60, from src/lib/cbuff.c:26: /usr/include/stdlib.h:96: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before â__BEGIN_NAMESPACE_STDâ
Your compiler and/or header files are is broken. If /usr/include/stdlib.h is producing errors, your system is broken. No amount of poking FreeRADIUS will fix it. Alan DeKok. - List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html
On May 2, 2019, at 6:47 AM, Nicolas Breuer <Nicolas.Breuer@belcenter.biz> wrote:
Seems linked to GCC < 4.9
Using built-in specs. Target: x86_64-redhat-linux Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk --disable-dssi --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre --enable-libgcj-multifile --enable-java-maintainer-mode --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib --with-ppl --with-cloog --with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux Thread model: posix
gcc version 4.4.7 20120313 (Red Hat 4.4.7-23) (GCC)
So we cannot install freeradius 3.x on Centos 6.X systems.
Not true. http://packages.networkradius.com/releases/centos/6/repo/ We do it all of the time. I think what you've done is download the git "master", instead of v3. Look at the VERSION file, or the "git branch" output. The master branch requires a modern C compiler, and won't work with a compiler that's almost a decade old. Use the v3.0.x branch. It *will* work. Alan DeKok.
-rw-r--r-- 1 root root 20M May 2 10:07 freeradius-server-3.0.19.tar [root@ns1 freeradius-server-3.0.19]# tail -f VERSION 3.0.19 -----Message d'origine----- De : Freeradius-Users <freeradius-users-bounces+nicolas.breuer=belcenter.biz@lists.freeradius.org> De la part de Alan DeKok Envoyé : jeudi 2 mai 2019 13:03 À : FreeRadius users mailing list <freeradius-users@lists.freeradius.org> Objet : Re: Compilation Issue On May 2, 2019, at 6:47 AM, Nicolas Breuer <Nicolas.Breuer@belcenter.biz> wrote:
Seems linked to GCC < 4.9
Using built-in specs. Target: x86_64-redhat-linux Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk --disable-dssi --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre --enable-libgcj-multifile --enable-java-maintainer-mode --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib --with-ppl --with-cloog --with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux Thread model: posix
gcc version 4.4.7 20120313 (Red Hat 4.4.7-23) (GCC)
So we cannot install freeradius 3.x on Centos 6.X systems.
Not true. http://packages.networkradius.com/releases/centos/6/repo/ We do it all of the time. I think what you've done is download the git "master", instead of v3. Look at the VERSION file, or the "git branch" output. The master branch requires a modern C compiler, and won't work with a compiler that's almost a decade old. Use the v3.0.x branch. It *will* work. Alan DeKok. - List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html
On May 2, 2019, at 7:05 AM, Nicolas Breuer <Nicolas.Breuer@belcenter.biz> wrote:
-rw-r--r-- 1 root root 20M May 2 10:07 freeradius-server-3.0.19.tar [root@ns1 freeradius-server-3.0.19]# tail -f VERSION 3.0.19
Oh well. Use a modern C compiler. We cannot possibility support every combination of OS and C compiler going back a decade. Newer versions of CentOS and GCC are free to download and use. There's no reason to ask us to pay the cost for your decision to use something that's wildly out of date. Alan DeKok.
OK good Alan, we will compile with GCC 6 but you said that you did installs on Centos 6 all the time 😊 -----Message d'origine----- De : Freeradius-Users <freeradius-users-bounces+nicolas.breuer=belcenter.biz@lists.freeradius.org> De la part de Alan DeKok Envoyé : jeudi 2 mai 2019 13:09 À : FreeRadius users mailing list <freeradius-users@lists.freeradius.org> Objet : Re: Compilation Issue
On May 2, 2019, at 7:05 AM, Nicolas Breuer <Nicolas.Breuer@belcenter.biz> wrote:
-rw-r--r-- 1 root root 20M May 2 10:07 freeradius-server-3.0.19.tar [root@ns1 freeradius-server-3.0.19]# tail -f VERSION 3.0.19
Oh well. Use a modern C compiler. We cannot possibility support every combination of OS and C compiler going back a decade. Newer versions of CentOS and GCC are free to download and use. There's no reason to ask us to pay the cost for your decision to use something that's wildly out of date. Alan DeKok. - List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html
On May 2, 2019, at 7:17 AM, Nicolas Breuer <Nicolas.Breuer@belcenter.biz> wrote:
OK good Alan, we will compile with GCC 6 but you said that you did installs on Centos 6 all the time 😊
As I said, we do *builds* on CentOS 6. I don't *install* it on CentOS 6. We do builds for CentOS 6 so that people can install it. Perhaps you could try installing the pre-built packages for CentOS 6 that I pointed to, instead of arguing? Alan DeKok.
Hello Alan, Don't worry 😊 I want to try to build it on my server; Indeed I can build it on an other Centos 6 but I still have this compile error on my "first" server. I already tried to reinstall gcc, glibc*, etc. Any ideas what others packages can cause this ? Stdlib.h is part of glibc-headers. CC src/lib/cbuff.c In file included from /usr/include/talloc.h:28:0, from src/freeradius-devel/libradius.h:60, from src/lib/cbuff.c:26: /usr/include/stdlib.h:35:1: error: unknown type name â__BEGIN_DECLSâ __BEGIN_DECLS ^~~~~~~~~~~~~ /usr/include/stdlib.h:98:1: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before âtypedefâ typedef struct ^~~~~~~ /usr/include/stdlib.h:140:1: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before âexternâ extern size_t __ctype_get_mb_cur_max (void) __THROW __wur; ^~~~~~ /usr/include/stdlib.h:145:1: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before âexternâ extern double atof (__const char *__nptr) ^~~~~~ /usr/include/stdlib.h: In function âatoiâ: /usr/include/stdlib.h:149:6: error: unknown type name â__THROWâ __THROW __attribute_pure__ __nonnull ((1)) __wur; ^~~~~~~ /usr/include/stdlib.h:149:33: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before â__nonnullâ __THROW __attribute_pure__ __nonnull ((1)) __wur; ^~~~~~~~~ /usr/include/stdlib.h:152:6: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before â__THROWâ __THROW __attribute_pure__ __nonnull ((1)) __wur; ^~~~~~~ /usr/include/stdlib.h:153:1: error: unknown type name â__END_NAMESPACE_STDâ __END_NAMESPACE_STD ^~~~~~~~~~~~~~~~~~~ /usr/include/stdlib.h:165:1: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before âexternâ extern double strtod (__const char *__restrict __nptr, ^~~~~~ /usr/include/stdlib.h:168:1: error: unknown type name â__END_NAMESPACE_STDâ __END_NAMESPACE_STD ^~~~~~~~~~~~~~~~~~~ /usr/include/stdlib.h:184:1: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before âexternâ extern long int strtol (__const char *__restrict __nptr, ^~~~~~ /usr/include/stdlib.h:190:6: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before â__THROWâ __THROW __nonnull ((1)) __wur; ^~~~~~~ /usr/include/stdlib.h:191:1: error: unknown type name â__END_NAMESPACE_STDâ __END_NAMESPACE_STD ^~~~~~~~~~~~~~~~~~~ /usr/include/stdlib.h:380:1: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before âexternâ extern int rand (void) __THROW; ^~~~~~ /usr/include/stdlib.h:382:41: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before â__THROWâ extern void srand (unsigned int __seed) __THROW; ^~~~~~~ /usr/include/stdlib.h:383:1: error: unknown type name â__END_NAMESPACE_STDâ __END_NAMESPACE_STD -----Message d'origine----- De : Freeradius-Users <freeradius-users-bounces+nicolas.breuer=belcenter.biz@lists.freeradius.org> De la part de Alan DeKok Envoyé : jeudi 2 mai 2019 13:21 À : FreeRadius users mailing list <freeradius-users@lists.freeradius.org> Objet : Re: Compilation Issue
On May 2, 2019, at 7:17 AM, Nicolas Breuer <Nicolas.Breuer@belcenter.biz> wrote:
OK good Alan, we will compile with GCC 6 but you said that you did installs on Centos 6 all the time 😊
As I said, we do *builds* on CentOS 6. I don't *install* it on CentOS 6. We do builds for CentOS 6 so that people can install it. Perhaps you could try installing the pre-built packages for CentOS 6 that I pointed to, instead of arguing? Alan DeKok. - List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html
On May 2, 2019, at 7:56 AM, Nicolas Breuer <Nicolas.Breuer@belcenter.biz> wrote:
Hello Alan,
Don't worry 😊 I want to try to build it on my server;
Then fix your server so that it can compile programs.
Indeed I can build it on an other Centos 6 but I still have this compile error on my "first" server. I already tried to reinstall gcc, glibc*, etc.
Any ideas what others packages can cause this ? Stdlib.h is part of glibc-headers.
Ask the gcc / glibc people why their headers are broken. You'll get the same answer I gave you: upgrade. Use a modern OS. Or, fix it yourself. Newer versions of CentOS and GCC are free to download and use. There's no reason to ask us to pay the cost for your decision to use something that's wildly out of date. This issue is off topic for the FreeRADIUS list. Stop asking questions about problems that you created, and that you can fix. Alan DeKok.
For the Community : We found the issue, that was not linked to compiler / distri / gcc / librairies broken or something like that. The ./configure found an old library of lib-pcap (0.9) and used that library. That caused "the make" to crash. Removing the entire directory solved all problems -> without libpcap, radius sniffer module was disabled and compiling was done in 2 minutes. -----Message d'origine----- De : Freeradius-Users <freeradius-users-bounces+nicolas.breuer=belcenter.biz@lists.freeradius.org> De la part de Alan DeKok Envoyé : jeudi 2 mai 2019 14:32 À : FreeRadius users mailing list <freeradius-users@lists.freeradius.org> Objet : Re: Compilation Issue On May 2, 2019, at 7:56 AM, Nicolas Breuer <Nicolas.Breuer@belcenter.biz> wrote:
Hello Alan,
Don't worry 😊 I want to try to build it on my server;
Then fix your server so that it can compile programs.
Indeed I can build it on an other Centos 6 but I still have this compile error on my "first" server. I already tried to reinstall gcc, glibc*, etc.
Any ideas what others packages can cause this ? Stdlib.h is part of glibc-headers.
Ask the gcc / glibc people why their headers are broken. You'll get the same answer I gave you: upgrade. Use a modern OS. Or, fix it yourself. Newer versions of CentOS and GCC are free to download and use. There's no reason to ask us to pay the cost for your decision to use something that's wildly out of date. This issue is off topic for the FreeRADIUS list. Stop asking questions about problems that you created, and that you can fix. Alan DeKok. - List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html
On May 3, 2019, at 5:39 AM, Nicolas Breuer <Nicolas.Breuer@belcenter.biz> wrote:
We found the issue, that was not linked to compiler / distri / gcc / librairies broken or something like that.
The ./configure found an old library of lib-pcap (0.9) and used that library. That caused "the make" to crash.
So (a) yes, a library was broken. And (b), "make" didn't crash. Compilation failed.
Removing the entire directory solved all problems -> without libpcap, radius sniffer module was disabled and compiling was done in 2 minutes.
i.e. your local system was broken. This kind of thing happens when you use a distribution that is wildly out of date, and then try to build newer software on it. The solution (for everyone else reading) is don't use CentOS 6. Or, if you do, use pre-built packages available at http://packages.networkradius.com The problem here was arguing over and over and over again about the error and the solution. There were simple fixes which weren't used. Alan DeKok.
On May 3, 2019, at 5:39 AM, Nicolas Breuer <Nicolas.Breuer@belcenter.biz> wrote:
We found the issue, that was not linked to compiler / distri / gcc / librairies broken or something like that.
The ./configure found an old library of lib-pcap (0.9) and used that library. That caused "the make" to crash.
So (a) yes, a library was broken. And (b), "make" didn't crash. Compilation failed.
Removing the entire directory solved all problems -> without libpcap, radius sniffer module was disabled and compiling was done in 2 minutes. i.e. your local system was broken.
This kind of thing happens when you use a distribution that is wildly out of date, and then try to build newer software on it.
The solution (for everyone else reading) is don't use CentOS 6. Or, if you do, use pre-built packages available at http://packages.networkradius.com
The problem here was arguing over and over and over again about the error and the solution. There were simple fixes which weren't used.
Also, if you really need to build your own packages for CentOS 6 instead of using those pre-built ones (because you have a custom module or similar, as we do for Moonshot), you can always use a docker/lxc container, a VM, or even a chroot to start from a "clean" CentOS 6 distribution, rather than trying to use a build system that has been proven to not work. That will give you and us a way to reproduce your build process in case you find an actual bug. Regards, Alex
Alan DeKok.
- List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html
-- Alejandro Perez-Mendez Technical Specialist (AAA), Trust & Identity M (+34) 619 333 219 Skype alejandro_perez_mendez jisc.ac.uk Jisc is a registered charity (number 1149740) and a company limited by guarantee which is registered in England under Company No. 5747339, VAT No. GB 197 0632 86. Jisc’s registered office is: One Castlepark, Tower Hill, Bristol, BS2 0JA. T 0203 697 5800. Jisc Services Limited is a wholly owned Jisc subsidiary and a company limited by guarantee which is registered in England under company number 2881024, VAT number GB 197 0632 86. The registered office is: One Castle Park, Tower Hill, Bristol BS2 0JA. T 0203 697 5800.
Hi Alex, I will not argue with all the community 😊 I prefer indeed to use pre-built binaries but in that case it will not be useful for what I want to do. I have a different point of view regarding the compilation issue but the life is like that, a community with different people & different points of view 😊 So please keep cool on this. It's now compiled without any problems with standard GCC & on Centos 6. Have a nice end of week & thanks for being here. -----Message d'origine----- De : Freeradius-Users <freeradius-users-bounces+nicolas.breuer=belcenter.biz@lists.freeradius.org> De la part de Alex Perez Envoyé : vendredi 3 mai 2019 15:21 À : freeradius-users@lists.freeradius.org Objet : Re: Compilation Issue
On May 3, 2019, at 5:39 AM, Nicolas Breuer <Nicolas.Breuer@belcenter.biz> wrote:
We found the issue, that was not linked to compiler / distri / gcc / librairies broken or something like that.
The ./configure found an old library of lib-pcap (0.9) and used that library. That caused "the make" to crash.
So (a) yes, a library was broken. And (b), "make" didn't crash. Compilation failed.
Removing the entire directory solved all problems -> without libpcap, radius sniffer module was disabled and compiling was done in 2 minutes. i.e. your local system was broken.
This kind of thing happens when you use a distribution that is wildly out of date, and then try to build newer software on it.
The solution (for everyone else reading) is don't use CentOS 6. Or, if you do, use pre-built packages available at http://packages.networkradius.com
The problem here was arguing over and over and over again about the error and the solution. There were simple fixes which weren't used.
Also, if you really need to build your own packages for CentOS 6 instead of using those pre-built ones (because you have a custom module or similar, as we do for Moonshot), you can always use a docker/lxc container, a VM, or even a chroot to start from a "clean" CentOS 6 distribution, rather than trying to use a build system that has been proven to not work. That will give you and us a way to reproduce your build process in case you find an actual bug. Regards, Alex
Alan DeKok.
- List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html
-- Alejandro Perez-Mendez Technical Specialist (AAA), Trust & Identity M (+34) 619 333 219 Skype alejandro_perez_mendez jisc.ac.uk Jisc is a registered charity (number 1149740) and a company limited by guarantee which is registered in England under Company No. 5747339, VAT No. GB 197 0632 86. Jisc’s registered office is: One Castlepark, Tower Hill, Bristol, BS2 0JA. T 0203 697 5800. Jisc Services Limited is a wholly owned Jisc subsidiary and a company limited by guarantee which is registered in England under company number 2881024, VAT number GB 197 0632 86. The registered office is: One Castle Park, Tower Hill, Bristol BS2 0JA. T 0203 697 5800. - List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html
On May 3, 2019, at 9:20 AM, Alex Perez <Alex.Perez-Mendez@jisc.ac.uk> wrote:
Also, if you really need to build your own packages for CentOS 6 instead of using those pre-built ones (because you have a custom module or similar, as we do for Moonshot), you can always use a docker/lxc container, a VM, or even a chroot to start from a "clean" CentOS 6 distribution, rather than trying to use a build system that has been proven to not work.
The v3.0.x branch now has Jenkins support: https://github.com/FreeRADIUS/freeradius-server/blob/v3.0.x/scripts/jenkins/... So if you have a CI server, you can automatically build packages. Alan DeKok.
participants (3)
-
Alan DeKok -
Alex Perez -
Nicolas Breuer