Как использовать функции из двух проектов (статические библиотеки) в третьем проекте (исполняемый файл)? - PullRequest
0 голосов
/ 19 сентября 2019

У меня есть три проекта в рамках одного решения.Я строю две статические библиотеки и пытаюсь связать их с моим исполняемым проектом (он называется ensemble ).Я добавил каталоги файлов .lib в каталоги библиотек Linker / General и Linker / Input внутри проекта ensemble .

Внутри одного из моих проектов статических библиотек у меня есть следующее:

acquisition.cpp

#include "acquisition.h"

//other stuff

int run_acquisition() {
   //runs function
}

acquisition.h

#pragma once
int run_acquisition();

Внутри ансамбль , у меня есть следующее:

#include "acquisition.h"

int main(void) {
    run_acquisition();


    return 0;
}

В этом случае я получаю сообщение об ошибке «идентификатор« run_acquisition »не определен».Программа видит приобретение.h, но я не могу понять, как решить эту проблему.Добро пожаловать в любой отзыв!

Обновление № 1: я исправил опечатку.Вот журнал сборки -

3>------ Build started: Project: ensemble, Configuration: Debug x64 ------
3>main.cpp
3>main.obj : error LNK2019: unresolved external symbol "int __cdecl run_acquisition(void)" (?run_acquisition@@YAHXZ) referenced in function main
3>C:\XIMEA\Examples\Bin\ximea_camera.lib : warning LNK4272: library machine type 'x86' conflicts with target machine type 'x64'
3>C:\MirrorcleTech\SDK-Cpp\x64\Debug\ensemble.exe : fatal error LNK1120: 1 unresolved externals
3>Done building project "ensemble.vcxproj" -- FAILED.
...