将c程序打包为dll和exe

将c程序打包为dll和exe

Contents

Toggle

将c编译为dll使用gcc使用cl.exe将c编译为exe使用gcc使用cl

本文最后更新于 2024年5月16日。

将c编译为dll

使用gcc

(env_pandas) PS E:\mydoc\sync_pc_home_work\pyfile\py_c> gcc -shared -o add.dll add.c

这种方式直接生成64位dll,且只生成dll。

使用cl.exe

下面的打包方法是在vscode的shell中进行的。需要注意vscode的启动方式否则报错[[仅当从 VS 开发人员命令提示符处运行 VS Code 时,cl.exe 生成和调试才可用。]]

这种方法打包出来是32位dll,即便cl.exe和vscode都是64位的。除了生成dll外,还会生成相应的lib,obj,exp文件。

(env_pandas) PS E:\mydoc\sync_pc_home_work\pyfile> cd py_c

(env_pandas) PS E:\mydoc\sync_pc_home_work\pyfile\py_c> cl /LD add.c

Microsoft (R) C/C++ Optimizing Compiler Version 19.33.31629 for x86

Copyright (C) Microsoft Corporation. All rights reserved.

add.c

Microsoft (R) Incremental Linker Version 14.33.31629.0

Copyright (C) Microsoft Corporation. All rights reserved.

/out:add.dll

/dll

/implib:add.lib

add.obj

Creating library add.lib and object add.exp

如果想要打包成64位dll,需要在下面工具中打包:x64 Native Tools Command Prompt for VS 2022

C:\Program Files\Microsoft Visual Studio\2022\Community>e:

E:\mydoc\sync_pc_home_work\pyfile\py_c>cd E:\mydoc\sync_pc_home_work\pyfile\py_c

E:\mydoc\sync_pc_home_work\pyfile\py_c>cl /LD add.c

Microsoft (R) C/C++ Optimizing Compiler Version 19.33.31629 for x64

Copyright (C) Microsoft Corporation. All rights reserved.

add.c

Microsoft (R) Incremental Linker Version 14.33.31629.0

Copyright (C) Microsoft Corporation. All rights reserved.

/out:add.dll

/dll

/implib:add.lib

add.obj

Creating library add.lib and object add.exp

E:\mydoc\sync_pc_home_work\pyfile\py_c>

将c编译为exe

使用gcc

gcc -o c_program .\c_program.c

使用cl

cl /EHsc /Fe:MyProgram.exe MySourceFile.c

相关推荐

Java开发必备:28个实用工具类详解
365bet苹果版

Java开发必备:28个实用工具类详解

📅 09-20 👁️ 8667
人权包括哪些权利?
365app下载安装官方免费下载

人权包括哪些权利?

📅 02-13 👁️ 1853
2025年不限量流量卡办理全攻略:靠谱套餐怎么选?避坑指南+最新推荐