K=2.4.3 - LVM0.9.1.B7 compiling problem.
Hi,
In order to make things right I downloaded the 2.4.3 kernel and
compiled it (i386).
With the new kernel running (lvm-mod load ok) I'm trying to compile lvm
tools, but there are lots of warinigs, all the same thing, the first of them is:
-----------------------------------------------------------
gcc -c -pipe -g -O2 -Wall -DDEBUG -I ../../tools/lib -I ../../tools - debug.o debug.c
In file included from ../../tools/lib/liblvm.h:97
from basename.c:34../../tools/lib/lvm_log.h:47:59: warning: nothing can be pasted after this token ../../tools/lib/lvm_log.h:48:59: warning: nothing can be pasted after this token ../../tools/lib/lvm_log.h:49:59: warning: nothing can be pasted after this token ../../tools/lib/lvm_log.h:52:39: warning: nothing can be pasted after this token gasename.c:41:69: warning: pasting would not give a valid preprocessing token gasename.c:59:68: warning: pasting would not give a valid preprocessing token
----------------------------------------------------------
This messages repeats several times.
Does anyone had a problem like this before???
Quoted 13 lines · Ernesto Silva
Hi,
In order to make things right I downloaded the 2.4.3 kernel and
compiled it (i386).With the new kernel running (lvm-mod load ok) I'm trying to compile lvm
tools, but there are lots of warinigs, all the same thing, the first of them is:
-----------------------------------------------------------
gcc -c -pipe -g -O2 -Wall -DDEBUG -I ../../tools/lib -I ../../tools - debug.odebug.c
In file included from../../tools/lib/liblvm.h:97
from basename.c:34../../tools/lib/lvm_log.h:47:59: warning: nothing can be pasted after this token
<...snip...>
Quoted 1 line
Does anyone had a problem like this before???
Hmm...I don't get that at all! Which version of GCC are you using? Did you download the 0.9.1_beta7 tarball or grab something from the cvs?
Regards,
Signature · 18 lines
AJ Lewis Sistina Software Inc. Voice: 612-379-3951 1313 5th St SE, Suite 111 Fax: 612-379-3952 Minneapolis, MN 55414 E-Mail: [email protected] http://www.sistina.com Current GPG fingerprint = 3B5F 6011 5216 76A5 2F6B 52A0 941E 1261 0029 2648 Get my key at: http://www.sistina.com/~lewis/gpgkey (Unfortunately, the PKS-type keyservers do not work with multiple sub-keys) -----Begin Obligatory Humorous Quote---------------------------------------- THE LESSER-KNOWN PROGRAMMING LANGUAGES #16: C- This language was named for the grade received by its creator when he submitted it as a class project in a graduate programming class. C- is best described as a "low-level" programming language. In fact, the language generally requires more C- statements than machine-code statements to execute a given task. In this respect, it is very similar to COBOL. -----End Obligatory Humorous Quote------------------------------------------
I'm using gcc 2.96 from RedHat 7.0 and I downloaded the tarball. I also applied the patch from the tarball to the kernel.
Quoted 15 lines · you
Quoted 5 lines · Ernesto Silva
Hi,
In order to make things right I downloaded the 2.4.3 kernel and
compiled it (i386).Quoted 8 lines
With the new kernel running (lvm-mod load ok) I'm trying to compile lvm
tools, but there are lots of warinigs, all the same thing, the first of them is:
-----------------------------------------------------------
gcc -c -pipe -g -O2 -Wall -DDEBUG -I ../../tools/lib -I ../../tools - debug.odebug.c
In file included from../../tools/lib/liblvm.h:97
from basename.c:34../../tools/lib/lvm_log.h:47:59: warning: nothing can be pasted after this token
Quoted 27 lines
<...snip...>
Quoted 1 line
Does anyone had a problem like this before???
Hmm...I don't get that at all! Which version of GCC are you using? Did you download the 0.9.1_beta7 tarball or grab something from the cvs?
Regards,
Signature · 18 lines
AJ Lewis Sistina Software Inc. Voice: 612-379-3951 1313 5th St SE, Suite 111 Fax: 612-379-3952 Minneapolis, MN 55414 E-Mail: [email protected] http://www.sistina.com Current GPG fingerprint = 3B5F 6011 5216 76A5 2F6B 52A0 941E 1261 0029 2648 Get my key at: http://www.sistina.com/~lewis/gpgkey (Unfortunately, the PKS-type keyservers do not work with multiple sub-keys) -----Begin Obligatory Humorous Quote---------------------------------------- THE LESSER-KNOWN PROGRAMMING LANGUAGES #16: C- This language was named for the grade received by its creator when he submitted it as a class project in a graduate programming class. C- is best described as a "low-level" programming language. In fact, the language generally requires more C- statements than machine-code statements to execute a given task. In this respect, it is very similar to COBOL. -----End Obligatory Humorous Quote------------------------------------------
----------------------------------------
Content-Type: application/pgp-signature; name="unnamed"
Content-Transfer-Encoding: 7bit Content-Description:
----------------------------------------
Quoted 4 lines · Ernesto Silva
I'm using gcc 2.96 from RedHat 7.0 and I downloaded the tarball. I also applied the patch from the tarball to the kernel.
This patch works for me using gcc 3.0:
Index: lvm_log.h
===================================================================
RCS file: /home/cvs/LVM/tools/lib/lvm_log.h,v
retrieving revision 1.2
retrieving revision 1.3
04/25 08:20:57 1.3 renamed from 04/24 14:29:21 1.2 +3 -3
@@ -44,9 +44,9 @@ void print_log(int level, const char *format, ...); #define plog(l, f, n, x, a...) print_log(l, "%s:%d " x "\n", f, n, ## a) -#define lvm_info(x...) plog(LOG_INFO, __FILE__, __LINE__, "info: " ## x) -#define lvm_warn(x...) plog(LOG_WARN, __FILE__, __LINE__, "warning: " ## x) -#define lvm_err(x...) plog(LOG_ERROR, __FILE__, __LINE__, "error: " ## x) +#define lvm_info(x...) plog(LOG_INFO, __FILE__, __LINE__, "info: " x) +#define lvm_warn(x...) plog(LOG_WARN, __FILE__, __LINE__, "warning: " x) +#define lvm_err(x...) plog(LOG_ERROR, __FILE__, __LINE__, "error: " x) #define lvm_fatal(x...) do {\ plog(LOG_FATAL, __FILE__, __LINE__, "(FATAL) " ## x); \
patrick
Quoted 21 lines · Patrick Caulfield
Quoted 4 lines · Ernesto Silva
I'm using gcc 2.96 from RedHat 7.0 and I downloaded the tarball. I also applied the patch from the tarball to the kernel.
This patch works for me using gcc 3.0:
Index:
lvm_log.h
===================================================================
RCS file:/home/cvs/LVM/tools/lib/lvm_log.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.304/25 08:20:57 1.3 renamed from 04/24 14:29:21 1.2 +0
-0@@ -44,9 +44,9 @@ void print_log(int level, const char *format, ...);
04/25 08:20:57 1.3 line 52
Quoted 10 lines
04/25 08:20:57 1.3 renamed from 04/24 14:29:21 1.2 +3
-3#define plog(l, f, n, x, a...) print_log(l, "%s:%d " x "\n", f, n, ## a) -#define lvm_info(x...) plog(LOG_INFO, __FILE__, __LINE__, "info: " ## x) -#define lvm_warn(x...) plog(LOG_WARN, __FILE__, __LINE__, "warning: " ## x) -#define lvm_err(x...) plog(LOG_ERROR, __FILE__, __LINE__, "error: " ## x) +#define lvm_info(x...) plog(LOG_INFO, __FILE__, __LINE__, "info: " x) +#define lvm_warn(x...) plog(LOG_WARN, __FILE__, __LINE__, "warning: " x) +#define lvm_err(x...) plog(LOG_ERROR, __FILE__, __LINE__, "error: " x) #define lvm_fatal(x...) do {\ plog(LOG_FATAL, __FILE__, __LINE__, "(FATAL) " ## x); \
If this is the right fix (time for me to download gcc 3.0) why haven't you changed lvm_fatal and plog ? Does this still do the right thing under older versions of gcc ?
- Joe
Quoted 8 lines · Joe Thornber
Quoted 4 lines
#define lvm_fatal(x...) do {\ plog(LOG_FATAL, __FILE__, __LINE__, "(FATAL) " ## x); \If this is the right fix (time for me to download gcc 3.0) why haven't you changed
lvm_fataland plog ? Does this still do the right thing under older versions of gcc ?
lvm_fatal I missed! plog should not be changed because the ## is needed to get rid of the trailing comma in the instance that there is nothing in a.
It is the right fix, it only worked on older gcc because it was lenient about the problem. ## gets rid of whitespace characters so what was happening was that the two quoted strings were abutted eg
"error:""there was an error" - not legal C
"error:" "there was an error" - is legal C
I'll fix lvm_fatal; the only reason it fell through was that it does not get used!
patrick
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Quoted 11 lines · Ernesto Silva
Hi,
In order to make things right I downloaded the 2.4.3 kernel and
compiled it (i386).With the new kernel running (lvm-mod load ok) I'm trying to
compile lvm tools, but there are lots of warinigs, all the same thing, the first of them is:
-----------------------------------------------------------
gcc -c -pipe -g -O2 -Wall -DDEBUG -I ../../tools/lib -I ../../tools
- debug.odebug.c
Am I reading this right, there's a " - " in between the include line and the object file? That didn't seem to work all that well on my gcc (2.95.2). You might want to see what's putting the dash in there... it probably wants to be a "-o"
Quoted 4 lines
In file included from
../../tools/lib/liblvm.h:97
from basename.c:34../../tools/lib/lvm_log.h:47:59: warning: nothing can be pasted after this token
<...snip...>
Quoted 1 line
Does anyone had a problem like this before???
Hmm...I don't get that at all! Which version of GCC are you using? Did you
download the 0.9.1_beta7 tarball or grab something from the cvs?
Regards,
- --
AJ Lewis
Sistina Software Inc. Voice: 612-379-3951 1313 5th St SE, Suite 111 Fax: 612-379-3952 Minneapolis, MN 55414 E-Mail: [email protected]
Current GPG fingerprint = 3B5F 6011 5216 76A5 2F6B 52A0 941E 1261 0029 2648
Get my key at: http://www.sistina.com/~lewis/gpgkey
(Unfortunately, the PKS-type keyservers do not work with multiple
sub-keys)
- -----Begin Obligatory Humorous Quote----------------------------------------
THE LESSER-KNOWN PROGRAMMING LANGUAGES #16:
C- This language was named for the grade received by its creator when he
submitted it as a class project in a graduate programming class. C- is
best described as a "low-level" programming language. In fact, the language generally requires more C- statements than machine-code statements
to execute a given task. In this respect, it is very similar to COBOL.
- -----End Obligatory Humorous Quote------------------------------------------
-----BEGIN PGP SIGNATURE-----
Version: PGP 7.0.1
iQA/AwUBOuZCWHC+DNfF0nVpEQJMVQCfWDINzWztoSaj/ayyOQvE9IRIa6QAoLVw 4/fh74fjjCMWQ4vRksVgKoEY
=SzDr
-----END PGP SIGNATURE-----
Quoted 14 lines · AJ Lewis
Quoted 5 lines · Ernesto Silva
Hi,
In order to make things right I downloaded the 2.4.3 kernel and
compiled it (i386).Quoted 8 lines
With the new kernel running (lvm-mod load ok) I'm trying to compile lvm
tools, but there are lots of warinigs, all the same thing, the first of them is:
-----------------------------------------------------------
gcc -c -pipe -g -O2 -Wall -DDEBUG -I ../../tools/lib -I ../../tools - debug.odebug.c
In file included from../../tools/lib/liblvm.h:97
from basename.c:34../../tools/lib/lvm_log.h:47:59: warning: nothing can be pasted after this token
Quoted 5 lines
<...snip...>
Quoted 1 line
Does anyone had a problem like this before???
Hmm...I don't get that at all! Which version of GCC are you using? Did you download the 0.9.1_beta7 tarball or grab something from the cvs?
I get similar warnings with gcc 3.0 from CVS. The indicated line has changed but the actual error is the same I think:
lvm_config.c:113:7: warning: pasting ""error: "" and ""error in config file: not in section at line %d"" does not give a valid preprocessing token lvm_config.c:117:7: warning: pasting ""error: "" and ""couldn't put %s:%s = %s into config"" does not give a valid preprocessing token lvm_config.c:162:9: warning: pasting ""warning: "" and ""unknown variable %s:%s in config file"" does not give a valid preprocessing token lvm_config.c:172:5: warning: pasting ""warning: "" and ""more than one value for %s:%s, using most recent"" does not give a valid preprocessing token lvm_config.c:186:5: warning: pasting ""warning: "" and ""more than one value for %s:%s, using most recent"" does not give a valid preprocessing token lvm_config.c:342:3: warning: pasting ""warning: "" and ""'%s' not a recognised boolean value, assuming false"" does not give a valid preprocessing token
patrick
Quoted 9 lines · Patrick
I get similar warnings with gcc 3.0 from CVS. The indicated line has changed but the actual error is the same I think:
lvm_config.c:113:7: warning: pasting ""error: "" and ""error in config file: not in section at line %d"" does not give a valid preprocessing token lvm_config.c:117:7: warning: pasting ""error: "" and ""couldn't put %s:%s = %s into config"" does not give a valid preprocessing token lvm_config.c:162:9: warning: pasting ""warning: "" and ""unknown variable %s:%s in config file"" does not give a valid preprocessing token lvm_config.c:172:5: warning: pasting ""warning: "" and ""more than one value for %s:%s, using most recent"" does not give a valid preprocessing token lvm_config.c:186:5: warning: pasting ""warning: "" and ""more than one value for %s:%s, using most recent"" does not give a valid preprocessing token lvm_config.c:342:3: warning: pasting ""warning: "" and ""'%s' not a recognised boolean value, assuming false"" does not give a valid preprocessing token
I seem to recall reading that there was some bogus issue about GCC 3.0 not allowing concatenated strings. This definitely looks like that problem. Try editing the relevant lines in lvm_config.c to have a single long string value, and see if that fixes the problem. That would be a real PITA.
Cheers, Andreas
Signature · 3 lines
Andreas Dilger \ "If a man ate a pound of pasta and a pound of antipasto,
\ would they cancel out, leaving him still hungry?"
http://www-mddsp.enel.ucalgary.ca/People/adilger/ -- Dogbert