AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / ubuntu / 问题

Perguntas[compiling](ubuntu)

Martin Hope
Anton Samokat
Asked: 2024-08-05 15:33:54 +0800 CST

Como compilar e instalar o leitor de PDF qpdfview mais recente?

  • 5

Meu ambiente de sistema é Ubuntu 20.04. Baixei o código-fonte mais recente para qpdfview(versão 0.5 a partir de agora) em: https://launchpad.net/qpdfview/+download

Instruções de instalação no READMEarquivo:

Depende de libQtCore, libQtGui. Também depende de libQtSvg, libQtSql, libQtDBus, libcups, resp. libz se SVG, SQL, D-Bus, CUPS, resp. O suporte SyncTeX está habilitado. Também depende do libmagic se o Qt versão 4 for usado e o suporte ao libmagic estiver habilitado. O plug-in PDF depende de libQtCore, libQtXml, libQtGui e libpoppler-qt4 ou libpoppler-qt5. O plug-in PS depende de libQtCore, libQtGui e libspectre. O plug-in DjVu depende de libQtCore, libQtGui e libdjvulibre. O plug-in Fitz depende de libQtCore, libQtGui e libmupdf.

O plug-in Fitz é atualmente considerado experimental devido à falta de um mantenedor. Também carece de suporte para vários recursos, por exemplo, metadados, criptografia, pesquisa de texto, extração de texto, campos de formulário e anotações.

Ele é construído usando "lrelease qpdfview.pro", "qmake qpdfview.pro" e "make". Ele é instalado usando "make install". Os caminhos de instalação estão definidos em "qpdfview.pri".

Qt5Ferramentas e dependências instaladas para qpdfview:

sudo apt install libcups2-dev libmupdf-dev libdjvulibre-dev libspectre-dev libpoppler-qt5-dev qttools5-dev-tools qtbase5-dev qt5-qmake cmake

Compilando pwdfviewcom os seguintes comandos:

lrelease qpdfview.pro
qmake qpdfview.pro
make

O último makecomando produz a seguinte saída com erro:

qpdfview-0.5$ make

( test -e Makefile.pdf-plugin || /usr/lib/qt5/bin/qmake -o Makefile.pdf-plugin qpdfview-0.5/pdf-plugin.pro ) && make -f Makefile.pdf-plugin 
make[1]: Entering directory 'qpdfview-0.5'
make[1]: Nothing to be done for 'first'.
make[1]: Leaving directory 'qpdfview-0.5'
( test -e Makefile.ps-plugin || /usr/lib/qt5/bin/qmake -o Makefile.ps-plugin qpdfview-0.5/ps-plugin.pro ) && make -f Makefile.ps-plugin 
make[1]: Entering directory 'qpdfview-0.5'
make[1]: Nothing to be done for 'first'.
make[1]: Leaving directory 'qpdfview-0.5'
( test -e Makefile.djvu-plugin || /usr/lib/qt5/bin/qmake -o Makefile.djvu-plugin qpdfview-0.5/djvu-plugin.pro ) && make -f Makefile.djvu-plugin 
make[1]: Entering directory 'qpdfview-0.5'
make[1]: Nothing to be done for 'first'.
make[1]: Leaving directory 'qpdfview-0.5'
( test -e Makefile.image-plugin || /usr/lib/qt5/bin/qmake -o Makefile.image-plugin qpdfview-0.5/image-plugin.pro ) && make -f Makefile.image-plugin 
make[1]: Entering directory 'qpdfview-0.5'
make[1]: Nothing to be done for 'first'.
make[1]: Leaving directory 'qpdfview-0.5'
( test -e Makefile.application || /usr/lib/qt5/bin/qmake -o Makefile.application qpdfview-0.5/application.pro ) && make -f Makefile.application 
make[1]: Entering directory 'qpdfview-0.5'
g++ -Wl,-O1 -o qpdfview objects/settings.o objects/pluginhandler.o objects/shortcuthandler.o objects/rendertask.o objects/tileitem.o objects/pageitem.o objects/thumbnailitem.o objects/presentationview.o objects/searchmodel.o objects/searchitemdelegate.o objects/searchtask.o objects/miscellaneous.o objects/documentlayout.o objects/documentview.o objects/printdialog.o objects/settingsdialog.o objects/fontsdialog.o objects/helpdialog.o objects/recentlyusedmenu.o objects/recentlyclosedmenu.o objects/bookmarkmenu.o objects/bookmarkdialog.o objects/bookmarkmodel.o objects/database.o objects/mainwindow.o objects/application.o objects/main.o objects/synctex_parser.o objects/synctex_parser_utils.o objects/signalhandler.o objects/qrc_icons.o objects/moc_settings.o objects/moc_model.o objects/moc_pluginhandler.o objects/moc_shortcuthandler.o objects/moc_rendertask.o objects/moc_pageitem.o objects/moc_thumbnailitem.o objects/moc_presentationview.o objects/moc_searchmodel.o objects/moc_searchitemdelegate.o objects/moc_searchtask.o objects/moc_miscellaneous.o objects/moc_documentview.o objects/moc_printdialog.o objects/moc_settingsdialog.o objects/moc_fontsdialog.o objects/moc_helpdialog.o objects/moc_recentlyusedmenu.o objects/moc_recentlyclosedmenu.o objects/moc_bookmarkmodel.o objects/moc_bookmarkmenu.o objects/moc_bookmarkdialog.o objects/moc_database.o objects/moc_mainwindow.o objects/moc_application.o objects/moc_signalhandler.o   -lz /usr/lib/x86_64-linux-gnu/libQt5PrintSupport.so /usr/lib/x86_64-linux-gnu/libQt5Svg.so /usr/lib/x86_64-linux-gnu/libQt5Widgets.so /usr/lib/x86_64-linux-gnu/libQt5Gui.so /usr/lib/x86_64-linux-gnu/libQt5Concurrent.so /usr/lib/x86_64-linux-gnu/libQt5Sql.so /usr/lib/x86_64-linux-gnu/libQt5DBus.so /usr/lib/x86_64-linux-gnu/libQt5Core.so /usr/lib/x86_64-linux-gnu/libGL.so -lpthread   
/usr/bin/ld: objects/documentview.o: in function `qpdfview::DocumentView::printUsingCUPS(QPrinter*, qpdfview::PrintOptions const&, int, int)':
documentview.cpp:(.text+0xb56a): undefined reference to `cupsGetDests'
/usr/bin/ld: documentview.cpp:(.text+0xb5ab): undefined reference to `cupsGetDest'
/usr/bin/ld: documentview.cpp:(.text+0xb65a): undefined reference to `cupsAddOption'
/usr/bin/ld: documentview.cpp:(.text+0xb769): undefined reference to `cupsAddOption'
/usr/bin/ld: documentview.cpp:(.text+0xb803): undefined reference to `cupsAddOption'
/usr/bin/ld: documentview.cpp:(.text+0xb88b): undefined reference to `cupsAddOption'
/usr/bin/ld: documentview.cpp:(.text+0xb8d3): undefined reference to `cupsAddOption'
/usr/bin/ld: documentview.cpp:(.text+0xb961): undefined reference to `cupsGetOption'
/usr/bin/ld: documentview.cpp:(.text+0xb9e7): undefined reference to `cupsGetOption'
/usr/bin/ld: documentview.cpp:(.text+0xba50): undefined reference to `cupsAddOption'
/usr/bin/ld: documentview.cpp:(.text+0xba90): undefined reference to `cupsGetOption'
/usr/bin/ld: documentview.cpp:(.text+0xbd1b): undefined reference to `cupsPrintFile'
/usr/bin/ld: documentview.cpp:(.text+0xbdd1): undefined reference to `cupsFreeDests'
/usr/bin/ld: documentview.cpp:(.text+0xbdde): undefined reference to `cupsFreeOptions'
/usr/bin/ld: documentview.cpp:(.text+0xbdfa): undefined reference to `cupsFreeDests'
/usr/bin/ld: documentview.cpp:(.text+0xbe07): undefined reference to `cupsFreeOptions'
/usr/bin/ld: documentview.cpp:(.text+0xbe69): undefined reference to `cupsGetPPD'
/usr/bin/ld: documentview.cpp:(.text+0xbe7f): undefined reference to `ppdOpenFile'
/usr/bin/ld: documentview.cpp:(.text+0xbe9c): undefined reference to `ppdFindOption'
/usr/bin/ld: documentview.cpp:(.text+0xbf0a): undefined reference to `cupsAddOption'
/usr/bin/ld: documentview.cpp:(.text+0xbf17): undefined reference to `ppdClose'
/usr/bin/ld: documentview.cpp:(.text+0xbf81): undefined reference to `cupsAddOption'
/usr/bin/ld: documentview.cpp:(.text+0xbfa5): undefined reference to `cupsAddOption'
/usr/bin/ld: documentview.cpp:(.text+0xbfcd): undefined reference to `cupsAddOption'
/usr/bin/ld: documentview.cpp:(.text+0xc099): undefined reference to `cupsAddOption'
/usr/bin/ld: documentview.cpp:(.text+0xc29d): undefined reference to `cupsAddOption'
/usr/bin/ld: objects/documentview.o:documentview.cpp:(.text+0xc2c5): more undefined references to `cupsAddOption' follow
/usr/bin/ld: objects/documentview.o: in function `qpdfview::DocumentView::printUsingCUPS(QPrinter*, qpdfview::PrintOptions const&, int, int)':
documentview.cpp:(.text+0xc518): undefined reference to `cupsLastErrorString'
/usr/bin/ld: documentview.cpp:(.text+0xc657): undefined reference to `cupsLastErrorString'
/usr/bin/ld: documentview.cpp:(.text+0xc6e1): undefined reference to `cupsFreeDests'
/usr/bin/ld: documentview.cpp:(.text+0xc788): undefined reference to `cupsAddOption'
/usr/bin/ld: objects/documentview.o: in function `qpdfview::DocumentView::printUsingCUPS(QPrinter*, qpdfview::PrintOptions const&, int, int) [clone .cold]':
documentview.cpp:(.text.unlikely+0x955): undefined reference to `ppdClose'
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile.application:358: qpdfview] Error 1
make[1]: Leaving directory 'qpdfview-0.5'
make: *** [Makefile:164: sub-application-pro-make_first-ordered] Error 2

De acordo com esta resposta parece que o problema está no código fonte. Mas eu não tenho certeza. Pode ser que eu tenha perdido alguma dependência adicional. Continuaremos investigando, mas provavelmente alguém já compilou este programa com sucesso?

compiling
  • 1 respostas
  • 35 Views
Martin Hope
Adolph Beyerlein
Asked: 2024-07-30 09:20:33 +0800 CST

Problemas na aplicação do método da função de Greens para calcular energias de troca com café expresso quântico e códigos mestres de troca

  • 6

Estou tentando calcular constantes de troca para compostos cristalinos de níquel (Ni) usando o método da função de Greens de Dm M. Korotin et al. Física. Rev. B 91, 224405 (2015). Isso é conseguido com uma combinação de café expresso quântico e um mestre de trocas de codinome. No entanto, quando eu baixo o exchanges-master de https://github.com/dkorotin/exchanges e o coloco em meu diretório inicial, o exchanges-master não irá compilar (usando command make) devido a erros como undefined reference to ‘omp_get_thread_num’.

Para mais detalhes, o computador que estou usando é novo:

  • É uma inveja da HP com um núcleo Intel i9 e 64 Gbytes de memória.
  • O código gfortran é a versão mais recente GNU Fortran (Ubuntu11.4.0-1ubuntu1-22.04) 11.4.0).
  • As versões mais recentes do lapack e blas também estão instaladas.

A única preparação que é instruída a fazer no diretório exchanges-master é designar gfortran e os pacotes lapack no Makefile usando o editor vim. Depois de fazer isso, está-se pronto para compilar com make, que supostamente produzirá exchanges.xos cálculos da função de Greens. No entanto, em vez disso, obtém-se:

(i) gfortran   -o exchanges.x exchanges.o parameters.o general.o iomodule.o find_nnbrs.o green_function.o -L/usr/local/opt/lapack/lib/ -llapack -lblas
(ii) /usr/bin/ld: exchanges.o: in function `MAIN__':
(iii) /mnt/c/Users/adolp/exchanges-master/exchanges.f90:61: undefined reference to `omp_get_max_threads_'
 `compute_g_._omp_fn.0':
(iv) /mnt/c/Users/adolp/exchanges-master/green_function.f90:23: undefined reference to `omp_get_num_threads'
(v) /usr/bin/ld: /mnt/c/Users/adolp/exchanges-master/green_function.f90:23: undefined reference to `omp_get_thread_num'
(vi) /usr/bin/ld: /mnt/c/Users/adolp/exchanges-master/green_function.f90:23: undefined reference to `GOMP_barrier'
(vii)/usr/bin/ld: green_function.o: in function `compute_g_':
(viii) /mnt/c/Users/adolp/exchanges-master/green_function.f90:21: undefined reference to `GOMP_parallel'
collect2: error: ld returned 1 exit status
make: *** [Makefile:28: exchanges.x] Error 1
Note the compilation is OK with our choices made in the Makefile (see line (i) above).  The difficulty begins when it compiles the greens function calculation with 
‘/usr/bin/id: exchanges.oi in function  ‘MAIN_’

Todos os erros estão relacionados ao OMP e GOMP. Pode-se primeiro pensar que a solução é compilar o Quantum expresso desabilitando o processamento paralelo e o openmp. No entanto, compilei o QE de todas as maneiras. O 'exchanges-master' parece ser bastante independente em operação do expresso quântico. A única função do QE é fornecer os dados de entrada para exchanges.x, que é o pacote de trabalho obtido do exchanges-master após sua makecompilação.

Os arquivos onde ocorrem os erros estão no diretório exchanges-master e sua localização (ou seja, linha do arquivo) é fornecida com os erros listados em (ii) a (viii) acima. Como esses arquivos são necessários para realizar os cálculos, não se pode evitar os comandos dados em seu código relacionados ao OMP e GOMP. Parece que a única coisa que se pode fazer é definir bem o seu uso. No entanto, não há instruções sobre como fazer isso. Outra solução possível e talvez mais provável seria usar versões anteriores do exchanges-master que provavelmente não faziam referência ao OMP e ao GOMP. No entanto, as versões anteriores não estão listadas no Github.

compiling
  • 1 respostas
  • 221 Views
Martin Hope
DanW58
Asked: 2024-05-10 00:38:39 +0800 CST

Problema ao construir plib ... ./configure não vê OpenGL

  • 5

O pacote plib para motores de jogo é distribuído apenas como fontes, e estou seguindo as instruções ao máximo, acredito; tenho todas as dependências, ou pensei assim, mas quando executo ./configure diz que não há GL funcionando.

Isso é muito estranho para mim, porque eu já tenho libglut-dev E libglut3.12 instalados, assim como freeglut3-dev e todos os pacotes mesa.

Abaixo está a saída completa:

danw58@danw58-MS-7E12:~/Downloads/zip/plib/plib-1.8.5$ ./autogen.sh
Running aclocal
aclocal: warning: autoconf input should be named 'configure.ac', not 'configure.in'
Running automake
automake: warning: autoconf input should be named 'configure.ac', not 'configure.in'
configure.in:14: warning: AM_INIT_AUTOMAKE: two- and three-arguments forms are deprecated.  For more info, see:
configure.in:14: https://www.gnu.org/software/automake/manual/automake.html#Modernize-AM_005fINIT_005fAUTOMAKE-invocation
configure.in:34: installing './compile'
src/fnt/Makefile.am:9: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
automake: warning: autoconf input should be named 'configure.ac', not 'configure.in'
src/js/Makefile.am:11: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
src/net/Makefile.am:11: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
src/psl/Makefile.am:15: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
src/puAux/Makefile.am:23: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
src/pw/Makefile.am:9: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
src/sg/Makefile.am:11: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
src/sl/Makefile.am:15: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
src/ssg/Makefile.am:32: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
src/ssgAux/Makefile.am:34: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
Running autoconf
configure.in:14: warning: AM_INIT_AUTOMAKE: two- and three-arguments forms are deprecated.
./lib/autoconf/general.m4:2434: AC_DIAGNOSE is expanded from...aclocal.m4:429: AM_INIT_AUTOMAKE is expanded from...
configure.in:14: the top level
configure.in:309: warning: The macro `AC_HEADER_STDC' is obsolete.
configure.in:309: You should run autoupdate.
./lib/autoconf/headers.m4:704: AC_HEADER_STDC is expanded from...
configure.in:309: the top level
configure.in:377: warning: The macro `AC_TRY_COMPILE' is obsolete.
configure.in:377: You should run autoupdate.
./lib/autoconf/general.m4:2847: AC_TRY_COMPILE is expanded from...
configure.in:377: the top level
configure.in:377: warning: The macro `AC_TRY_COMPILE' is obsolete.
configure.in:377: You should run autoupdate.
./lib/autoconf/general.m4:2847: AC_TRY_COMPILE is expanded from...
lib/m4sugar/m4sh.m4:692: _AS_IF_ELSE is expanded from...
lib/m4sugar/m4sh.m4:699: AS_IF is expanded from...
./lib/autoconf/general.m4:2823: _AC_COMPILE_IFELSE is expanded from...
./lib/autoconf/general.m4:2839: AC_COMPILE_IFELSE is expanded from...
./lib/autoconf/general.m4:2847: AC_TRY_COMPILE is expanded from...
configure.in:377: the top level
configure.in:394: warning: AC_OUTPUT should be used without arguments.
configure.in:394: You should run autoupdate.
======================================
Now you are ready to run './configure'
======================================
danw58@danw58-MS-7E12:~/Downloads/zip/plib/plib-1.8.5$ ./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
/home/danw58/Downloads/zip/plib/plib-1.8.5/missing: Unknown `--is-lightweight' option
Try `/home/danw58/Downloads/zip/plib/plib-1.8.5/missing --help' for more information
configure: WARNING: 'missing' script is too old or missing
checking for a race-free mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
includedir changed to ${prefix}/include/plib libdir is ${exec_prefix}/lib
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C... yes
checking whether gcc accepts -g... yes
checking for gcc option to enable C11 features... none needed
checking whether gcc understands -c and -o together... yes
checking whether make supports the include directive... yes (GNU style)
checking dependency style of gcc... gcc3
checking how to run the C preprocessor... gcc -E
checking for g++... g++
checking whether the compiler supports GNU C++... yes
checking whether g++ accepts -g... yes
checking for g++ option to enable C++11 features... none needed
checking dependency style of g++... gcc3
checking how to run the C++ preprocessor... g++ -E
checking for ranlib... ranlib
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking for X... libraries , headers 
checking for gethostbyname... yes
checking for connect... yes
checking for remove... yes
checking for shmat... yes
checking for IceConnectionNumber in -lICE... yes
checking for pthread_create in -lpthread... no
checking for glNewList in -lGL... no
checking for glNewList in -lMesaGL... no
configure: error: could not find working GL library
danw58@danw58-MS-7E12:~/Downloads/zip/plib/plib-1.8.5$ 
compiling
  • 1 respostas
  • 40 Views
Martin Hope
John Dallman
Asked: 2024-01-17 06:10:25 +0800 CST

Como posso usar uma versão posterior do GCC além do suporte aos tempos de execução do sistema? O software criado com ele pode ser executado em um sistema com apenas pacotes normais instalados?

  • 9

Eu não uso muito o Ubuntu, sendo um engenheiro de plataformas e construção em uma organização que é principalmente a Red Hat Enterprise e seus similares.

O problema de apenas construir e usar um GCC atualizado são as bibliotecas de tempo de execução da linguagem. Eu teria que distribuí-los, complicando as remessas e deixando os advogados nervosos com a GPL, ou exigir que meus clientes construíssem e instalassem o mesmo GCC.

Eu produzo software comercial de código fechado, principalmente modelagem matemática, compilado a partir de fontes C e C++ e enviado como bibliotecas compartilhadas. Isso significa que estou extremamente interessado em obter compatibilidade binária entre distribuições. Isso é prático porque tudo o que minhas bibliotecas precisam está disponível na glibc e nos tempos de execução da linguagem GCC ( libgcc_s.so.1e libstdc++.so.6). Ambos os conjuntos de bibliotecas têm compatibilidade futura muito forte, devido ao fato de todos os seus símbolos serem versionados e novas versões serem criadas sempre que há uma mudança de comportamento.

Atualmente, faço minhas compilações no RHEL 8.x. Ele possui GCC (8.x) e glibc (2.28) bastante antigos; portanto, se eu construísse minhas bibliotecas usando-o ingenuamente, teria compatibilidade futura com Linux com versões iguais ou posteriores dessas bibliotecas. No entanto, aquele antigo GCC não suporta o padrão de linguagem C++20, que os desenvolvedores desejam muito usar, muito menos o novo padrão C++23. RHEL fornece uma solução para isso, mas não encontrei nada semelhante para o Ubuntu.

A solução Red Hat é um "conjunto de ferramentas GCC". Existem vários deles, mas todos funcionam da mesma maneira. Eles fornecem uma versão posterior do GCC, construída para rodar nos tempos de execução do RHEL 8.x, nos cabeçalhos padrão e em alguns scripts especiais para GNU ld. Esses scripts dizem ao vinculador para usar as bibliotecas do sistema para os tempos de execução da linguagem GCC sempre que possível, e para funções que não estão nas bibliotecas do sistema, vincular estaticamente o código necessário à biblioteca compartilhada (ou executável) que está sendo vinculada. Isso parece assustador, mas funciona extremamente bem. Provavelmente isso ocorre porque a Red Hat é uma grande contribuidora para o GCC e garante que ele continue funcionando.

O Ubuntu tem algo semelhante? Eu gostaria de ter uma alternativa ao Red Hat, caso a exploração das brechas da GPL consiga eliminar as semelhanças de trabalho de seu sistema operacional, que é muito caro para ser executado em todas as máquinas de teste.

Meu conhecimento atual de compilação e tempos de execução do Ubuntu é explicado em minha resposta a uma pergunta relacionada aqui .

Para o caso C++20, mudar para o Ubuntu LTS 22.04 preencheria a necessidade. No entanto, o C++23 está começando a aparecer. Podemos esperar o Ubuntu LTS 24.04 em breve, mas provavelmente será muito cedo para o suporte ao C++ 23 no GCC 14, com lançamento previsto para abril ou maio de 2024. Estou presumindo que os clientes "empresariais" do Ubuntu irão instale apenas versões LTS em seus servidores principais, em vez das versões intermediárias.

Se o Ubuntu não fizer isso, tudo bem. Dado que é um Enterprise Linux, pensei que poderia estar faltando alguma coisa.

compiling
  • 2 respostas
  • 442 Views
Martin Hope
Rajatt
Asked: 2023-07-20 14:33:14 +0800 CST

Como instalar o clang-15 ou superior? (16 preferencialmente)

  • 6

No momento, estou tentando criar um projeto usando o cmake e o erro que ocorre é:

CMake Error at cmake/tools.cmake:33 (message):
  Compilation with Clang version 14.0.0 is unsupported, the minimum required
  version is 15.
Call Stack (most recent call first):
  CMakeLists.txt:18 (include)

toda vez que eu apt getfaço clang, ele instala por padrão uma versão 14. Como faço para corrigir isso?

Isso é um pouco urgente, então qualquer ajuda é bem-vinda. Obrigado! :)

compiling
  • 1 respostas
  • 32 Views
Martin Hope
Flibustero Blanco
Asked: 2023-04-06 22:24:00 +0800 CST

Como construir "su" a partir de fontes?

  • 10

Tente criar um "su" personalizado no Ubuntu 20.04, mas inicie a partir das fontes originais para teste (sem alterações). Correr

apt-get source login

Eu tenho o diretório shadow-4.8.1. Correr

./configure
make

e tente correr

src/su testuser

Não funciona! Erro de falha de autenticação. Execute o binário original do sistema operacional:

/usr/bin/su testuser

e funciona bem! O que é isso?

Acho que alguns módulos/params estão faltando no processo de construção.

Indo para buildlog do pacote shadow.

https://launchpad.net/ubuntu/+source/shadow/1:4.11.1+dfsg1-2ubuntu1/+build/23780688

e veja a seguir ./configure string

./configure --build=x86_64-linux-gnu --prefix=/usr --includedir=\${prefix}/include --mandir=\${prefix}/share/man --infodir=\${prefix}/share/info --sysconfdir=/etc --localstatedir=/var --disable-silent-rules --libdir=\${prefix}/lib/x86_64-linux-gnu --runstatedir=/run --disable-maintainer-mode --disable-dependency-tracking --disable-shared --without-libcrack --mandir=/usr/share/man --with-libpam --enable-shadowgrp --enable-man --disable-account-tools-setuid --with-group-name-max-length=32 --without-acl --without-attr --without-su --without-tcb 

Veja lá:

--without-su

Tente esta string ./configure e realmente faça todos os binários sem "su". Tente substituí-lo em

--with-su

E o novo binário também não funciona. Falha de autenticação. :(

Duas perguntas sobre isso.

  1. Onde posso encontrar o buildlog do "su" original?
  2. Por que "su" recém-criado não pode ver o usuário real do sistema operacional, que existe em /etc/shadow|passwd?
compiling
  • 1 respostas
  • 544 Views
Martin Hope
Jabu-Jabu
Asked: 2022-07-08 11:06:09 +0800 CST

Não é possível encontrar -lGL em /usr/lib/ld

  • 0

Sempre que tento compilar os projetos C++ do Code::Blocks, recebo este erro:

/usr/bin/ld: cannot find -lGL

Eu tentei instalar os seguintes pacotes de acordo com outras soluções para este problema:

fglrx-dev
fglrx-updates
fglrx-updates-dev

Os 3 acima não foram encontrados.

mesa-common-dev
freeglut3-dev
freeglut3
libgl1-mesa-dev
build-essential checkinstall libc6-dev libssl-dev libexpat1-dev libgl1-mesa-dev libqt4-dev libavcodec-dev libavutil-dev pkg-config
libxmu-dev
libxmu-headers
libxext-dev
libxi-dev

Todos eles já estavam instalados ou não faziam nada. Eu tenho nvidia-driver-515.

compiling
  • 1 respostas
  • 79 Views
Martin Hope
Rasule
Asked: 2022-07-01 11:28:42 +0800 CST

/usr/bin/ld: não foi possível encontrar -lpython3.9d

  • 0

Eu tenho esse erro no Ubuntu 20.04 ao executar o cmake e faça

[100%] Linking CXX executable ./tmp/DearPyGuiDearSandbox/DearSandbox
/usr/bin/ld: cannot find -lpython3.9d
collect2: error: ld returned 1 exit status
make[2]: *** [sandbox/CMakeFiles/DearSandbox.dir/build.make:102: ./tmp/DearPyGuiDearSandbox/DearSandbox] Error 1
make[1]: *** [CMakeFiles/Makefile2:218: sandbox/CMakeFiles/DearSandbox.dir/all] Error 2
make: *** [Makefile:91: all] Error 2

Eu já tentei incluí-los no CMakeLists.txt mas sem sorte

include_directories(/usr/include/python3.9)
include_directories(./miniconda3/envs/ngp/lib/python3.9/)
include_directories(/usr/lib/x86_64-linux-gnu/)
include_directories(/usr/share/doc/libpython3.9)
include_directories(/usr/share/doc/libpython3.9-dev
compiling
  • 1 respostas
  • 40 Views
Martin Hope
Dan
Asked: 2022-06-24 06:32:08 +0800 CST

Como posso fazer o debhelper honrar parallel=n?

  • 1

Estou tentando fazer um pacote Debian para um projeto cmake que, no modo single-thread, leva 3 horas para compilar. Estou tentando obter uma compilação paralela, mas não consigo.

Eu tentei configurar parallel=4no meu controlarquivo assim:

#!/usr/bin/make -f
export DEB_BUILD_OPTIONS="parallel=4"

%:
    dh $@ --parallel

Com base na resposta aceita nesta pergunta anterior , mas recebo o seguinte aviso:

dh: warning: invalid flag in DEB_BUILD_OPTIONS: "parallel=4"

E o debhelper ainda invoca make -j1.

Eu tentei variações sobre o tema com base em outras sugestões/comentários que encontrei online DEB_BUILD_OPTIONS="-j=4", DEB_BUILD_OPTIONS="-j4"etc, sem efeito. Já tentei configurar debian/compatpara 10. Sempre o resultado é invalid flag. Como posso fazer o debhelper honrar esta configuração?

Estou fazendo a compilação em um contêiner do docker Ubuntu Focal x86_64 e minha versão debhelperé 12.10ubuntu1.

compiling
  • 2 respostas
  • 175 Views
Martin Hope
Enterprise
Asked: 2022-04-26 14:53:55 +0800 CST

Como construir o Spot (cliente nativo do Spotify) no Ubuntu 22.04?

  • 1

Por favor, ajude-me a compilar e instalar o Spot , um cliente nativo do Spotify para GNOME, no Ubuntu 22.04.

Instruções

Aqui estão as instruções da página do GitHub do aplicativo :

Requer Rust (estável), GTK4 e algumas outras coisas. Também requer libadwaita: não está empacotado em todas as distros no momento, você pode ter que construí-lo você mesmo!

Com méson:

meson target -Dbuildtype=debug -Doffline=false --prefix="$HOME/.local"
ninja install -C target

Isso instalará um .desktoparquivo entre outras coisas, e o executável spot será colocado .local/bin(você pode querer adicioná-lo ao seu caminho).

Para criar uma versão otimizada da versão, use -Dbuildtype=releaseem vez disso.

O que eu tentei

  1. Baixei o código fonte usando:

    git clone https://github.com/xou816/spot.git
    
  2. Eu não sei como instalar o Rust (como um pacote deb) no Ubuntu.

  3. Eu instalei mesone ninjada seguinte forma. Isso está correto? Estou perdendo algum outro pacote?

    sudo apt install ninja-build meson
    
  4. Eu recebo o seguinte erro quando executo o meson target...comando acima. Como posso resolver isto?

    src/meson.build:3.0: ERROR: Pkg-config binary for machine 1 not found. Giving up.
    
compiling
  • 1 respostas
  • 153 Views

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Existe um comando para listar todos os usuários? Também para adicionar, excluir, modificar usuários, no terminal?

    • 9 respostas
  • Marko Smith

    Como excluir um diretório não vazio no Terminal?

    • 4 respostas
  • Marko Smith

    Como descompactar um arquivo zip do Terminal?

    • 9 respostas
  • Marko Smith

    Como instalo um arquivo .deb por meio da linha de comando?

    • 11 respostas
  • Marko Smith

    Como instalo um arquivo .tar.gz (ou .tar.bz2)?

    • 14 respostas
  • Marko Smith

    Como listar todos os pacotes instalados

    • 24 respostas
  • Martin Hope
    Flimm Como posso usar o docker sem sudo? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    led-Zepp Como faço para salvar a saída do terminal em um arquivo? 2014-02-15 11:49:07 +0800 CST
  • Martin Hope
    ubuntu-nerd Como descompactar um arquivo zip do Terminal? 2011-12-11 20:37:54 +0800 CST
  • Martin Hope
    TheXed Como instalo um arquivo .deb por meio da linha de comando? 2011-05-07 09:40:28 +0800 CST
  • Martin Hope
    Ivan Como listar todos os pacotes instalados 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    David Barry Como determino o tamanho total de um diretório (pasta) na linha de comando? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher "Os seguintes pacotes foram retidos:" Por que e como resolvo isso? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford Como os PPAs podem ser removidos? 2010-07-30 01:09:42 +0800 CST

Hot tag

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve