Object 如何将静态库链接到cpp文件?

Object 如何将静态库链接到cpp文件?,object,compilation,static-libraries,Object,Compilation,Static Libraries,我有一个名为X.a的静态库和一个名为Y.cpp的cpp文件。Y.cpp包含主函数并使用X.a中的函数。我如何编译Y.cpp以包含X.a并最终生成一个包含Y.o的Z.a?为什么要从包含main()的对象文件生成静态库,g++-c-Wall-oy.oy.cpp然后ar-xx.a然后ar-cvs Z.a*.o但是,第一步不会出现错误,因为我会使用x.a中定义的函数吗?编译不是链接,声明不是定义。我会告诉你我的确切问题。我有一个libcx3d.a,其中包含我的VrmlParser类和VrmlParser

我有一个名为X.a的静态库和一个名为Y.cpp的cpp文件。Y.cpp包含主函数并使用X.a中的函数。我如何编译Y.cpp以包含X.a并最终生成一个包含Y.o的Z.a?

为什么要从包含
main()
的对象文件生成静态库,
g++-c-Wall-oy.oy.cpp
然后
ar-xx.a
然后
ar-cvs Z.a*.o
但是,第一步不会出现错误,因为我会使用x.a中定义的函数吗?编译不是链接,声明不是定义。我会告诉你我的确切问题。我有一个libcx3d.a,其中包含我的VrmlParser类和VrmlParser使用的其他类。我有一个main.cpp可以这样做:
VrmlParser vp=new VrmlParser();double**VOB=vp.getVOB()当我使用g++main.cpp-o main-L.-lcx3d编译时,我得到以下错误:“VrmlParser”未在此范围内声明。期望“;”在副总裁之前。”vp'未在此作用域中声明。我该怎么办?