Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Macos 在MAC中使用wxWidgets编译测试程序_Macos_Wxwidgets - Fatal编程技术网

Macos 在MAC中使用wxWidgets编译测试程序

Macos 在MAC中使用wxWidgets编译测试程序,macos,wxwidgets,Macos,Wxwidgets,操作系统:MAC X 10.7.0 Mac OS X在/usr中安装了一个较旧版本的WXMAC-2.8.8.1,但我在/usr/local中安装了一个较新版本的WXMAC-2.8.12.0。要安装它,我使用以下标志编译新的: 拱门标志=-拱门i386 ./configure CFLAGS=$arch\u flags cxflags=$arch\u flags CPPFLAGS=$arch\u flags LDFLAGS=$arch\u flags OBJCFLAGS=$arch\u flags

操作系统:MAC X 10.7.0

Mac OS X在/usr中安装了一个较旧版本的WXMAC-2.8.8.1,但我在/usr/local中安装了一个较新版本的WXMAC-2.8.12.0。要安装它,我使用以下标志编译新的:

拱门标志=-拱门i386 ./configure CFLAGS=$arch\u flags cxflags=$arch\u flags CPPFLAGS=$arch\u flags LDFLAGS=$arch\u flags OBJCFLAGS=$arch\u flags OBJCXXFLAGS=$arch\u flags-启用unicode-启用调试-禁用共享

然后我编写了一个简单的程序hello2.cpp来测试它:

#include "wx/wx.h"

class HelloWorldApp : public wxApp
{
public:
    virtual bool OnInit();
private:
    wxButton *button;
};


IMPLEMENT_APP(HelloWorldApp)

bool HelloWorldApp::OnInit()
{
    wxFrame *frame = new wxFrame((wxFrame*) NULL, -1, _T("Hello wxWidgets World"));
    frame->CreateStatusBar();
    frame->SetStatusText(_T("Hello World"));
    button = new wxButton((wxFrame *)frame, -2, _T("123"));
    frame->Show(TRUE);
    SetTopWindow(frame);

    return true;
}
我在命令行中使用以下标志编译此测试程序:

g++hello2.cpp/usr/local/bin/wx config-cxflags-libs-o hello2

但我收到了一些警告和错误。我是Mac编程的新手,所以我不知道原因。我只想说:救命

以下是编译的结果:

ld:警告:在/usr/local/lib/libiconv.dylib中,文件是为不受支持的文件格式生成的,该文件不是链接到i386的体系结构 未定义的符号: _libiconv_打开,引用自: wxMBConv_iconv::wxMBConv_iconvwchar_t const*在libwx_base_carbonud-2.8.abaselib_strconv.o中 wxMBConv_iconv::wxMBConv_iconvwchar_t const*在libwx_base_carbonud-2.8.abaselib_strconv.o中 wxMBConv_iconv::wxMBConv_iconvwchar_t const*在libwx_base_carbonud-2.8.abaselib_strconv.o中 wxMBConv_iconv::wxMBConv_iconvwchar_t const*在libwx_base_carbonud-2.8.abaselib_strconv.o中 wxMBConv_iconv::wxMBConv_iconvwchar_t const*在libwx_base_carbonud-2.8.abaselib_strconv.o中 wxMBConv_iconv::wxMBConv_iconvwchar_t const*在libwx_base_carbonud-2.8.abaselib_strconv.o中 wxMBConv_iconv::wxMBConv_iconvwchar_t const*在libwx_base_carbonud-2.8.abaselib_strconv.o中 wxMBConv_iconv::wxMBConv_iconvwchar_t const*在libwx_base_carbonud-2.8.abaselib_strconv.o中 _libiconv,引用自: wxMBConv_iconv::libwx_base_carbonud中的GetMBNulLen const-2.8.abaselib_strconv.o wxMBConv_iconv::WC2MBchar*,wchar_t const*,无符号长结构libwx_base_carbonud-2.8.abaselib_strconv.o wxMBConv_iconv::WC2MBchar*,wchar_t const*,无符号长结构libwx_base_carbonud-2.8.abaselib_strconv.o wxMBConv_iconv::mb2wchar_t*,char const*,无符号长结构libwx_base_carbonud-2.8.abaselib_strconv.o wxMBConv_iconv::mb2wchar_t*,char const*,无符号长结构libwx_base_carbonud-2.8.abaselib_strconv.o wxMBConv_iconv::wxMBConv_iconvwchar_t const*在libwx_base_carbonud-2.8.abaselib_strconv.o中 wxMBConv_iconv::wxMBConv_iconvwchar_t const*在libwx_base_carbonud-2.8.abaselib_strconv.o中 _libiconv_close,引用自: wxMBConv_iconv::~wxMBConv_iconvin libwx_base_carbonud-2.8.abaselib_strconv.o wxMBConv_iconv::~wxMBConv_iconvin libwx_base_carbonud-2.8.abaselib_strconv.o wxMBConv_iconv::~wxMBConv_iconvin libwx_base_carbonud-2.8.abaselib_strconv.o wxMBConv_iconv::~wxMBConv_iconvin libwx_base_carbonud-2.8.abaselib_strconv.o wxMBConv_iconv::~wxMBConv_iconvin libwx_base_carbonud-2.8.abaselib_strconv.o wxMBConv_iconv::~wxMBConv_iconvin libwx_base_carbonud-2.8.abaselib_strconv.o ld:找不到符号 collect2:ld返回1退出状态

I卸载wxMac-2.8.12。 I installl wxWidgets-2.9.2./configure-启用unicode-启用调试-禁用共享

我再次使用g++hello2.cpp`/usr/local/bin/wx config-cxflags-libs`-o hello2编译测试程序。只有一个警告:

ld:警告:在/System/Library/Frameworks//QuickTime.framework/QuickTime中,文件中缺少所需的体系结构x86_64

我想没关系