09 years have passed, but the war between Linux and Microsoft continues, but Linux is becoming more and more popular. Do you know about Linux? Are you an application of Linux? This article describes in detail the errors and solutions during Linux compilation, and plays a role in learning the errors and solutions during Linux compilation.
1) as a beginner in Linux, I am only beginning to get started with thread programming. According to an example in the GUN/Linux programming guide, the following error occurs:
- undefined reference to 'pthread_create'
- undefined reference to 'pthread_join'
Cause:
The pthread library is not the default library in Linux. You must use the static library libpthread for connection. a, you need to link to this library when using pthread_create () to create a thread and calling the pthread_atfork () function to create a fork handler.
Solution:
Add the-lpthread parameter to the compilation.
Gcc-o thread. c-lpthread
Thread. c. Do not forget to add the header file # include
2) Warning: Implicit declaration of incompatible built-in function strlen and implicit declaration of incompatible built-in function exit
Cause: the strlen function is in string and the exit function is in stdlib. The header files string. h and stdlib are not added to the file.
Solution: add the header files string. h and stdlib to the file.
3) error: Unknown storage size of sem_union
Cause: in the new version 2.6 kernel, the union sem_union consortium has been commented out, and you need to write the consortium yourself.
Solution: define in file C
Union semun {int val; struct semid_ds * buf; unsigned short * array;} sem_union;
After compilation, it will be able to find the pre-defined sem_union consortium. The above are the errors and solutions during Linux compilation.
- Comprehensive Understanding of four levels of attacks against Linux servers
- Six-Point Linux Security Method Application
- Why did Linux and MacOS grow under the halo of Microsoft?
- What will happen to Linux in the next ten years?
- How to easily turn Linux into a router