學(xué)校的課程設(shè)計(jì)中要制作一個(gè)ide用來(lái)編輯c/c++,有一個(gè)功能是編譯,就是我點(diǎn)一下就彈出控制臺(tái)顯示編譯的結(jié)果,請(qǐng)問(wèn)node有調(diào)用c++編譯的接口嗎,怎么實(shí)現(xiàn)這個(gè)功能?
擁有18年軟件開發(fā)和IT教學(xué)經(jīng)驗(yàn)。曾任多家上市公司技術(shù)總監(jiān)、架構(gòu)師、項(xiàng)目經(jīng)理、高級(jí)軟件工程師等職務(wù)。 網(wǎng)絡(luò)人氣名人講師,...
const?exec?=?require('child_process').exec; let?server?=?exec('g++?-o?hello?hello.cpp',?function(err,?stdout,?stderr)?{ ??if?(err)?console.error(stderr); ??console.log(stdout); }); server.stdout.on('data',?function(data)?{ ??console.log(data); }); //?process.on('exit',?function()?{ //???server.kill(); //?});
你可能需要的是這個(gè)。
不能直接調(diào)用編譯接口的,都是啟動(dòng)一個(gè)子進(jìn)程去執(zhí)行g(shù)++命令,而你只需要做的就是拼裝編譯命令和編譯參數(shù)。