Ik probeer software te compileren, maar loop tegen een foutmelding aan. Kan het probleem reproduceren met een stukje proof of concept code, dus heeft nog niet eens met het echte doel te maken.
Compiler is gcc 4.8.2, Cmake 3.6.3 en draait op AIX 5.3. Wat oudere software, maar dat zou verder niet uit moeten maken.
Al een tijdje aan het proberen en heb onder andere -DCMAKE_C_COMPILER=/opt/freeware/bin/gcc gebruikt, geprobeerd om die test te omzeilen met -DCMAKE_C_COMPILER_WORKS=1, dat soort dingen. Tegen beter weten in gcc van 4.0.0 naar 4.8.2 bijgewerkt. Voor zowel gcc als Cmake zit ik nu op de meest recente versies die er zijn voor mijn OS.
Onder andere https://www.grokit.ca/cnt/CMakeProblemsSolutions/ gevonden maar daar is dus C nodig maar staan alleen CXX en RC als enabled, in mijn situatie staat C gewoon enabled.
De proof of concept code die ik nu gebruik om te testen heb ik gemaakt adhv.:
Compiler is gcc 4.8.2, Cmake 3.6.3 en draait op AIX 5.3. Wat oudere software, maar dat zou verder niet uit moeten maken.
code:
In regel 2 van CMakeLists.txt staat:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
| root@sr-2:/root/test>cmake .
-- The C compiler identification is unknown
-- Check for working C compiler: /opt/freeware/bin/gcc
CMake Error at /opt/freeware/share/cmake/Modules/CMakeTestCCompiler.cmake:47 (try_compile):
Unknown extension ".c" for file
/root/freeglut-3.8.0/test/CMakeFiles/CMakeTmp/testCCompiler.c
try_compile() works only for enabled languages. Currently these are:
C
See project() command to enable other languages.
Call Stack (most recent call first):
CMakeLists.txt:2 (project)
-- Check for working C compiler: /opt/freeware/bin/gcc -- broken
CMake Error at /opt/freeware/share/cmake/Modules/CMakeTestCCompiler.cmake:61 (message):
The C compiler "/opt/freeware/bin/gcc" is not able to compile a simple test
program.
It fails with the following output:
CMake will not be able to correctly generate this project.
Call Stack (most recent call first):
CMakeLists.txt:2 (project)
-- Configuring incomplete, errors occurred! |
code:
Begrijp uit die test niet goed wat er misgaat. Staat duidelijk dat C enabled is, waarom kan hij dan niet uit de voeten met een .c file?1
| project(test LANGUAGES C) |
Al een tijdje aan het proberen en heb onder andere -DCMAKE_C_COMPILER=/opt/freeware/bin/gcc gebruikt, geprobeerd om die test te omzeilen met -DCMAKE_C_COMPILER_WORKS=1, dat soort dingen. Tegen beter weten in gcc van 4.0.0 naar 4.8.2 bijgewerkt. Voor zowel gcc als Cmake zit ik nu op de meest recente versies die er zijn voor mijn OS.
Onder andere https://www.grokit.ca/cnt/CMakeProblemsSolutions/ gevonden maar daar is dus C nodig maar staan alleen CXX en RC als enabled, in mijn situatie staat C gewoon enabled.
De proof of concept code die ik nu gebruik om te testen heb ik gemaakt adhv.:
code:
Kortom, Cmake klaagt dat ik geen C compiler en terwijl die er wel is. Iemand die me een zetje in de goede richting kan geven?
1
2
3
4
5
6
7
8
9
| mkdir test && cd test
cat > CMakeLists.txt <<EOF
cmake_minimum_required(VERSION 3.5)
project(test LANGUAGES C)
add_executable(hello hello.c)
EOF
echo 'int main(){return 0;}' > hello.c
cmake . |
[ Voor 3% gewijzigd door Jazzy op 01-02-2026 17:46 ]