Ubuntu で C++ を Dll ファイルにコンパイルする方法

Ubuntu で C++ を Dll ファイルにコンパイルする方法

提供された make ファイルを使用して正常にコンパイルできるようになりました。プロジェクトを dll ファイルにコンパイルしたいのですが、make ファイルをどのように変更すればよいでしょうか?

メイクファイルは次のとおりです:

default: all

# -------------------------------------------------------------------
# Change the path to Z3 4.1.1 accordingly
# The directory indicated by this path should contain "lib" and "bin"
# e.g. "/home/z3_src_4.1.1"
#      "/home/work/tool/z3/z3_src_4.1.1"
# -------------------------------------------------------------------
Z3_path = ../z3

JUNK = S3
SOURCE = strTheory.cpp testMain.cpp
INCLUDE = $(Z3_path)/lib
LIB = $(Z3_path)/bin/external

all: $(SOURCE)
    g++ -std=c++14 -O3 -fopenmp -static -I$(INCLUDE) -L$(LIB) $(SOURCE) -lz3 -lrt -o S3 -Wall
    @echo ""

clean:
    rm -f $(JUNK)

答え1

あなたのコメントから推測すると、あなたは

  • Windows 用クロスコンパイル

これはまったく別の問題です。makefile を変更するだけでは不十分です。ただし、この質問は以前にも行われました。

プロジェクトがCまたはC++の場合は、ミンGWツールと、gcc/g++ を使用する同じ種類の Linux ベースのコンパイル ツールです。MinGW は次のようにインストールできます。

sudo apt-get install gcc-mingw32

勉強することをお勧めしますMinGWツールを使用したqt/win32クロスコンパイルのガイド

プロジェクトが主にC#向けである場合は、モノ開発彼らのウェブサイトから:

MonoDevelop を使用すると、開発者は Linux、Windows、Mac OS X 上でデスクトップ アプリケーションや Web アプリケーションを迅速に作成できます。また、Visual Studio で作成した .NET アプリケーションを、すべてのプラットフォームで単一のコード ベースを維持しながら Linux や Mac OS X に簡単に移植できます。

関連情報