pc32专题

编译过程中数组过大.main.o:在函数‘MAIN__’中: main.f:(.text+0x1f): 截断重寻址至相符: R_X86_64_PC32 针对在 make[1]: ***

最近在Linux系统下学习开源软件,在生成可执行文件前,需要对软件源码进行编译,遇到下面的问题,一些新手可能找不到修改FLAGS的位置。  查了一圈,发现是在编译时数组过大时出现的编译错误。 解决办法: 内存超过2G会出现问题。需要添加编译选项:-mcmodel 调整编译时的对静态数组要求的大小:-mcmodel=medium(中级)  -mcmodel=large(高级) 编译选项

解决项目依赖 ffmpeg 出现 relocation R_X86_64_PC32 against symbol `ff_pw_9‘的问题

在CMakeLists.txt中添加 set(CMAKE_SHARED_LINKER_FLAGS "-Wl,-Bsymbolic")