Bug #53690 Compile error when compiling mysqladmin with Visual Studio C++ Express 2010
Submitted: 17 May 2010 5:48 Modified: 19 May 2010 4:49
Reporter: Roel Van de Paar Email Updates:
Status: Not a Bug Impact on me:
None 
Category:MySQL Server: Compiling Severity:S2 (Serious)
Version:5.1.46 OS:Any
Assigned to: CPU Architecture:Any

[17 May 2010 5:48] Roel Van de Paar
Description:
mysql_com.h(365): error C2018: unknown character '0x40'
etc.

Relevant code:

365: #if MYSQL_VERSION_ID >= 50000
366:   KILL_QUERY= 254,
367: #endif
368:   KILL_CONNECTION= 255
369: };

There is no such "0x40" character in this section (checked with a hex editor). There is only a 0x40 higher up a comment section (0x40 = "@"), but removing this does not make the compile work. The same error is shown several times for mysqladmin as well:

(165): error C2018: unknown character '0x40'
(281): error C2018: unknown character '0x40'
(1087): error C2018: unknown character '0x40'

The relevant codes in this case are similar to the above:

165: #if MYSQL_PORT_DEFAULT == 0
166:   "/etc/services, "
167: #endif

281: #if MYSQL_VERSION_ID > 32300
282:    charsets_dir = argument;
283: #endif

1087: #if MYSQL_VERSION_ID >= 32200
1088:  puts("\
1089:  password new-password Change old password to new-password, MySQL 4.1 hashing.\n\
1090:  old-password new-password Change old password to new-password in old format.\n");
1091: #endif

How to repeat:
Install Visual Studio C++ Express 2010, try and compile mysqladmin.

Suggested fix:
No idea. 

The user here seems to be getting the same (read the last note by the original thread owner):
http://stackoverflow.com/questions/1169670/how-to-interpret-error-c2018-unknown-character-...
[17 May 2010 10:45] Bogdan Degtyariov
Roel,

Worked well for me with VS 2010 Express (debug).
Server configured as:

win\configure.js WITH_INNOBASE_STORAGE_ENGINE

sln files generated by CMake 2.8.1
[17 May 2010 15:12] MySQL Verification Team
Which source are you using?. I am able to compile bzr source.
[19 May 2010 4:49] Roel Van de Paar
Not a bug...

Have to use:

win\configure.js WITH_INNOBASE_STORAGE_ENGINE

sln files generated by CMake 2.8.1

which was not done in this case. Otherwise, linked files may be wrong versions etc.