WebHU - Programozási kérdések és válaszok

A makefile konvertálása VS projektté

Van néhány makefile-em bizonyos könyvtárak létrehozásához. A kényelem kedvéért most át kell alakítanom őket VS projektté. Csak azért kerestem a google-ban, hogy megtaláljam a VS projektek makefile-lé alakításának módjait a VS által biztosított makefile varázsló segítségével. Azt is megállapítottam, hogy a VS6 tartalmazza ezt a funkciót, amellyel a makefile-t VS-projektté alakította. De ezt a funkciót eltávolították a későbbi verziókból. Arra is rájöttem, hogy a VS6 letöltései már nem érhetők el az msdn webhelyen.

Van más mód a makefile konvertálására Visual Studio projektté? vagy megszerezhetem valahonnan a VS6-ot?

25.02.2013

  • Ugyanezzel a problémával szembesültem. Akkor még nem találtam megoldást. Egyébként más ötletem támadt: Próbáltál már cmake fájlt írni? A Cmake-nek képesnek kell lennie egy VS Solution fájl létrehozására. Esetleg találsz egy átalakítót gyártmányról cmake-re? 25.02.2013

Válaszok:


1

Az egyetlen igazi lehetőség itt az, hogy kézzel hajtsa végre az átalakítást (vagy használja a Makefile Project Wizard-ot). Azt mondod, hogy van „néhány” makefile, de nem tudod, mennyi ez, de hacsak nem több mint 10-ről beszélünk, nem olyan sok munka kézzel létrehozni egy Visual Studio projektet ezekhez. Végül is csak egy új dll-projektet kell létrehoznia, és forrásfájlokat kell hozzáadnia hozzá. Az alapértelmezett fordító/linker jelzőket aligha kell módosítani. Igen, ha módosítja őket, ügyeljen arra, hogy ezeket a változtatásokat egy tulajdonságlapon végezze el, ne magában a projektben: a tulajdonságlapot más projektek is felhasználhatják, ez a DRY elv egyszerű kérdése.

Miért ez az egyetlen igazi lehetőség? Először is, nincs olyan eszköz, amely bármilyen tetszőleges makefile-t megbízhatóan konvertálna VS projektté, egyszerűen azért, mert a makefile-ek bármilyen formátumban lehetnek, és sok funkciójuknak egyszerűen nincs megfelelője egy VS projektben. Másodszor, a VS6 jelenleg körülbelül 15 éves, így még ha futni is akarja a gépén, az általa termelt kimenet még mindig régi, és határozottan nem az, amit a projektjeihez használni szeretne.

10.06.2013

2

Ez a CodeProject-cikk: Makefile C/C++ Project for Visual automatikus fordítása A Studio egy kezdetleges megoldást kínál a VS 2013 C/C++ projektekhez.

[ PS: nem az én cikkem, de legalább a VS6-os kérdésed fő részére kitér. ]

Ez egy leegyszerűsített forgatókönyv, ezért tele van feltételezésekkel és a kudarc lehetőségeivel. Azonban lehet olyan kiindulópontot adni, amely működőképes, ha a projekt beleillik a szándékaiba.

Továbbra is szüksége lesz:

  • olyan fájlokat tartalmazzon, amelyek nem nyilvánvalóan C/C++ fájlok
  • módosíthatja a projektbeállításokat
  • állítsa be a fordító beállításait
  • csatolási idő függőségek hozzáadása
  • stb.

Abban az esetben, ha a cikk eltűnne, akkor egy VBS-szkriptről van szó, amely:

  • átvizsgálja a könyvtárat olyan fájlok után, amelyek kiterjesztése ismert VS-csoportokhoz tartozik
  • alkönyvtárakba ismétlődik, további fájlokat keresve.
  • létrehozza a .vcxproj és .vcxproj.filters fájlokat
  • hozzáadja a talált fájlokat a .vcxproj és .vcxproj.filters fájlokhoz

Tehát, ha vannak beágyazott projektjei (valószínűleg), akkor módosítania kell a szkript működését a rekurziós lépésben.

Sok szerencsét.

05.07.2015
  • Praktikus forgatókönyv! Csak szerkessze a ToolsVersion értéket a VS aktuális verziójának szkriptjében. 21.04.2018
  • Nem működik... %(fullpath) hiba jön... bármilyen javaslat a hiba kijavítására 02.06.2021
  • Új anyagok

    A rádiógomb ellenőrzött eseményének használata a jQueryben
    Ebben a cikkben látni fogjuk, hogyan kell dolgozni a jquery választógombbal ellenőrzött eseményeivel. A választógombok HTML gombok, amelyek segítenek kiválasztani egyetlen értéket egy csoportból...

    Körkörös függőségek megoldása terraformban adatforrásokkal – lépésről lépésre
    Mi az a körkörös függőségek Dolgozzunk egy egyszerű eseten, amikor az SQS-sor és az S3-vödör közötti körkörös függőség problémája van egy egymástól függő címkeérték miatt. provider..

    Miért érdemes elkezdeni a kódolást 2023-ban?
    01100011 01101111 01100100 01100101 — beep boop beep boop Világunk folyamatosan fejlődik a technológia körül, és naponta fejlesztenek új technológiákat a valós problémák megoldására. Amint..

    🎙 Random Noise #2  – Örökbefogadás és hit
    az analitika íratlan világának gondozása Szeretné, hogy ezek a frissítések a postaládájába kerüljenek? Iratkozzon fel itt . "Ha önvezető autókat gyártanak, akkor mi miért ne..

    A legrosszabb politika és prediktív modellek májátültetésre jelöltek számára az Egyesült Államokban
    A máj (vagy óangolul lifer) az emberi test legnehezebb belső szervére utal, amely csendesen működik a nap 24 órájában. Mit csinál a máj? 500 feladatot hajt végre a szervezet egészségének..

    5 webhely, amely 2022-ben fejleszti front-end fejlesztői készségeit
    Frontendmentor.io A tényleges projektek létrehozásával a Frontendmentor.io segítséget nyújt a front-end kódolási képességeinek fejlesztésében. A kódolást azután kezdheti meg, hogy..

    Mikor kell használni a Type-t az interfészhez képest a TypeScriptben?
    A TypeScript a JavaScript gépelt szuperkészlete, amely statikus gépelést ad a nyelvhez. Ez megkönnyíti a robusztus és karbantartható kód írását azáltal, hogy a hibákat a fordítási időben..