Sponsored Content
Full Discussion: Compiling UNIX System V
Top Forums UNIX for Beginners Questions & Answers Compiling UNIX System V Post 303031224 by hicksd8 on Sunday 24th of February 2019 07:06:00 AM
Old 02-24-2019
This is a rare question indeed for this forum.

What are you trying to do???? And why???????

You are missing the point here my friend. You downloaded the entire source code for your O/S of choice so you have the source code of the C compiler, the source code of all shared libraries, the source code for the shells, et al. You do not have any executables!!!

So the question that you are really asking is:
Q: How do I compile a compiler without a compiler?
A: You need to 'seed' the operation via a closely related Unix/Linux version. Install a closely related foreign version and compile the entire toolchain first. Having generated your toolchain this way, you then need to compile the toolchain AGAIN using the tools that you just generated because, for example, all your libraries will have been created cross-compiled. To get them pure you need to do it all a third time.

Once you've got a complete toolchain you can begin to compile your kernel (bespoke or not, as your choice). When the kernel is created you can install grub and boot your own kernel. Then you can continue to create all other application and things.

So, what are you trying to do? Compiling your kernel can take hundreds of hours at 100% CPU. Then you test it, realize it's wrong, and have to do it all again. It's very difficult to create bespoke O/S for multi-nationals, public services, defense contractors, etc which I know to my cost. I do it all the time. You also need an extensive knowledge of O/S internals so it's not an easy occupation.
These 2 Users Gave Thanks to hicksd8 For This Post:
 

10 More Discussions You Might Find Interesting

1. Solaris

compiling Oracle Forms in UNIX-solaris

I am using the command: f60gen to complie a form and it says it does not work Pls help, as I am trying to compile a few .fmb files to fmx... Cheers (1 Reply)
Discussion started by: etravels
1 Replies

2. UNIX for Advanced & Expert Users

compiling idl file on unix

hi i need to compile idl files to convert them to classes, on Unix platform. Please tell me how to compile these files & which commands are to be used for this purpose. Thanks & Regards (6 Replies)
Discussion started by: rochitsharma
6 Replies

3. Shell Programming and Scripting

Compiling scripts written in Unix

I would like to convert some Unix scripts into machine language. I dont know how to programe in C. Is there any software out there that I can use to convert these Unix scripts into machine language. Thanks. (1 Reply)
Discussion started by: coburn
1 Replies

4. Programming

compiling c program in unix

if somebody can help me pls. i need the source code for a shell which compiles C or java programs in unix i need a very short and simple one, just the compiling part Respect (2 Replies)
Discussion started by: zlatan005
2 Replies

5. Programming

Problem compiling c file on unix

HI, I have a proc installation. On running the following 3 commands, I successfully get 3 C files. proc char_map=string util.pc proc char_map=string FDRFeedMain.pc proc char_map=string NonMons.pc This gives me util.c FDRFeedMain.c NonMons.c Now when i try to compile the... (6 Replies)
Discussion started by: allah_waris45
6 Replies

6. Programming

Compiling Pro*C program under unix

Hello, I am trying to compile a Pro*C program under unix: proc iname=test.pc works fine but then I am not able to compile the test.c file : gcc test.c -o test.o -L $ORACLE_HOME/lib -l clntsh /usr/bin/ld: Object file format error in: /u01/app/oracle/product/10.1.0.2.0/lib:... (1 Reply)
Discussion started by: nsmrmd
1 Replies

7. UNIX for Dummies Questions & Answers

Compiling Kernel for an Embedded System

-----Edit----- My original post was long and confusing. To sum it up, I am wondering how to do the following Debian based commands on an RPM type system. dpkg -i XXX.deb update-initramfs -k xxx -c update-grub I hope someone can provide some insight. Thanks in advance! --------------... (0 Replies)
Discussion started by: b4sakenxx
0 Replies

8. Shell Programming and Scripting

Compiling tools for unix machine using C

Hello everyone i have a script written in C and i need to compile it in a unix machine i am a first time programmer and i do not know how to compile this and also i need to save the results in a table please help we normally use instructions like build_bb -f but now im confused i dnt knw hw to use... (1 Reply)
Discussion started by: DeVGuL
1 Replies

9. UNIX for Dummies Questions & Answers

Compiling error in UNIX

Hi, I'm trying to compile the code for a program and I run into the following error, ncfile.h: In constructor ‘ncfile::NcAttribute<T>::NcAttribute(const std::string&, const char*)': ncfile.h:357: error: there are no arguments to ‘strlen' that depend on a template parameter, so a declaration of... (1 Reply)
Discussion started by: bstephens
1 Replies

10. UNIX for Beginners Questions & Answers

Compiling Android system on Linux MInt

i have been trying to compile an android Marshmello system with no success. every time i try to compile i get this error javac: invalid source release: 1.7s Usage: javac <options> <source files> make: *** Error 41 #### make failed to build some targets (03:04 (mm:ss)) ####... (2 Replies)
Discussion started by: gearm
2 Replies
ar(1)							      General Commands Manual							     ar(1)

Name
       ar - archive and library maintainer

Syntax
       ar option [ posname ] archive file ...

Description
       The archiver ar maintains groups of files as a single archive file.  This utility is generally used to create and update library files that
       the link editor uses; however, you can use the archiver for other similar purposes.  This version uses a portable ASCII-format archive that
       you can use on various machines that run UNIX.  If you have an archive that uses an older format, see

Options
       This  section  describes the options and suboptions that you can use with the ar utility.  Suboptions must be specified with options.  Fol-
       lowing is a list and description of the options:

       d      Deletes the specified files from the archive file.

       r      Replaces the specified files in the archive file.  If you use the suboption u with r, the archiver only replaces	those  files  that
	      have  last-modified  dates later than the archive files.	If you use a positioning character (from the set abi) you must specify the
	      posname argument to tell the archiver to put the new files after (a) or before (b or i).	Otherwise, the archiver puts new files	at
	      the end of the archive.

       q      Appends  the specified files to the end of the archive file.  The archiver does not accept suboption positioning characters with the
	      q option.  It also does not check whether the files you want to add already exist in the archive.  Use the q option  only  to  avoid
	      quadratic behavior when you create a large archive piece by piece.

       t      Prints  a  table of contents for the files in the archive file.  If you do not specify any filenames, the archiver builds a table of
	      contents for all files.  If you specify filenames, the archiver builds a table of contents only for those files.

       p      Prints the specified files from the archive.

       m      Moves the specified files to the end of the archive.  If you specify a positioning character, you must also specify the posname  (as
	      in option r) to tell the archiver where to move the files.

       x      Extracts	the  specified	files  from  the  archive.  If you do not specify any filenames, the archiver extracts all files.  When it
	      extracts files, the archiver does not change any file.  Normally, the last-modified date for each extracted file shows the date when
	      someone extracted it; however, when you use o, the archiver resets the last-modified date to the date recorded in the archive.

       s      Makes a symbol definition (symdef file) as the first file of an archive.	This file contains a hash table of ranlib structures and a
	      corresponding string table. The symdef file's name is based on the byte ordering of the hash table and  the  byte  ordering  of  the
	      file's target machine.  Files must be consistent in their target byte ordering before the archiver can create a symdef file.  If you
	      change the archive contents, the symdef file becomes obsolete because the archive file's	name  changes.	 If  you  specify  s,  the
	      archiver	creates the symdef file as its last action before finishing execution.	You must specify at least one other archive option
	      (m, p, q, r, or t) when you use the s option.  For UMIPS-V, archives include member objects based on  the  definition  of  a  common
	      object only.  For UMIPS-BSD, they define the common object, but do not include the object.

       v      Gives  a	file-by-file description as the archiver makes a new archive file from an old archive and its constituent files.  When you
	      use this option with t, the archiver lists all information about the files in the archive.  When you use this  option  with  p,  the
	      archiver precedes each file with a name.

       c      Suppresses  the  normal message that the archiver prints when it creates the specified archive file.  Normally, the archiver creates
	      the specified archiver file when it needs to.

       l      Places temporary files in the local directory.  If the l option is not used then the value of the  environment  symbol,  TMPDIR,	is
	      used  as the directory for temporary files.  If TMPDIR is not defined or if the directory it references is not writable then /tmp is
	      used.

       The suboptions do these things:

       a      Specifies that the file goes after the existing file (posname).  Use this suboption with the m or r options.

       b      Specifies that the file goes before the existing file (posname).	Use this suboption with the m or r options.

       i      Specifies that the file goes before the existing file (posname).	Use this suboption with the m or r options.

       o      Forces a newly created file to have the last-modified date that it had before it was extracted from the archive.	Use this suboption
	      with the x option.

       u      Prevents	the archiver from replacing an existing file unless the replacement is newer than the existing file.  This option uses the
	      UNIX system last modified date for this comparison.  Use this suboption with the r option.

Restrictions
       If you specify the same file twice in an argument list, it can appear twice in the archive file.

       The o option does not change the last-modified date of a file unless you own the extracted file or you are the superuser.

       This command truncates filenames to 15 characters.

Files
       /tmp/v*	 temporaries

See Also
       lorder(1), ld(1), odump(1), ranlib(1), ranhash(3x), ar(5), arcv(8)

								       RISC								     ar(1)
All times are GMT -4. The time now is 11:56 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy