ಸ್ವಯಂ-ಒಳಗೊಂಡಿರುವ ವಿತರಣಾ ಕಟ್ಟಡಕ್ಕಾಗಿ ಟೂಲ್ಕಿಟ್ GNU Mes 0.23 ಬಿಡುಗಡೆ

ಒಂದು ವರ್ಷದ ಅಭಿವೃದ್ಧಿಯ ನಂತರ, GNU Mes 0.23 ಟೂಲ್‌ಕಿಟ್ ಬಿಡುಗಡೆಯಾಯಿತು, ಇದು GCC ಗಾಗಿ ಬೂಟ್‌ಸ್ಟ್ರ್ಯಾಪ್ ಪ್ರಕ್ರಿಯೆಯನ್ನು ಒದಗಿಸುತ್ತದೆ ಮತ್ತು ಮೂಲ ಕೋಡ್‌ನಿಂದ ಮರುನಿರ್ಮಾಣದ ಒಂದು ಮುಚ್ಚಿದ ಚಕ್ರಕ್ಕೆ ಅವಕಾಶ ನೀಡುತ್ತದೆ. ಟೂಲ್‌ಕಿಟ್ ವಿತರಣೆಗಳಲ್ಲಿ ಪರಿಶೀಲಿಸಿದ ಆರಂಭಿಕ ಕಂಪೈಲರ್ ಅಸೆಂಬ್ಲಿ ಸಮಸ್ಯೆಯನ್ನು ಪರಿಹರಿಸುತ್ತದೆ, ಆವರ್ತಕ ಮರುನಿರ್ಮಾಣದ ಸರಪಳಿಯನ್ನು ಮುರಿಯುತ್ತದೆ (ಕಂಪೈಲರ್ ಅನ್ನು ನಿರ್ಮಿಸಲು ಈಗಾಗಲೇ ನಿರ್ಮಿಸಲಾದ ಕಂಪೈಲರ್‌ನ ಕಾರ್ಯಗತಗೊಳಿಸಬಹುದಾದ ಫೈಲ್‌ಗಳು ಬೇಕಾಗುತ್ತವೆ ಮತ್ತು ಬೈನರಿ ಕಂಪೈಲರ್ ಅಸೆಂಬ್ಲಿಗಳು ಗುಪ್ತ ಬುಕ್‌ಮಾರ್ಕ್‌ಗಳ ಸಂಭಾವ್ಯ ಮೂಲವಾಗಿದೆ, ಇದು ಸಂಪೂರ್ಣವಾಗಿ ಖಾತರಿ ನೀಡಲು ಅನುಮತಿಸುವುದಿಲ್ಲ. ಉಲ್ಲೇಖದ ಮೂಲ ಸಂಕೇತಗಳಿಂದ ಅಸೆಂಬ್ಲಿಗಳ ಸಮಗ್ರತೆ).

ಗ್ನೂ ಮೆಸ್ ಸಿ ಭಾಷೆಯಲ್ಲಿ ಬರೆಯಲಾದ ಸ್ಕೀಮ್ ಭಾಷೆಗೆ ಸ್ವಯಂ-ಹೋಸ್ಟಿಂಗ್ ಇಂಟರ್ಪ್ರಿಟರ್ ಅನ್ನು ನೀಡುತ್ತದೆ ಮತ್ತು ಸ್ಕೀಮ್ ಭಾಷೆಯಲ್ಲಿ ಬರೆಯಲಾದ ಸಿ ಭಾಷೆಗೆ (ಮೆಸ್ಸಿಸಿ) ಸರಳ ಕಂಪೈಲರ್ ಅನ್ನು ನೀಡುತ್ತದೆ. ಎರಡೂ ಘಟಕಗಳು ಪರಸ್ಪರ ಜೋಡಿಸಬಲ್ಲವು. ಸ್ಕೀಮ್ ಇಂಟರ್ಪ್ರಿಟರ್ MesCC C ಕಂಪೈಲರ್ ಅನ್ನು ನಿರ್ಮಿಸಲು ಸಾಧ್ಯವಾಗಿಸುತ್ತದೆ, ಇದು TinyCC ಕಂಪೈಲರ್ (tcc) ನ ಸ್ಟ್ರಿಪ್ಡ್-ಡೌನ್ ಆವೃತ್ತಿಯನ್ನು ನಿರ್ಮಿಸಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ, ಅದರ ಸಾಮರ್ಥ್ಯಗಳು ಈಗಾಗಲೇ GCC ಅನ್ನು ನಿರ್ಮಿಸಲು ಸಾಕಾಗುತ್ತದೆ.

ಸ್ಕೀಮ್ ಲ್ಯಾಂಗ್ವೇಜ್ ಇಂಟರ್ಪ್ರಿಟರ್ ಸಾಕಷ್ಟು ಸಾಂದ್ರವಾಗಿರುತ್ತದೆ, ಸಿ ಭಾಷೆಯ ಸರಳ ಉಪವಿಭಾಗದಲ್ಲಿ ಸುಮಾರು 5000 ಲೈನ್‌ಗಳ ಕೋಡ್ ಅನ್ನು ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ ಮತ್ತು M2-ಪ್ಲಾನೆಟ್ ಯುನಿವರ್ಸಲ್ ಟ್ರಾನ್ಸ್‌ಲೇಟರ್ ಅನ್ನು ಬಳಸಿಕೊಂಡು ಕಾರ್ಯಗತಗೊಳಿಸಬಹುದಾದ ಫೈಲ್ ಆಗಿ ಪರಿವರ್ತಿಸಬಹುದು ಅಥವಾ ಸ್ವಯಂ-ಜೋಡಿಸಲಾದ hex0 ಅನ್ನು ಬಳಸಿಕೊಂಡು ಜೋಡಿಸಲಾದ ಸರಳ C ಕಂಪೈಲರ್ ಅನ್ನು ಪರಿವರ್ತಿಸಬಹುದು. ಅಸೆಂಬ್ಲರ್, ಇದು ಬಾಹ್ಯ ಅವಲಂಬನೆಗಳ ಅಗತ್ಯವಿರುವುದಿಲ್ಲ. ಅದೇ ಸಮಯದಲ್ಲಿ, ಇಂಟರ್ಪ್ರಿಟರ್ ಪೂರ್ಣ ಪ್ರಮಾಣದ ಕಸ ಸಂಗ್ರಾಹಕವನ್ನು ಒಳಗೊಂಡಿರುತ್ತದೆ ಮತ್ತು ಲೋಡ್ ಮಾಡಬಹುದಾದ ಮಾಡ್ಯೂಲ್ಗಳ ಗ್ರಂಥಾಲಯವನ್ನು ಒದಗಿಸುತ್ತದೆ.

ಹೊಸ ಬಿಡುಗಡೆಯು ARM ಆರ್ಕಿಟೆಕ್ಚರ್‌ಗೆ (armhf-linux ಮತ್ತು aarch-linux) ಬೆಂಬಲವನ್ನು ಒಳಗೊಂಡಿದೆ. GNU Guix ಯೋಜನೆಯಿಂದ (GNU Guix Reduced Binary Seed) ಬೂಟ್‌ಸ್ಟ್ರ್ಯಾಪ್ ಫೈಲ್‌ಗಳ ಕಡಿಮೆ ಸೆಟ್‌ನೊಂದಿಗೆ Mes ಅನ್ನು ಬಳಸುವ ಸಾಮರ್ಥ್ಯವನ್ನು ಸೇರಿಸಲಾಗಿದೆ. GCC 10.x ಬಳಸಿಕೊಂಡು Mes ಮತ್ತು Mes C ಲೈಬ್ರರಿಯನ್ನು ನಿರ್ಮಿಸಲು ಬೆಂಬಲವನ್ನು ಅಳವಡಿಸಲಾಗಿದೆ. MesCC ಕಂಪೈಲರ್ ಈಗ ತನ್ನದೇ ಆದ libmescc.a ಲೈಬ್ರರಿ (-lmescc) ಅನ್ನು ರವಾನಿಸುತ್ತದೆ ಮತ್ತು GCC ಯೊಂದಿಗೆ ನಿರ್ಮಿಸುವಾಗ, "-lgcc" ಅನ್ನು ಈಗ ನಿರ್ದಿಷ್ಟಪಡಿಸಲಾಗಿದೆ. Guile 3.0.x ನೊಂದಿಗೆ MesCC ಅನ್ನು ನಿರ್ಮಿಸಲು ಬೆಂಬಲವನ್ನು ಒದಗಿಸಲಾಗಿದೆ.

ಮೂಲ: opennet.ru

ಕಾಮೆಂಟ್ ಅನ್ನು ಸೇರಿಸಿ