我有一个代码库,我正在编译2种不同的架构。一个是PowerPC
,另一个是x86
。对于PowerPC
我使用Makefile
和GCC
,代码库编译得很好。对于x86
,我在CLion
使用CMake
,Cygwin
Windows
undefined reference
,inline
每个被调用CMakeFiles/my_project.dir/main.c.o: In function `wrapper_function':
/cygdrive/d/src/header.h:13: undefined reference to `inline_function'
/cygdrive/d/src/header.h:13:(.text+0x26): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `inline_function'
1}}功能:
inline
我确保所有inline
函数仅在头文件中。另外,我需要将它们声明为CMake
,因为我想要没有子程序的自包含函数,因此不需要删除该标记。
我的cmake_minimum_required(VERSION 3.6)
project(my_project)
set(CMAKE_CXX_STANDARD 11)
set(SOURCE_FILES
main.c
src/header.h)
add_executable(my_project${SOURCE_FILES})
文件如下所示:
CMake
如何在不更改代码库的情况下修复链接器错误?如果可能,myjar.jar
- lib/
- <somelib>.<libext>
- <package>
- Foo.class
文件中的条目将是最佳解决方案。