我正在尝试编译一个简单的c ++程序,以便在ESXi 3.5控制台窗口内运行。看来我正在连接错误的库...是否有某处描述的设置 - 我必须使用哪个版本的G ++和库才能这样做?
答案 0 :(得分:1)
以下是我解决问题的方法。我做了以下编译:
将显示为依赖关系的所有库复制到子文件夹ESXi-3.5-lib。就我而言,他们是:
ld-linux.so.2
libc.so.6
libgcc_s.so.1
libm.so.6
libstdc++.so.5
添加了以下切换到gcc:
以下是我的最终构建命令:
g++ file1.cpp file2.cpp file3.cpp -o output-biinary-file-name \
ESXi-3.5-lib/ld-linux.so.2 ESXi-3.5-lib/libc.so.6 ESXi-3.5-lib/libgcc_s.so.1\
ESXi-3.5-lib/libm.so.6 ESXi-3.5-lib/libstdc++.so.5 \
-nodefaultlibs -lc -m32 -fno-stack-protector