web-dev-qa-db-fra.com

Comment compiler c ++ en fichier Dll sous Ubuntu

Maintenant, je peux compiler avec succès en utilisant le fichier make fourni, maintenant je veux compiler le projet en fichier dll, comment dois-je modifier le fichier make?

Le fichier make est:

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
sweetyBaby

De votre commentaire, je suppose que vous vous interrogez sur

  • Compilation croisée pour Windows

C'est un sujet totalement différent. Cela nécessite plus que le simple changement de votre makefile. Cependant, cette question a déjà été posée:

Si votre projet est en C ou C++, vous pouvez utiliser des outils MinGW et le même type d'outils de compilation basés sur Linux qui utilisent gcc/g ++. Vous pouvez installer MinGW comme ceci:

Sudo apt-get install gcc-mingw32

Je vous suggère d’étudier ce guide pour la compilation croisée qt/win32 à l’aide des outils MinGW .

Si votre projet est principalement destiné à C #, il pourrait être préférable d'utiliser MonoDevelop . De leur site web:

MonoDevelop permet aux développeurs d’écrire rapidement des applications bureautiques et Web sous Linux, Windows et Mac OS X. Il facilite également le portage des applications .NET créées avec Visual Studio vers Linux et Mac OS X en maintenant une base de code unique pour toutes les plateformes.

1
user23573