如何在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 應用程式。所有平台維護單一程式碼庫。

相關內容