تجميع خطأ أثناء ترقية من gfortran إلى ifort
-
06-07-2019 - |
سؤال
أنا أحاول أن ميناء برنامج من gfortran إلى ifort (Intel برنامج التحويل البرمجي Fortran 11).أنا عالقة مع ملفين فقط تجميع مع gfortran:
gfortran -x f77 -c daedrid.ff
gfortran -x f77-cpp-input -c daedris.ff
عند محاولة تشغيل معالج intel برنامج التحويل البرمجي fortran مع هذه الملفات ، أحصل على:
ifort -fpp -c daedrid.ff
ifort: warning #10147: no action performed for specified file(s)
ifort -fpp -c daedris.ff
ifort: warning #10147: no action performed for specified file(s)
و لا يوجد كائن يتم إنشاء ملفات.
كيف يمكنني حل هذه المشكلة o_O?
تحرير: إعادة تسمية امتداد الملف من ff على fpp
cp daedrid.ff daedrid.fpp
cp daedrid.ff daedrid.fpp
يساعد على:
ifort -fpp -c daedrid.fpp
daedrid.fpp(1483): (col. 9) remark: LOOP WAS VECTORIZED.
daedrid.fpp(1490): (col. 11) remark: LOOP WAS VECTORIZED.
daedrid.fpp(1499): (col. 13) remark: LOOP WAS VECTORIZED.
ifort -fpp -c daedris.fpp
daedris.fpp(1626): (col. 9) remark: LOOP WAS VECTORIZED.
http://www.rcac.purdue.edu/userinfo/resources/black/userguide.cfm#compile_fortran_cpp
تحديث: هل هناك طريقة لجعل إنتل برنامج التحويل البرمجي fortran العمل دون الحاجة إلى إعادة تسمية الملفات ؟
المحلول
من الخيارات التي كنت تبحث عنها -Tf
و -fpp
(اختياريا -fixed
أو -free
.من ifort -help
, ذات الصلة خطوط هي:
-Tf<file> compile file as Fortran source
-fpp[n] run Fortran preprocessor on source files prior to compilation
n=0 disable running the preprocessor, equivalent to no fpp
n=1,2,3 run preprocessor
-[no]fixed,-FI specifies source files are in fixed format
-[no]free, -FR specifies source files are in free format
لذا, على كل, إذا كان لديك ثابت-شكل المصدر الذي يحتاج تجهيزها يمكنك استخدام:
ifort -fpp -fixed -Tfa.ff
لتجميع الملف a.ff
.