سؤال

أنا فقط بدأت مع تطور C ++ وأرغب في استخدام EMACS لكتابة التعليمات البرمجية ثم قم بتجميعها وتشغيلها من داخل EMACS باستخدام برنامج التحويل البرمجي Visual Studio 6. لقد قمت بالفعل بكثير حول القليل ولكن فقط لا يبدو أن تجد شرحا لكيفية القيام بذلك. أي مؤشرات؟

شكرا لمساعدتك،

Joerg.

هل كانت مفيدة؟

المحلول

لقد فعلت هذا كمسألة خلال السنوات القليلة الماضية. هناك طريقتان للقيام بذلك:

  1. في الإصدارات القديمة من VS (بما في ذلك مقابل 6.0)، يوجد زر لتصدير ملف NMAKE للمشروع. أفعل ذلك في بعض الأحيان ثم استخدم Nmake لتجميعها. لدي

    (Setq Compile-Command "Nmake Debug")

    في بلدي .xemace / init.el لهذا. يجب عليك إضافة اسم ملف NMAKE، ويجب أن يكون nmake.exe في طريقك. (راجع للشغل، أقوم بتعديل تجميع - خطأ - regexp-alist-alist للمساعدة في التحرك من خلال الأخطاء. اسمحوا لي أن أعرف إذا كنت تريد هذا كذلك.)

  2. لا تملك الإصدارات الأحدث من VS زر تصدير ملف NMAKE. لهذه أسمي devenv.com. في هذه الحالة لدي

    (Compile-Compile-command "Devenv.com / Build Debug")

    في بلدي .xemacs / init.el. يجب عليك إضافة اسم ملف .sln. على الرغم من أنني لم أفعل هذا مع VS 6.0، أعتقد أنه قد يعمل كذلك.

نصائح أخرى

لست متأكدا مما إذا كنت ستفكر فقط في تبديل محرر النصوص داخل Visual Studio مع EMACS، ولكن هنا هو مشروع SF.NET الذي يفعل ذلك فقط.

http://sourceforge.net/projects/visemacs/

كمتابعة لإجابة أندرو شتاين، للقيام ببناء سطر الأوامر على Visual Studio 6 دون استخدام NMAKE، استخدم بناء الجملة:

msdev wspname.dsw /make "project - Win32 Debug"

Visual Studio هو IDE

يستخدم برنامج التحويل البرمجي CL.EXE أسفل.

نحن نستخدم emacs مع جنو (GMAKE)، والذي يتم لفه مع مجمع GMAKE الخاص بنا ويعمل بشكل جيد للغاية.

فقط قم بإعداد مفتاح بسيط لإحتساء ملف Cl.exe على ملفات .c / .cpp التي تتجمع لإنشاء ملفات .obj. لدينا مفتاح واحد لتهيئة الترجمة في مجلد، مما سيجعل جميع ملفات .OBJ غير محدثة، ولكن هذا يتم التعامل معه بحتة من صنع جنو.

لدينا أيضا كيانات كياني أخرى، على سبيل المثال لربط الملف التنفيذي وبدء تشغيله، إلخ.

قليلا خارج الموضوع، ولكن لماذا تستخدم Visual Studio 6؟ تتوفر محلات التحويل البرمجيات (بالإضافة إلى ides مقدمة) للإصدار الحالي من Visual Studio مجانا من Microsoft.

في كلتا الحالتين، يمكنك استدعاء المحول البرمجي من Commandline لذلك يجب أن يكون بسيطا مثل إعداد MICFILE.

إذا كنت ترغب فقط في إعداد ملف واحد لتجميعه، فقم بوضع هذا في الجزء العلوي من ملفك ...

// -*- compile-command:"g++ test.cpp -g -lwinmm -o test.exe"; -*-

انظر بلدي مشاركة مدونة على هذا

بالطبع تحتاج إلى ضبط لاستخدام CL.EXE واختيار الحجج المناسبة.

للإطلاق، اجعل الأمر صعبا بعض الشيء لأنك تضطر إلى تشغيل الأمر كما لو كنت في دليل المصدر الأصل، عندما تقوم بتحرير ملف إزاء التسلسل الهرمي.

الطريقة الوحيدة التي أعرفها القيام بذلك هي وضع ذلك في الجزء العلوي من كل ملف ...

// -*- compile-command:"nmake"; default-directory:"c:/projectroot/"; -*- 
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top