使用wxWidgets,Linux,C ++构建源文件时出错

时间:2016-11-19 19:39:12

标签: c++ linux build wxwidgets

我尝试使用以下命令构建源文件:

g++ main.cpp `wx-config --cxxflags --libs std`

/usr/bin/ld: cannot find -lgthread-2.0
/usr/bin/ld: cannot find -lX11
/usr/bin/ld: cannot find -lXxf86vm
/usr/bin/ld: cannot find -lSM
/usr/bin/ld: cannot find -lgtk-3
/usr/bin/ld: cannot find -lgdk-3
/usr/bin/ld: cannot find -latk-1.0
/usr/bin/ld: cannot find -lgio-2.0
/usr/bin/ld: cannot find -lpangocairo-1.0
/usr/bin/ld: cannot find -lgdk_pixbuf-2.0
/usr/bin/ld: cannot find -lcairo-gobject
/usr/bin/ld: cannot find -lpango-1.0
/usr/bin/ld: cannot find -lcairo
/usr/bin/ld: cannot find -lgobject-2.0
/usr/bin/ld: cannot find -lglib-2.0
/usr/bin/ld: cannot find -lpng
/usr/bin/ld: cannot find -lexpat
/usr/bin/ld: cannot find -lz
collect2: error: ld returned 1 exit status

我想我没有正确安装wxWidgets(我在多个安装教程中安装了libwxgtk3.0-dev)

修改

wx-config --libs std
-L/usr/local/lib -pthread   /usr/local/lib/libwx_gtk3u_xrc-3.1.a /usr/local/lib/libwx_gtk3u_qa-3.1.a /usr/local/lib/libwx_baseu_net-3.1.a /usr/local/lib/libwx_gtk3u_html-3.1.a /usr/local/lib/libwx_gtk3u_adv-3.1.a /usr/local/lib/libwx_gtk3u_core-3.1.a /usr/local/lib/libwx_baseu_xml-3.1.a /usr/local/lib/libwx_baseu-3.1.a -pthread -lgthread-2.0 -lX11 -lXxf86vm -lSM -lgtk-3 -lgdk-3 -latk-1.0 -lgio-2.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo-gobject -lpango-1.0 -lcairo -lgobject-2.0 -lglib-2.0 -lpng -lexpat -lwxregexu-3.1 -lwxtiff-3.1 -lwxjpeg-3.1 -lz -ldl -lm

1 个答案:

答案 0 :(得分:2)

如果您使用Ubuntu,如果您刚刚安装了distribution package,那么您真的应该没有任何问题。

您之前尝试从源安装wxWidgets,而wx-config来自/usr/local/bin并且不是是由软件包安装的。您可以使用which wx-config和/或在编译时使用/usr/bin/wx-config的完整路径进行检查。如果您正在使用系统软件包,请删除此文件以及/usr/local下所有其他wxWidgets的痕迹。