【发布时间】:2014-12-08 05:52:15
【问题描述】:
我正在编译我的 C++ 应用程序并希望将其链接到单声道。我正在使用 OpenSusE。我已经安装了 mono-complete 和 glibc-devel-static 包。我正在编译如下 -
$>g++ --static monoapp.cpp `pkg-config --cflags --libs mono` -I /usr/include/mono-2.0
/tmp/ccGfpBjX.o: In function `Launch(char const*, char const*, int, char const* const*, char const*)':
monoapp.cpp:(.text+0x23e): undefined reference to `mono_set_dirs'
monoapp.cpp:(.text+0x24f): undefined reference to `mono_jit_init_version'
monoapp.cpp:(.text+0x28b): undefined reference to `mono_domain_assembly_open'
monoapp.cpp:(.text+0x2c2): undefined reference to `mono_jit_exec'
collect2: error: ld returned 1 exit status
更新 1 - 我尝试将 -lmono 提供给链接器,但它抱怨 -lmono 未找到。以下是定位命令的输出。
$>locate libmono
/usr/lib64/libmono-2.0.a
/usr/lib64/libmono-2.0.so
/usr/lib64/libmono-2.0.so.1
/usr/lib64/libmono-2.0.so.1.0.0
上面的输出清楚地表明存在 libmono。
UPDATE -2 pkg-config 的输出为空
$>pkg-config --cflags --libs mono
$>
更新 -3- 我尝试设置 PKG_CONFIG_PATH 以便它可以找到 mono.pc 文件,但它仍然没有工作
请帮忙。
谢谢, 呸呸呸
【问题讨论】:
-
尝试 -lmono-2.0 或为指向 libmono-2.0.a 的 libmono.a 创建符号链接?
标签: gcc mono g++ static-linking