腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
视频
沙龙
1
回答
静态libgcc和静态libstdc++不工作
、
、
我尝试用-static -静态-libgcc-静态-libstdc++编译项目,以便静态链接库。但是,exec是用动态链接库编译的。我试着重新安装gcc和g++,但是没有帮助。这完全是我本地环境的错误,因为在别人的机器上,它是静态连接的。 ELF 64-bit LSB executable, x86-64, version 1 (GNU/Linux), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=, not stripped 我有Ubuntu 14.10,gcc版本4.8.4 谢谢
浏览 5
提问于2015-07-15
得票数 2
1
回答
C:使用MinGW-w64静态/动态链接的正确方法
、
、
、
直觉: MinGW-w64是GNU编译器工具(GCC等)的Windows端口. 预编译的Windows二进制文件是.dll (动态链接)/ .lib (静态链接). 但是,MinGW-w64使用GNU编译器工具,因此需要.so / .a二进制文件。 我发现了什么: 根据的说法,MinGW/MinGW-w64/Cygwin链接器似乎在寻找。 根据,您应该动态地链接到.so,静态地链接到.a。 关于SO的一个问题表示您可以,而在SO 上有另一个问题。 不幸的是,我无法从MinGW & MinGW-w64中找到明确的文档,说明在动态/静态链接库时什么是
浏览 9
提问于2017-04-09
得票数 12
回答已采纳
2
回答
如何使用“静态链接”和“动态链接”与gcc和Visual构建C/C++程序?
、
、
、
、
库可以通过两种方式在应用程序中使用: Statically-linkedDynamically-linked 但是如何使用Visual (windows)和GCC来实现这一点呢? 我知道图书馆仅以以下4种方式分发: windows的Sourceheader-only libraries*.lib文件。*.a用于linux*.dll (windows)和*.so (Linux)。 源发行版刚刚编译。“仅标头库”只不过是一个源发行版。 现在,如果所需的库是以*.lib表单分发的。为了使用它。 在Visual Stuido上: 我们将包含标题(*.h)的目录路径添加到配置属性>常规>附加
浏览 6
提问于2010-02-11
得票数 3
3
回答
"gcc链接“和"ld链接”之间有什么关系?
、
据说linux加载程序是/usr/bin/ld,但通常我们使用gcc/g++链接库和可执行文件,很少使用"ld“。 上次我手动使用" ld“是在我学习linux程序集时,生成可执行文件的唯一方法是.o文件直接生成可执行文件而不需要任何库。 我的问题是,gcc/g++是否包含了"ld“的一些功能包装,因为原始的"ld”太难使用了?或者我们不应该明确地使用"ld“来连接c/c++程序,因为是blablabla?
浏览 2
提问于2016-12-29
得票数 10
回答已采纳
5
回答
是否强制链接到Xcode目标的库的静态链接?
、
、
我的Xcode针对hdf5库的目标链接(使用Link Binary with Libraries构建阶段)。本地库是使用MacPorts安装的,因此/opt/ libhdf5 /lib同时包含该库的动态(.dylib)和静态(.a)版本。 构建的文本输出显示,正如预期的那样,在构建的链接步骤中有一个-lhdf5。然而,gcc似乎更倾向于动态链接库而不是静态链接库。有没有办法强制gcc (通过编译器开关或Xcode)静态链接libhdf5.a? 我找到的唯一解决方案是将libhdf5.a复制到项目(或其他)目录中,并针对该副本进行链接,从而避免在同一位置具有动态和静态版本。
浏览 0
提问于2009-01-19
得票数 12
回答已采纳
3
回答
用__stdcall编写动态链接库的GCC
、
、
当我们在visual studio 2008中使用__stdcall编译动态链接库时,动态链接库内部编译的函数名是。 FunctionName 尽管当我们使用wx-dev-cpp编译同一个dll时,使用wx-dev-cpp的GCC附加了函数的参数数量,因此使用依赖遍历的函数的名称如下所示。 函数名@numberOfParameters参数或==函数名@8 你如何告诉GCC编译器从dll中导出的符号中删除@nn?
浏览 2
提问于2008-09-20
得票数 8
回答已采纳
1
回答
将生成的libevent链接为静态库时,链接器会出错,但作为共享库链接时,链接器会工作
、
、
、
、
我已经使用GCC编译器(在linux上)从源代码构建了libevent库作为静态库。Cmake选项: cmake -B build -S . -DEVENT__DISABLE_OPENSSL=ON -DEVENT__LIBRARY_TYPE=STATIC -DEVENT__DISABLE_DEBUG_MODE=ON cmake --build build --config Release CMakeLists.txt中的链接库: target_link_libraries(${PROJECT_NAME} ${CMAKE_SOURCE_DIR}/libevent_core.
浏览 24
提问于2020-10-26
得票数 0
1
回答
未链接时,GCC -l (链接库选项)显示相同的输出
、
我有关于gcc编译器链接库选项的问题。 我从docker容器中运行了一个gcc编译器.当我尝试通过键入以下内容进行编译时 "gcc -Iinclude -Llib_x86 *.c *.h -o main", 输出显示如下: 未定义对"secure_ClearStream“的引用 未定义对"proc_readProcess“的引用 未定义对"proc_getOutput“的引用 。。(以及来自secure.a和proc.a库的另外16个函数) 然后我尝试了使用-l的链接库选项,输入 "gcc -Iinclude -Llib_x86 *.c *.h
浏览 5
提问于2021-03-06
得票数 0
2
回答
C-解析文本和调用函数
、
、
我在parser.o库中有文本解析器。我想解析一些文本(查找函数)并调用它们。我能够解析文本,但我不知道如何从库函数中调用函数。o。我使用dlopen(NULL, RTLD_NOW);来获取对主程序的引用,但当我运行实际程序时,它找不到给定的函数,并出现错误函数(function_name位于"./program: undefined symbol: function_name"中) :/。我不能用dlopen(functions.o,...)链接functions.o,因为它不是动态链接库。 `gcc main.c lib/*` 有帮助吗?:)
浏览 0
提问于2012-12-04
得票数 0
回答已采纳
1
回答
使用-L如何影响链接器?
、
、
、
、
我在Linux上很新,所以也许这是一个简单的问题。 问题是:在没有附加库的情况下,添加-L/path如何影响链接器? 我的问题是: 我正在尝试建立一个交叉编译工具链,其中包含两个第三方库。 我使用的是linaro arm-linux-gnueabihf-raspbian链(目标是raspberry pi),它似乎工作正常。 我的一个模块不需要任何链接库,它编译良好并在目标上运行。 尝试链接我的库的那个会编译,但是经过一段时间的思考之后,它就会崩溃,不再使用消息链接了。 arm-linux-gnueabihf-gcc foo1.o foo2.o foo3.o ... foo12.o foo13.
浏览 2
提问于2015-06-03
得票数 1
回答已采纳
2
回答
在Linux中创建静态库时出现问题
、
我正在创建一个简单的库来在我的应用程序中使用,以省去我一遍又一遍定义一些函数的麻烦。 这是我的makefile: CC=gcc CFLAGS=-Wall -g -Wextra OBJS=getline.o debug.o LIB=libjimi.a .PHONY: clean purge libjimi.so : $(OBJS) ar rcs $(LIB) $(OBJS) @echo done! %.o : %.c $(CC) $(CFLAGS) -c $^ clean : @rm *.o purge : clean
浏览 4
提问于2009-03-12
得票数 1
回答已采纳
1
回答
共享库和静态库的混合
我使用premake5在多个平台上构建一个复杂的应用程序。我的应用程序链接到静态和共享/动态外部库。在这种情况下,似乎存在重要的构建链依赖关系,破坏预生成的“gmake”make文件。 案例说明: 如果将共享库和静态库混合在预创制“链接”语句中,GCC似乎会感到困惑,并期望您的共享库引用实际上是静态库。当它找不到它们时,链接阶段就失败了。这通常是通过在共享库前加上'-Bdynamic‘来处理的。不幸的是,无法告诉premake5外部链接库是静态的或动态的,因此您必须手动修复make文件,这违背了构建实用程序的目的。 这是一种表演的阻拦。我认为您不能仅仅将"-Bdynamic“输
浏览 1
提问于2015-07-09
得票数 2
回答已采纳
2
回答
如何使DLL访问装入它的exe应用程序中的类/对象
、
我有一个加载动态链接库运行时的C# exe应用程序,我想知道动态链接库如何访问应用程序的公共静态类??
浏览 1
提问于2014-06-09
得票数 0
1
回答
静态库和动态链接库对WP8意味着什么?
、
、
、
、
当我读到的时候,我看到 Windows空动态链接库 用于为Windows应用程序创建本机动态链接库的项目。 Windows空静态库 用于为Windows应用程序创建本机静态库的项目。 静态库和动态链接库对WP8意味着什么? 假设我有我的Windows库源代码(例如openssl),我是否需要转换为WP8静态库以供WP8应用程序使用? 无论我是使用WP8静态链接库还是动态链接库,我都必须将它们封装在WP8运行时组件中,以供应用程序使用,对吗?
浏览 2
提问于2013-06-20
得票数 0
回答已采纳
3
回答
如何在Android上创建本地C++库?
、
、
、
我需要用C++编写一个动态链接库,这个链接库是由Java在Android上使用的。据我所知,它应该是.so库,但我不知道如何做到这一点。我试过Cygwin,但它崩溃了 $ gcc 1.cpp /usr/lib/gcc/i686-pc-cygwin/4.3.4/../../../../i686-pc-cygwin/bin/ld:找不到-luser32 collect2: ld返回1退出状态 1.cpp: int main(int, char**) { return 0; } 有人能帮我吗? P.S.我不擅长*nix,所以在Windows下应该做得更好 UPD:我已经安装了Android
浏览 2
提问于2010-06-30
得票数 8
3
回答
加载动态链接库的第三种方法是什么?引脚
、
、
现在,我可以使用静态加载(包括必要的头文件,并使用#杂注(lib,"xxx"))和动态加载(使用函数LoadLibrary或LoadLibraryEx)加载动态链接库。 一些公司在面试中询问加载动态链接库的其他方法。 但我想知道是否有其他方法来加载动态链接库?
浏览 0
提问于2012-07-29
得票数 1
回答已采纳
1
回答
如何不对所有链接库使用-wrap?
、
、
我的程序使用了几个预编译的静态库。我包装了malloc和free,但我希望其中一个链接库使用‘真正的’malloc和free。当我运行的时候: gcc [...] -W1, --wrap=malloc -W1, --wrap=free [used libraries] 所有的库都将使用包装函数。 部分链接在这里是一种方法吗?如果我动态链接这一个库呢? 提前谢谢你,Jacek
浏览 12
提问于2020-03-12
得票数 3
4
回答
如何用C++静态库编写C#应用程序?
、
、
我把我的C++动态链接库变成了静态库,只是为了获得更多的知识。我的问题是,在C# express/MS visual studio中,如何使用.obj文件来编译这两个项目?
浏览 0
提问于2009-04-08
得票数 23
回答已采纳
1
回答
“在静态库中使用MFC”链接到MFC80U.dll
、
、
在我的Windows CE项目中,我试图告诉Visual MFC静态链接到最初不使用C++的项目中的MFC。但是,连接成功后,依赖项遍历(depends.exe)会说我的动态链接库是动态链接到MFC80U.DLL和MSVCR90.DLL的。 如果将“使用MFC”设置为“使用标准Windows库”,并且删除了需要MFC的代码,则这两个DLL都不会链接进来。我如何才能获得真正的静态链接到MFC和标准库?
浏览 2
提问于2010-01-19
得票数 1
回答已采纳
1
回答
C链接Makefile中的外部库
、
在编译时,我遇到了链接库(术语箱)的问题。我知道错误: make: *** No rule to make target `termbox.h', needed by `test.o'. Stop. Makefile: edit: test.o gcc -Wall -o edit test.o test.o: test.c termbox/src/termbox.h gcc -Wall -c test.c -ltermbox/src 包括: #include "termbox/src/termbox.h" 我也试过使用编译后的库,但遇到了类似
浏览 0
提问于2019-12-07
得票数 1
回答已采纳
2
回答
Windows中的链接库
、
、
、
、
我很难找到关于如何在Windows中链接库的信息。 Linux似乎有这些可爱的gcc选项(来自)。 gcc MadgwickAHRS.c -o MadgwickAHRS 然而,我必须在Windows中使用类似的东西(来自): gcc -c -DBUILDING_EXAMPLE_DLL MadgwickAHRS.c gcc -shared -o MadgwickAHRS.dll MadgwickAHRS.o -l,--out-implib,MadgwickAHRS.a 第一个错误是: c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../libming
浏览 1
提问于2012-10-18
得票数 2
2
回答
C++库兼容性
、
、
、
我目前正在写一个图书馆,并正在考虑从GCC 4.1.2转到4.5.2 (最新版本) GCC。如果我将我的代码编译成一个静态库,我是否可以假设编译器兼容性(显然是在同一个操作系统上)应该不会对客户端造成影响? 编辑以进一步澄清:如果我向客户端提供一个用gcc 4.5.2编译的静态链接库,那么这个库的用户在他们必须使用的编译器和版本方面有什么限制?
浏览 0
提问于2011-01-16
得票数 8
回答已采纳
4
回答
从特定库实例化对象时出现分段错误
、
、
、
我有一个C++应用程序(大大缩短,如下所示); #include <iostream> #include "MyClass.h" void foobar() { MyClass a; } int main(int argc, char** argv) { std::cout << "Hello world!\n"; return 0; } 其中"MyClass“是在静态链接库(.a)中定义的。 然而,这个应用程序在它启动的瞬间就出现了分段故障,并且我永远不会到达"Hello world“。 我可以从同一个库中创
浏览 3
提问于2009-12-07
得票数 0
回答已采纳
2
回答
iphone应用程序与dlopen(/usr/lib/libSystem.B.dylib,0x00000009)崩溃
、
、
、
iphone应用程序与dlopen(/usr/lib/libSystem.B.dylib, 0x00000009)崩溃 控制台告诉我: SDKs/iPhoneSimulator5.0.sdk/System/Library/PrivateFrameworks/Celestial.framework/Celestial dlopen(/usr/lib/libSystem.B.dylib,0x00000009) 当我链接库libSystem.B.dylib时,我收到错误: /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin
浏览 4
提问于2011-11-22
得票数 0
回答已采纳
2
回答
如何从C#中的动态链接库获取类型列表?
、
、
我想让一个C#应用程序指向一个动态链接库,并获取该动态链接库中定义的类型的列表。到目前为止,我所拥有的在表面上看起来是正确的,但给出了下面指出的错误。 using System.Reflection; ... static void Main(string[] args) { Assembly SampleAssembly; SampleAssembly = Assembly.LoadFrom("C:\\MyAssembly.dll"); //error happens here foreach (Type tp in SampleAssembly
浏览 6
提问于2010-08-20
得票数 4
回答已采纳
1
回答
此o/P...服务器上载失败的原因
、
、
、
、
请告诉我为什么我总是收到“服务器上传失败!”在下面给出的代码中。 int rval = 28; char *return_str=NULL; return_str = strdup((rval!=28) ? ("Server Upload Failed!") : ("Server TimeOut Reached!")); printf(" return_str : %s\n", return_str); Output that iam getting is ====> Server Upload Failed! . I want to
浏览 1
提问于2011-12-14
得票数 0
回答已采纳
2
回答
如何在linux (c ++编程)中创建和使用动态和静态库?
如何创建和使用动态和静态库? 这里有人能简单地解释如何在c和静态和动态库中创建和使用动态和静态库吗?另外,请告诉我为什么使用gcc -c和gcc -o。我知道gcc是一个编译器,但是-c和-o。这是什么目的?
浏览 0
提问于2015-11-27
得票数 0
回答已采纳
1
回答
如何在VS2005中将静态库项目转换为dll项目
、
、
、
当我在vs2005中创建项目时。我也可以创建Win32->Win32Project。我可以选择“控制台应用程序”或"dll“或”静态库“。 如果我创建了一个静态库项目。如何将其转换为dll项目。我在创建的项目的设置面板中找到。General->Configuration Type,我可以将静态库(.lib)切换到动态链接库。我得到了一个动态链接库。但我对它没有兴趣。而且我不能在其他项目中使用它。如何在VS2005中将静态库项目转换为动态链接库项目,非常感谢!
浏览 3
提问于2009-12-29
得票数 2
回答已采纳
1
回答
在MinGW编译过程中链接静态库时出现的问题,为什么?
、
、
、
、
我正在尝试编译一个简单的项目,它使用我的一个标题。我在Windows上,我使用的是MinGW-W64-builds-4.3.5,假设这个项目名为test.cpp,我想使用标题osmanip编译它,这也需要链接它创建的静态库libosmanip.lib。静态库已在MSYS2中编译和创建,然后复制到Windows文件系统中。如果我试图用以下方法编译: g++ -std=c++17 -losmanip .\test.cpp 为了搜索系统标题和库路径,我执行了以下操作: g++ -v test.cpp 并决定将头放入C:\MinGW\bin\..\lib\gcc\i686-w64-mingw32\8.
浏览 5
提问于2022-06-22
得票数 0
回答已采纳
1
回答
编译后停止与仅检查语法之间的区别
、
、
、
、
当使用gcc或g++时,告诉GCC只编译一个文件而不是链接(-S)和告诉它不要生成输出文件(-o“nul”)有什么区别: gcc.exe/g++.exe -S "filename" -o "nul" ..。告诉它只检查语法(-只检查语法)? gcc.exe/g++.exe -c "filename" -fsyntax-only 这两个选项都不会产生输出,只会运行编译阶段,并且运行所需的时间相同。 我使用的是GCC的Windows端口,它将"nul“视为可以吃掉所有输出的空设备(如/dev/ null )。 编辑:正如Mike所指出的,当只
浏览 4
提问于2014-07-23
得票数 3
回答已采纳
4
回答
GCC,ARMboot -创建没有任何库和任何操作系统的独立应用程序
、
、
、
、
我有一个嵌入式硬件系统,其中包含一个基于 (非常类似于Uboot和PPCboot)的引导加载程序。 此引导加载程序通常用于从闪存加载uClinux映像。但是,现在我尝试使用这个引导加载程序来运行一个独立的helloworld应用程序,它不需要任何链接库。实际上,它只包含主函数中的while(1){}代码。 我的问题是,为了构建一个独立的、格式正确的二进制文件,我无法找到GCC应该使用的设置。 我确实使用了以下构建命令: cr16-elf-gcc -o helloworld helloworld.c -nostdlib 它产生警告信息: 警告:找不到条目符号_start;默认为00000004
浏览 3
提问于2010-01-08
得票数 8
回答已采纳
1
回答
安装GCC-4.9而不添加根路径和二进制文件
、
、
、
我刚刚安装了gcc 4.9使用的链接,这是一个非常好的链接。但我只有一个不想搞砸的问题->链接库和路径变量。 我们大学里有一个集群,我把它安装在我的主目录中(没有根目录)。现在,我的主目录包含这个文件夹,其中所有gcc文件夹都是: bin include lib lib64 libexec share 我要做什么才能指向具有附加链接的bin文件夹中的g++/gcc二进制文件?例如,设置ld_library_path,设置二进制路径(export = /home/asdf/gcc4.9/bin:$ PATH )。等等。 有谁能提供详细的信息,使用gcc/g++ 4.9
浏览 1
提问于2014-05-17
得票数 10
回答已采纳
1
回答
import =动态链接?& include =静态链接?
、
、
我想知道Object-c中import和include的区别。 顺便说一下,我不太清楚动态链接和静态链接的区别。 如果我使用带有静态链接库,是不是意味着我从库中为我的程序复制所需的代码并与它们链接?然后我的程序就可以使用库中的代码了。 如果我使用具有动态链接库,这是否意味着当我的程序运行时,我只将我需要的代码从库引用到我的程序中。然后我的程序就可以使用“参考代码”了。
浏览 0
提问于2012-06-27
得票数 0
回答已采纳
2
回答
eclipse cdt中的链接静态库
、
、
我很抱歉!我已经用谷歌搜索了很多次,都找不到答案!我知道这很愚蠢。 我不能在eclipse cdt中链接静态库(*.a)。我在项目->设置-> GCC C++链接器->库中列出了所有这些库。我使用绝对路径来确保库是正确的.我得到了: 找不到-l/usr/local/lib/libboost_date_time.a 我确信无论我做错了什么都是愚蠢的: 编辑--我应该提一下,我在运行时链接库……
浏览 44
提问于2011-02-10
得票数 20
回答已采纳
1
回答
静态库gcc -未找到库
、
、
我想创建静态库,但是出了点问题。我有makefile: static: main.c tree.c gcc -c -Wall tree.c -o tree.o ar crs libtree.a tree.o gcc -Wall -static main.c -L. -ltree -o main ./main 当我写"make static“时,它告诉我: gcc -c -Wall tree.c -o tree.o ar crs libtree.a tree.o gcc -Wall -static main.c -L. -ltree -o main ld:
浏览 1
提问于2017-03-15
得票数 1
1
回答
gcc -u符号编译器选项
、
、
我们什么时候使用gcc -u编译器选项?你也能举个例子吗? 说: 假装符号符号未定义,以强制链接库模块来定义它。您可以用不同的符号多次使用‘-u’来强制加载附加的库模块。
浏览 2
提问于2016-08-18
得票数 5
4
回答
如何在VS10中使用libssh
、
、
如何将libssh实现为编译器可以识别的库?我使用的是Visual Studio2010libssh,并且没有问题地包含了Boost库,但是我使用Boost的过程很奇怪,我可以告诉C++将会有所不同。 我真的不想做一个动态链接库文件,我想要一个可执行文件,但我知道动态链接库文件可以通过.rc脚本嵌入到可执行文件中。(然后提取并加载) 除了Boost之外,我从来没有在我的项目中包含过库,我觉得我真的应该知道如何做到这一点。请注意,这是libssh,不是libssh2。谢谢。
浏览 1
提问于2011-11-21
得票数 10
回答已采纳
2
回答
在C#中创建可从其动态链接库调用的应用程序接口
、
、
我知道这个标题对我的问题有点令人困惑。 让我解释一下:-我的前辈们写了一些DLL,我在C#中的用法如下: 假设现有动态链接库名称为SeniorDLL,我想使用该动态链接库中的函数SeniorFunc。我所做的是: private delegate int SeniorFunc(IntPtr Blah); [DllImport("kernel32")] public extern static IntPtr LoadLibrary(string lpFileName); [DllImport("kernel32", CharSet = CharSet.Ansi
浏览 1
提问于2010-12-23
得票数 0
回答已采纳
1
回答
如何在没有p线程GC2.dll的情况下执行程序?
、
、
、
、
我使用进行C语言的编程。 如果我使用这个命令编译我的程序与GCC/明w32: mingw32-gcc.exe -c "Console.c" -o "Console.o" mingw32-gcc.exe -o "Console.exe" "Console.o" "libpthreadGC2.a" 我需要将pthreadGC2.dll放在同一个目录或系统文件夹中。 如何将我的程序与DLL结合起来?链接器? (来自维基百科) 以下是可能需要的所有文件: libpthreadGC2.a⇒静态链接库 ⇒
浏览 2
提问于2013-11-27
得票数 2
1
回答
Beagle骨交叉编译动态链接混淆
、
、
、
、
我在这里不是要求解决一个bug或问题,而是想从那些有更多经验的人那里了解一些事情。 我买了一个BeagleBone黑(Debian )。通过使用gcc-linaro和yagarto工具附带的make实用程序,我正在交叉编译Windows上的C++。 在用C编译器开发C代码时,所有代码都可以正常工作和执行。 但是,使用C++,当我构建一个可执行文件并将其传输到bone (通过WinSCP)时,在执行时会得到以下链接器错误: “./分类帐1:/usr/lib/arm gnueabihf/libstdc++.so.6:版本`GLIBCXX_3.4.21‘not (按./分类帐1的要求)” 我不是要确
浏览 5
提问于2018-01-14
得票数 2
2
回答
直接告诉gcc静态链接库
、
、
、
使用-Wl,-Bstatic告诉gcc我想静态链接哪些库,这对我来说很奇怪。毕竟,我会直接告诉gcc所有其他关于与库(-Ldir,-llibname)链接的信息。 有没有可能直接告诉gcc驱动哪些库应该静态链接? Clarification:我知道如果某个库只存在于静态版本中,它将在没有-Wl,-Bstatic的情况下使用它,但我想暗示gcc更喜欢静态库。我也知道直接指定库文件会链接到它,但我更喜欢保持包含静态库和动态库的语义相同。
浏览 41
提问于2011-07-05
得票数 158
回答已采纳
4
回答
如何用visual basic的gcc编译器/Mingw创建动态链接库?
、
、
如何用visual basic的gcc编译器/Mingw创建动态链接库?
浏览 0
提问于2010-04-27
得票数 3
2
回答
如何在c++中使用DLL
、
我需要用动态链接库编写一个c++程序。我有DLL和头文件,但是链接器没有.a文件。GNU GCC编译器无法在DLL文件中找到函数。 我遇到了错误,比如: undefined reference to _imp__mbnEthernetOpen@8 我该怎么解决这个问题。
浏览 4
提问于2013-08-26
得票数 2
回答已采纳
2
回答
我怎么知道Ubuntu11.04中gcc、g++/c++的“默认包含目录”、“默认链接目录”和“默认链接库”?
、
对于下列3种编译案例: gcc -o helloc hello.c (1) g++ -o hellocpp hello.cpp (2) c++ -o hellocpp hello.cpp (3) 在每种情况下,我如何知道“默认包含目录”、“默认链接目录”和“默认链接库”?我在32位Ubuntu11.04环境中使用gcc 4.5.2。 对于案例(1),gcc是在使用标准C库还是GNU C库?这两个C库之间有区别吗? 比较案例(2)和(3),编译器使用的“默认链接库”有什么不同吗?他们是在使用标准
浏览 4
提问于2012-01-19
得票数 12
回答已采纳
1
回答
编译来自MinGW32的GCC。只告诉链接库一次?
、
、
、
、
我正在用mingw32的gcc通过命令行编译程序。随着源文件的增加,我遇到了一些问题。首先,考虑以下脚本: gcc -Wall -I"MyDir" -I"MyDir2" -L"MyLibDir" -L"MyLibDir2" -l lib1 -l lib2 -l lib3 -c file.c gcc -Wall -I"MyDir" -I"MyDir2" -L"MyLibDir" -L"MyLibDir2" -l lib1 -l lib2 -l lib3 -c file2
浏览 0
提问于2012-07-25
得票数 0
回答已采纳
1
回答
python加载静态库
、
、
我有一个新的问题与加载动态链接库的这里。我没有任何问题加载动态链接库的".so",".dll“扩展。现在我对扩展名为".a“的动态链接库遇到了一些问题。它是一个静态库。下面是我的代码 Security_dll = ctypes.cdll.LoadLibrary("./staticlibraryname.a") 顺便说一句,我的os env是一个linux开放的suse。当我尝试这样做时,我得到的确切错误消息是: File "module3.py", line 3, in <module> Security_dll =
浏览 1
提问于2016-12-09
得票数 0
4
回答
将消息从C++ DLL打印到控制台
我有一个应用程序,它使用前端的C#和C++动态链接库的逻辑部分。即使在C#图形用户界面存在的情况下,我也希望从C++动态链接库在控制台屏幕上打印错误消息。请告诉我怎么做。 谢谢,Rakesh。
浏览 22
提问于2010-03-01
得票数 11
回答已采纳
2
回答
替换bazel中的“`--bazel archive``”
、
我想在我的一个基于bazel的c++项目中链接一个外部静态库。我需要"whole-archive“选项来链接库,就像gcc或g++ build: g++ main.cc -Wl,--whole-archive -lhttp -Wl,--no-whole-archive 有没有人能建议一下巴泽尔里"--whole-archive“的替代品是什么?
浏览 0
提问于2017-06-21
得票数 3
2
回答
在C#中静态链接COM DLL (避免使用regfree)
、
、
、
、
我可能有一个愚蠢的问题: 我们有一个VC++ COM动态链接库(内部开发),我们已经将我们的主要应用程序移植到C#上,并使用COM互操作,免费访问COM动态链接库。使用内部嵌入的清单,一切都运行得很好。 然而,友好的产品-开发/营销/销售想要最小化软件包,并直接包含COM dll。不知何故,有人开始确信应用程序发行版应该只包含exe (因为它是非托管的,我们不能简单地ILMerge它)。 既然我们有COM的tlb/lib,我们能不能以某种方式静态链接它,而无需将整个COM移植到C#托管返工? 谢谢 另外,请原谅我的措辞:公司被裁员了,我是Python的家伙,在过去的一周左右的时间里,我不得不学
浏览 26
提问于2011-02-25
得票数 1
回答已采纳
1
回答
Cygwin gcc创建损坏的二进制文件-过程入口点无法位于动态链接库中。
、
、
、
我一直在使用Cygwin64 gcc在Windows上生成每晚生成的程序。不确定从何时开始,运行时从cygwin64 (8.0或9.x)上的gcc创建的exe会悄然退出。使用strace时,错误显示为 “在动态链接库中无法找到过程入口点” 要重现此问题,您可以在cygwin64终端中运行以下命令 git clone https://github.com/fangq/mcxcl.git cd mcxcl/src make clean make ../bin/mcxcl 由于在中描述的原因,我只能用cygwin (x86_64-pc-cygwin-gcc.exe/x86_64-pc-cygwin-
浏览 5
提问于2020-04-04
得票数 1
回答已采纳
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
C+程序编译之谜(二)——隐藏源码,动态和静态链接库的秘密
【精通内核】计算机程序的本质、内存组成与ELF格式
Linux库概念,动态库和静态库的制作,如何移植第三方库
宜准告诉你动态心率与静态心率有何不同
宜准告诉你跑步的心率为什么有动态和静态区别?
热门
标签
更多标签
云服务器
ICP备案
对象存储
实时音视频
即时通信 IM
活动推荐
运营活动
广告
关闭
领券