опция компиляции для файлов rcpp и lib в Windows

Привет, я пытаюсь работать с rcpp. Для этого мне нужен код cpp, который загружает dll с помощью lib-файла (который имеет то же имя, что и ). код, который я запускаю:

cppFunction(includes=c("#include "windef.h","#include \"C:/data/Rdata/IHUAPI.H\" "), 'int functietom(int a){long serverhandle;int lRet;lRet = ihuConnect ( "historian1",NULL,NULL, &serverhandle ); return 5;}', verbose  
 = TRUE)

Я получаю следующую ошибку:

неопределенная ссылка на `ihuConnect@16' collect2: ld вернул 1 статус выхода Ошибка в inDL(x, as.logical(local), as.logical(now), ...):
невозможно загрузить общий объект 'C :/Users/user1663/AppData/Local/Temp/RtmpSW1Ki7/sourcecpp_1a04df63309/sourceCpp_26588.dll': Ошибка загрузки библиотеки:

функция ihuConnect находится в файлах ihuapi.lib и ihuape.dll. В С++ в Visual Studio я добавляю файл lib как добавленную зависимость, а затем избавляюсь от этой ошибки, потому что я тоже иногда получаю эту ошибку, а затем я забыл добавить файл lib в компиляцию.

Таким образом, мой вопрос: как я могу добавить этот файл lib в качестве опции в компиляцию.

когда я использую dyn.load

("C:/data/Rdata/ihUAPI.dll")

а затем проверьте, загружен ли он, затем он говорит, что да, проблема в том, что getDLLRegisteredRoutines ('ihUAPI', addNames = TRUE), затем он говорит: кадр данных с 0 столбцами и 0 строками

поэтому dll, похоже, не содержит функций, но это так, когда я использую ее из Visual Studio.

Пожалуйста, помогите с lib-файлами и ddl-файлами.

Том Вамбек


person user2885953    schedule 16.10.2013    source источник


Ответы (1)


Вы пропустили запись Часто задаваемые вопросы по Rcpp 2.9 'Can Я использую Rcpp с Visual Studio?».

И убить всю интригу: Нет, нельзя.

person Dirk Eddelbuettel    schedule 16.10.2013