linker

    -2热度

    1回答

    的Visual Studio 2017(新鲜install-命令行版)为错误: LNK2019:解析的外部符号Mhook_SetHook在函数引用wmain LNK2019:解析的外部符号Mhook_UnHook在函数引用wmain 编译命令:CL/Y-/EHSC/DUNICODE mhook-TEST.CPP GDI32.LIB USER32.LIB 我认为这可能与C/C++的mixup,所以我

    3热度

    2回答

    完整的输出是这样的(只有一个错误)定义,发布版本似乎并没有遇到同样的问题 SDL2.lib(SDL_stdlib.obj) : error LNK2005: __fltused already defined in LIBCMTD.lib(fltused.obj)` 我已经用/ MTd和静态库重新编译了SDL2.lib,并确保它是我的系统上唯一的名称库。 它变得怪异,但:把浮点运算在我的程序的

    0热度

    1回答

    我试图启用链接时代码编译器(LTCG)和整个程序优化(WPO)以构建大型Windows C++应用程序与Visual Studio 2017.该64位产品构建良好,但我们的32位版本的代码步骤内存不足。 所以,我需要切换32位构建使用64位LINK.EXE如下所述:How to: Enable a 64-Bit, x64 hosted Visual C++ toolset on the comma

    1热度

    1回答

    试想一个情况我有两个不同的翻译单元a.cpp #include <iostream> double bar(); template <typename T> T foobar(T t) { return t; } int main() { std::cout << "foobar called from b.cpp: " << bar() << '\n';

    0热度

    1回答

    我已经生成了我的.C源文件的汇编列表。而在C源代码我已经实现TLS是这样的: char *msg = "callback"; void NTAPI tls_callback(PVOID DllHandle, DWORD dwReason, PVOID lpVd) { MessageBoxA(0,msg,msg,0); } #ifdef _WIN64 #pragma comm

    0热度

    1回答

    我已经搜索了网页,但查询的回答不同。我不是Windows的专家,但我想完全理解它。 当为Windows编译应用程序时,需要运行库链接库(DLL),例如使用核心库kernel32.dll或其他用户创建的dll,应用程序是否需要知道该DLL存在于运行时间之前。 我读过一个DLL必须伴随一个.lib文件,它必须在编译时链接,但在某处它声明.lib文件不是必需的。 该应用程序是否只是执行,并期望它会找到一

    1热度

    1回答

    在编写共享库时,通常建议隐藏所有内部符号以减少动态链接时间,通常使用链接描述文件或-fvisibility选项。 内部静态库 第三方静态库(例如,libuv) 所有: 在我的情况下,共享库两种类型的其他库的链接使用-Wl,--whole-archive选项将它们链接到共享库中,以便生成的共享库自足并且仅链接到stdlib。 来自内部静态库的所有符号都是隐藏的,因为它们不是公共API的一部分。 问题

    -2热度

    1回答

    LNK2019解析的外部符号 我可以编译我的程序,但可不运行它。这是一个Windows控制台应用程序,它在Linker -> System -> SubSystem中设置。 #include "stdafx.h" #include <iostream> #include <queue> #include "puzzle.h" #include "state.h" #include <ve

    1热度

    1回答

    我试图编译程序,它在Ubuntu上使用Boost库和我得到的错误: [email protected]:~/dev$ g++ -std=c++11 -Wall -pedantic -g -O0 -DBOOST_LOG_DYN_LINK -c test.cpp [email protected]:~/dev$ g++ test.o -lboost_log -lboost_thread -lpthr

    3热度

    2回答

    一个有趣的学术问题,我试图解决: 在C代码,我想在运行时动态重新绑定符号,就像Facebook's fishhook repo这重新绑定函数符号。我主要关心Mach-O可执行文件的__DATA.__la_symbol_ptr部分中引用的符号。随着鱼钩的实现,你提供了你的新函数来替换原来的函数,一个字符串指出你想要替换的函数,还有一个全局函数指针,它可以取代原来的被替换的函数。 例如,从鱼钩回购自述