Bug #29007 Missing symbols in "mysqlserver.lib", static embedded server library on Windows
Submitted: 10 Jun 2007 19:04 Modified: 18 Jun 2007 18:25
Reporter: Kent Boortz
Status: Closed
Category:libmysqld Severity:S2 (Serious)
Version:4.1.22 OS:Microsoft Windows
Assigned to: Kent Boortz Target Version:

[10 Jun 2007 19:04] Kent Boortz
Description:
As reported in the forum

  http://forums.mysql.com/read.php?117,152134,152134

the static embedded library has lots of unresolved symbols.

How to repeat:
Try link with the library using a test program, compiling like

  cl /MT -Iinclude -D_WINDOWS test.c \ 
    /link Embedded/static/release/mysqlserver.lib \ 
    Embedded/static/release/mysqlserver.lib \ 
    user32.lib wsock32.lib advapi32.lib /nologo /subsystem:console

The test program just containing some of the API function.

Suggested fix:
The problem is with "mysqldemb", that is supposed to hold the
part of the other libraries during build doesn't contain to
form the static embedded library. The project file for this
library is seriously outdated.
[10 Jun 2007 19:07] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/28477

ChangeSet@1.2665, 2007-06-10 19:07:18+02:00, kent@mysql.com +2 -0
  mysqldemb.vcproj:
    Added lots of missing files to make "mysqlserver.lib" complete (bug#29007)
  mysql.sln:
    Let 'mysqlserver' project also depend on 'vio', else "vio.lib" will
    not be linked into the "mysqlserver.lib" static embedded lib (bug#29007)
[12 Jun 2007 1:44] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/28545

ChangeSet@1.2666, 2007-06-12 01:33:23+02:00, kent@mysql.com +1 -0
  libmysqld.def:
    Corrected name of mysql_thread_{init,end} (bug#29007)
[12 Jun 2007 11:03] Joerg Bruehe
Both fixes are contained in the 4.1.23 build.

Versions 5.0 and up are not affected by this bug, 
because there we use "cmake" to control the build.
[18 Jun 2007 18:25] Paul DuBois
Noted in 4.1.23 changelog.

The mysqlserver.lib library on Windows had many missing symbols.
[25 Jun 2007 8:13] Bugs System
Pushed into 4.1.24
[25 Jun 2007 8:13] Bugs System
Pushed into 5.0.46
[25 Jun 2007 8:13] Bugs System
Pushed into 5.1.20-beta