Compilation C/C++ à la volée
Compiler du code C/C++ à la volée
📄 Description
Nelson fournit un outil multiplateforme en ligne de commande, écrit en Nelson, pour compiler des modules natifs (addons).
Il simplifie les différences entre plateformes de compilation et facilite la construction d'extensions natives.
💡 Exemple
if ispc() && ~havecompiler()
configuremsvc()
end
C_CONTENT = ["double";
"functionC(double x)";
"{";
" return x + 8;";
"}"];
DEST_DIR = [tempdir(), 'example_C'];
mkdir(DEST_DIR);
C_DEST_FILE = [tempdir(), 'example_C/demo.c'];
filewrite(C_DEST_FILE, C_CONTENT)
dlgeneratemake(DEST_DIR, 'C_DEMO', {C_DEST_FILE}, {DEST_DIR})
[res, message] = dlmake(DEST_DIR)
lib = dlopen([DEST_DIR, '/C_DEMO', getdynlibext()])
c = dllibinfo(lib)
f = dlsym(lib, 'functionC', 'double', {'double'});
R = dlcall(f, 3) % 8 + 3
dlclose(lib)

🔗 Voir aussi
configuremsvc, dlgeneratemake, dlmake, dlopen, dllibinfo, dlsym, dlcall.
🕔 Historique
Version
📄 Description
1.2.0
version initiale
Last updated
Was this helpful?