我正在创建一个库,它需要一些汇编级代码。 我正在使用 NASM 来编写和集成我的 .asm 文件。 现在的问题是,我已经在 VS13 中创建了一个项目。现在我想向我的项目中添加和集成一个汇编级代码。 我已经在我的源目录中添加了一个 .asm 文件,但是当我尝试运行我的测试用例时,编译器无法找到我的汇编代码。
我想知道如何将我的 .asm 文件与我的 .c 文件链接起来。
我的项目结构:
->Project1(生成库)
--->来源
----->文件1.c
----->文件2.c
----->nasm.asm
->Project2(使用库并生成.exe的测试用例)
-->来源
---->主程序
现在,nasm.asm 二进制文件应该与 project1 生成的 .lib 相关联 并且 Project2 应该能够访问 project1.lib
如果问题有点不清楚,我深表歉意,以书面形式表达清楚对我来说有点复杂。如果您需要任何说明或额外信息,请告诉我。
非常感谢
最佳答案
对于你们每个人的汇编文件:
- 在Solution Explorer 中右键单击它并选择Properties
- 确保所选配置是所有配置或您正在使用的配置(这每次都让我很头疼!)
- 在配置属性常规中,将项目类型更改为自定义构建工具
从配置属性自定义构建工具常规设置以下项目:
- 命令行。以此为例:
nasm -fwin32 "%(FullPath)"-o %(Filename).obj
- 输出。这是必须的,VS 检查这个文件。我通常使用
%(Filename).obj
。 - 链接对象。
是
。如果您使用 obj 扩展名命名输出文件,它们会自动包含在链接阶段。
- 命令行。以此为例:
要检查您是否设置正确,请选择您的程序集文件,右键单击并选择编译。
关于c - Visual Studio 13 中的 NASM 设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31121355/