Вызови cю функцию от Юлии под windows. MinGW против MSBuild - PullRequest
0 голосов
/ 29 апреля 2019

Попытка выяснить, почему простая функция c, скомпилированная с MinGW, может без проблем вызываться в Julia, но та же, скомпилированная с MSBuild (12.0), не будет работать.Я использую Julia 64bit, и я проверил, что функция c, скомпилированная в обоих направлениях, является 64-битной DLL.Я использую cmake для создания файла make

код Джулии:

println("hello world")
t = ccall((:giveMin, "C:\\MyProjects\\Julia-Tests\\some-c-lib\\build-mingw\\src\\libgetMinimum.dll"), Int32, ())
print(t)

Код c:

int givemin(void);
int giveMin(void){
int minval = 0; 
return minval; 
}

Как было сказано ранее.Код Julia будет работать только с dll, сгенерированным MinGW, но в другом случае будет выдана следующая ошибка:

ccall: не удалось найти функцию giveMin в библиотеке

...