Mingw32 编译不运行 C++ 程序,而 Mingw64 工作正常 - 问题是什么?

问题描述 投票:0回答:0

我在win10 x64上工作,我已经安装了mingw64和mingw32。我写了一个这样的c++程序:


#include <stdio.h>
#include <stdlib.h>

extern "C" {
#include <windows.h>

#include <libavcodec/avcodec.h>
#include <libavdevice/avdevice.h>
#include <libavformat/avformat.h>
#include <libavformat/avio.h>
#include <libavutil/audio_fifo.h>
#include <libavutil/imgutils.h>
#include <libavutil/opt.h>
#include <libavutil/frame.h>
#include <libavutil/time.h>
#include <libavutil/timestamp.h>
#include <libavutil/macros.h>
#include <libavfilter/avfilter.h>
#include <libavfilter/buffersink.h>
#include <libavfilter/buffersrc.h>
#include <libswresample/swresample.h>
#include <libswscale/swscale.h>

}

int main(int argc, char** argv) 
{

    printf("hello world\n");

    avformat_network_init();
    avdevice_register_all();

    return 0;
}

当我在mingw64中使用g++编译这些代码时,它可以很好地运行。但是在mingw32中,我使用相同的命令编译,它无法运行,甚至无法打印hello world。我使用的命令是 g++ -g t.cpp -lavformt -lavdevice

为什么!

我想知道为什么它不能工作。

c++ windows dll mingw32
© www.soinside.com 2019 - 2024. All rights reserved.