“未解决的外部符号”错误

如何解决“未解决的外部符号”错误

| 我正在使用一个示例程序,该程序应该允许使用称为OSC的协议控制MIDI设备。 我所做的是从以下位置下载SDK:http://mac.softpedia.com/get/Development/Libraries/oscpack.shtml \'examples \'文件夹包含一个名为\'SimpleSend.cpp \'的文件。的代码如下:
#include \"osc/OscOutboundPacketStream.h\"
#include \"ip/UdpSocket.h\"


#define ADDRESS \"127.0.0.1\"
#define PORT 7000

#define OUTPUT_BUFFER_SIZE 1024

int main(int argc,char* argv[])
{
    UdpTransmitSocket transmitSocket( IpEndpointName( ADDRESS,PORT ) );

    char buffer[OUTPUT_BUFFER_SIZE];
    osc::OutboundPacketStream p( buffer,OUTPUT_BUFFER_SIZE );

    p << osc::BeginBundleImmediate
        << osc::BeginMessage( \"/test1\" ) 
        << true << 23 << (float)3.1415 << \"hello\" << osc::EndMessage
        << osc::BeginMessage( \"/test2\" ) 
        << true << 24 << (float)10.8 << \"world\" << osc::EndMessage
        << osc::EndBundle;

    transmitSocket.Send( p.Data(),p.Size() );
}
我已经打开Visual C ++,并创建了一个名为\'osctemp \'的新(CLR控制台应用程序)项目。我从\'SimpleSend.cpp \'文件复制代码,并将其粘贴到为我的项目创建的主cpp文件中,并保留默认项目文件中的以下代码行:
#include \"stdafx.h\"

using namespace System;
然后,我导航到stdafx.h头文件,并注意到该文件的底部包含以下行:
// TODO: reference additional headers your program requires here
...所以我乖乖地将include和定义从我的主cpp文件移到了这里。 我还注意到,我需要将包含项添加到我的项目中,因此在Windows资源管理器中,我将文件夹\'osc \'和\'ip \'复制到我的项目文件夹中。 运行时,我收到以下错误: 1> ------开始构建:项目:osctemp,配置:调试Win32 ------ 1> stdafx.cpp 1> AssemblyInfo.cpp 1> osctemp.cpp 1>正在生成代码... 1> .NETFramework,Version = v4.0.AssemblyAttributes.cpp 1> osctemp.obj:错误LNK2028:未解析的令牌(0A00000A)\“ public:char const * __thiscall osc :: OutboundPacketStream :: Data(void)const \”(?Data @ OutboundPacketStream @ osc @@ $$ FQBEPBDXZ)函数\“ int __cdecl main(int,char * * const)\”(?main @@ $$ HYAHHQAPAD @ Z) 1> osctemp.obj:错误LNK2028:未解析的令牌(0A00000B)\“ public:unsigned int __thiscall osc :: OutboundPacketStream :: Size(void)const \”(?Size @ OutboundPacketStream @ osc @@ $$ FQBEIXZ) \“ int __cdecl main(int,char * * const)\”(?main @@ $$ HYAHHQAPAD @ Z) 1> osctemp.obj:错误LNK2028:未解析的令牌(0A00000C)\“ public:void __thiscall UdpSocket :: Send(char const *,int)\”(?Send @ UdpSocket @@ $$ FQAEXPBDH @ Z) “ int __cdecl main(int,char * * const)\”(?main @@ $$ HYAHHQAPAD @ Z) ...(还有更多类似的东西)... 1> D:\\ Temp \\ OSCTEMP \\ osctemp \\ Debug \\ osctemp.exe:致命错误LNK1120:40个未解决的外部组件 我错过了什么?     

解决方法

        从问题描述中,我找不到有关如何链接到SDK库的任何信息。你这样做了吗? 要链接到SDK库,您需要一个或多个.lib文件。即使将SDK作为DLL分发,您也需要一个lib文件来进行构建时链接。您应该通读SDK文档,并查找有关链接依赖关系的指南。 如果您似乎在SDK发行版中找不到任何lib文件,则很可能是您需要先构建SDK来生成一个库,然后再链接到它。或者,如果SDK附带了一个现成的VS项目,则可以将其添加到解决方案中,并设置自己的项目以依赖它(即VS会执行查找输出库并与之链接的工作)。 同样,如果SDK具有任何下降的标准,那么如果有必要,应该有一些有关自行构建SDK的文档。 祝好运。     ,        您或者没有提取正确的库,或者您的原型没有根据库中的实际内容正确定义库函数。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


依赖报错 idea导入项目后依赖报错,解决方案:https://blog.csdn.net/weixin_42420249/article/details/81191861 依赖版本报错:更换其他版本 无法下载依赖可参考:https://blog.csdn.net/weixin_42628809/a
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下 2021-12-03 13:33:33.927 ERROR 7228 [ main] o.s.b.d.LoggingFailureAnalysisReporter : *************************** APPL
错误1:gradle项目控制台输出为乱码 # 解决方案:https://blog.csdn.net/weixin_43501566/article/details/112482302 # 在gradle-wrapper.properties 添加以下内容 org.gradle.jvmargs=-Df
错误还原:在查询的过程中,传入的workType为0时,该条件不起作用 &lt;select id=&quot;xxx&quot;&gt; SELECT di.id, di.name, di.work_type, di.updated... &lt;where&gt; &lt;if test=&qu
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct redisServer’没有名为‘server_cpulist’的成员 redisSetCpuAffinity(server.server_cpulist); ^ server.c: 在函数‘hasActiveC
解决方案1 1、改项目中.idea/workspace.xml配置文件,增加dynamic.classpath参数 2、搜索PropertiesComponent,添加如下 &lt;property name=&quot;dynamic.classpath&quot; value=&quot;tru
删除根组件app.vue中的默认代码后报错:Module Error (from ./node_modules/eslint-loader/index.js): 解决方案:关闭ESlint代码检测,在项目根目录创建vue.config.js,在文件中添加 module.exports = { lin
查看spark默认的python版本 [root@master day27]# pyspark /home/software/spark-2.3.4-bin-hadoop2.7/conf/spark-env.sh: line 2: /usr/local/hadoop/bin/hadoop: No s
使用本地python环境可以成功执行 import pandas as pd import matplotlib.pyplot as plt # 设置字体 plt.rcParams[&#39;font.sans-serif&#39;] = [&#39;SimHei&#39;] # 能正确显示负号 p
错误1:Request method ‘DELETE‘ not supported 错误还原:controller层有一个接口,访问该接口时报错:Request method ‘DELETE‘ not supported 错误原因:没有接收到前端传入的参数,修改为如下 参考 错误2:cannot r
错误1:启动docker镜像时报错:Error response from daemon: driver failed programming external connectivity on endpoint quirky_allen 解决方法:重启docker -&gt; systemctl r
错误1:private field ‘xxx‘ is never assigned 按Altʾnter快捷键,选择第2项 参考:https://blog.csdn.net/shi_hong_fei_hei/article/details/88814070 错误2:启动时报错,不能找到主启动类 #
报错如下,通过源不能下载,最后警告pip需升级版本 Requirement already satisfied: pip in c:\users\ychen\appdata\local\programs\python\python310\lib\site-packages (22.0.4) Coll
错误1:maven打包报错 错误还原:使用maven打包项目时报错如下 [ERROR] Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources (default-resources)
错误1:服务调用时报错 服务消费者模块assess通过openFeign调用服务提供者模块hires 如下为服务提供者模块hires的控制层接口 @RestController @RequestMapping(&quot;/hires&quot;) public class FeignControl
错误1:运行项目后报如下错误 解决方案 报错2:Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project sb 解决方案:在pom.
参考 错误原因 过滤器或拦截器在生效时,redisTemplate还没有注入 解决方案:在注入容器时就生效 @Component //项目运行时就注入Spring容器 public class RedisBean { @Resource private RedisTemplate&lt;String
使用vite构建项目报错 C:\Users\ychen\work&gt;npm init @vitejs/app @vitejs/create-app is deprecated, use npm init vite instead C:\Users\ychen\AppData\Local\npm-