LINUX.ORG.RU

c++ include как указать полный путь

 


0

1

Всем привет! Я пытаюсь подключить библиотеку через полный путь, так:

include <./snap/gnome-3-34-1804/36/usr/include/gtk-3.0/gtk/gtk.h>

Она реально там лежит. Но пишет «Нет такого файла или каталога». Пробовал всяко. Я уже молчу чтобы путь искался сам:

include <gtk/gtk.h>

или так:

include «gtk/gtk.h»

Реально достали убогие языки. Сам файл, где подключение библиотеки прописано я компилирую (собственно при компиляции ошибка), компилирую так: g++ /media/login/811HG26G2RT1F3W1/progi_c++/gtk.cpp -o gtk

Может папку так нельзя называть «progi_c++», но ошибка то о другом. Да, библиотека gtk идет в комплекте с ubuntu 20.04, ее я и пытаюсь подключить. А вообще это отдельная библиотека, то есть ее можно на любую ОС ставить. А вообще мне нужна библиотека gui, чтоб там писать на php можно было, php чтоб 7,0 - 7,4. Нужно что-то легкое, известное, с императивным подходом и с русской документацией или материалов на русском чтобы было много.

Ответ на: комментарий от RyanGosling

Вы знаете что такое истина? Это когда ты попробовал и то и то и знаешь что лучше. Попробуйте php (да поначалу что то покажется не удобным может быть, но если Вы пишите на с, на с++, на ассемблере, , то не удобного будет в 10 раз больше). А если учить php первым или пройдет время после изучения, то лучше языка по синтаксису я ни знаю (реализацию ооп и исключений там не берем, они плохи). Я конечно не все языки знаю, но основные видел и кроме того на php смотрел критически, просто там все к месту, не подкопаешься. Знак $ только там лишний, но не мешает, просто писать его нужно. Про отсутствие многопоточности в php я знаю, тут смириться нужно, этот язык вообще про другое, другая архитектура, ну не заложена там многопоточность. Давайте не будем выяснять какой язык круче. Спасибо конечно за ссылку, но я не понял что там. Мне нужен прямой ответ, с примером. И так несколько часов бьюсь (как Вы там говорите? Тупой язык с++?) над этим языком. Спросите любого прогера есть ли у него проблемы с подключением файлов и он ответит нет, во всяком те языки что я знаю, там нет таких проблем. А Вы говорите с++ хорош. И да, это не только мое мнение что с++ плох.

wadic2 ()

Реально достали убогие языки.

Замена модульности в C и C++ убогая, это так. Но ты хочешь неправильного, абсолютные пути в include не пишут, помимо прочего, это некроссплатформенно. Даже если у тебя это каким-то чудом получится, человек, которому придётся поддерживать твой код спустя годы, будет проклинать тебя, искать твой домашний адрес, чтобы придти к тебе с топором под шубой.

Надо смотреть, какая у тебя система сборки (cmake, autotools, meson…) и как в ней принято подключать GTK.

У тебя, правда, ещё из-за снапа может быть засада. Библиотеки такого уровня (если тебе от них не нужно что-то очень-очень специфическое, что есть только в последней версии) лучше ставить из репозитория своего дистрибутива.

Спасибо конечно за ссылку, но я не понял что там. Мне нужен прямой ответ, с примером.

А там и есть примеры. Как для прямого вызова g++, так и для случая с использованием cmake (причём для библиотек вроде GTK пример с cmake будет ещё проще).

P.S. Путь к твоим исходникам наводит на подозрение, что ты компилируешь исходники прямо с флешки. Если это так, возможны другие проблемы, с которыми ты ещё не столкнулся.

P.P.S. Человек, который задаёт вопросы начального уровня и при этом выносит скороспелое суждение об «убогости» каких-либо языков, производит на посетителей форума очень нехорошее впечатление. Очень. Поэтому если некоторые несдержанные люди в этой теме над тобой будут глумиться, винить в этом кого-то, кроме себя, будет не самой удачной идеей.

hobbit ★★★★★ ()
Последнее исправление: hobbit (всего исправлений: 6)

понятно же что ты очередная однодневка чтобы набросить по поводу убогости крестопараши. Но слишком толстишь, кресты параша далеко не из-за твоего нелепого наброса, это лишь вершина айзберга. Не добавляй модераторам работы утихомирься сам.

anonymous ()

include <./snap/gnome-3-34-1804/36/usr/include/gtk-3.0/gtk/gtk.h>

во-первых локальные пути берутся в кавычки,

во-вторых ты используешь относительный путь "./"

в третьих использовать полные пути - путь в никуда, и так делать не надо

Реально достали убогие языки.

почитай все выше перечисленное и подумай кто реально убогий.

jo_b1ack ★★★★ ()