неопределенная ссылка на _imp - PullRequest
0 голосов
/ 11 мая 2018

Я компилирую c ++ со случайной связью C в mingw.

Компоновщик показывает, что не может найти w.cpp (253): неопределенная ссылка на `_imp__lua_tolstring ' Согласно моим показаниям ... это должно быть __imp__lua_tolstring как связь как C

extern "C"
{
#include <lua.h>
#include <lauxlib.h>
#include "lualib.h"
}

В другом ответе читаю "Затем вы исправили это с помощью extern" C ", теперь вы получили единственное добавленное подчеркивание для cdecl, превращая imp в __imp_" Но это не происходит со мной ... В чем может быть причина?

Я использовал команду для просмотра содержимого библиотеки nm.exe -gC liblua51.a

00003.o:
0000000000 I __imp_luaL_addstring
           U _head_liblua51_a
0000000000 T luaL_addstring

00002.o:
0000000000 I __imp_luaL_addlstring
           U _head_liblua51_a
0000000000 T luaL_addlstring

00001.o:
0000000000 I __imp_luaJIT_version_2_0_4
           U _head_liblua51_a
0000000000 T luaJIT_version_2_0_4

как видите, здесь есть два подчеркивания.

...